bcm27xx: add SND_SOC_AD193X_{I2C,SPI} symbols

When building an image for the bcm27xx target, some combinations of
config options will fail to build due the SND_SOC_AD193X_I2C and
SND_SOC_AD193X_SPI kernel config symbols being missing.

The problem only occurs on bcm27xx as the target contains a patch that
modifies the Kconfig file containing the symbols; in the vanilla kernel,
there is no string after the tristate keyword so the symbol is not
exposed.

The _I2C symbol depends on I2C, which is enabled in the kernel configs
of all bcm27xx subtargets.

The _SPI symbol depends on SPI_MASTER, which is exposed by either
kmod-mmc-spi, kmod-spi-bitbang, kmod-spi-dev, kmod-spi-bcm2835 or
kmod-spi-bcm2835-aux.

Both symbols are defined in the sound/soc/codecs directory, which is
only included when SND_SOC is enabled, so this problem doesn't occur
when kmod-sound-soc-core is not enabled. As the
kmod-sound-soc-bcm2835-i2s package disables the SND_SOC_AD193X_SPI
symbol, it also doesn't occur when kmod-sound-soc-bcm2835-i2s is
enabled.

As there are several possible config combinations that do exhibit this
problem, it is best to solve it by adding the missing symbols to the
subtarget kernel configs. By doing this we can remove them from the
kmod-sound-soc-bcm2835-i2s package.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
This commit is contained in:
Stijn Tintel 2021-09-30 18:36:23 +03:00
parent 297cb8c147
commit 6f787b62d0
9 changed files with 16 additions and 2 deletions

View File

@ -321,6 +321,8 @@ CONFIG_SERIAL_MCTRL_GPIO=y
CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SG_POOL=y CONFIG_SG_POOL=y
CONFIG_SMSC_PHY=y CONFIG_SMSC_PHY=y
# CONFIG_SND_SOC_AD193X_I2C is not set
# CONFIG_SND_SOC_AD193X_SPI is not set
CONFIG_SPARSE_IRQ=y CONFIG_SPARSE_IRQ=y
CONFIG_SRCU=y CONFIG_SRCU=y
# CONFIG_STRIP_ASM_SYMS is not set # CONFIG_STRIP_ASM_SYMS is not set

View File

@ -309,6 +309,8 @@ CONFIG_SERIAL_DEV_BUS=y
CONFIG_SERIAL_MCTRL_GPIO=y CONFIG_SERIAL_MCTRL_GPIO=y
CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SG_POOL=y CONFIG_SG_POOL=y
# CONFIG_SND_SOC_AD193X_I2C is not set
# CONFIG_SND_SOC_AD193X_SPI is not set
CONFIG_SPARSE_IRQ=y CONFIG_SPARSE_IRQ=y
CONFIG_SRCU=y CONFIG_SRCU=y
# CONFIG_STRIP_ASM_SYMS is not set # CONFIG_STRIP_ASM_SYMS is not set

View File

@ -402,6 +402,8 @@ CONFIG_SG_POOL=y
CONFIG_SMP=y CONFIG_SMP=y
CONFIG_SMP_ON_UP=y CONFIG_SMP_ON_UP=y
CONFIG_SMSC_PHY=y CONFIG_SMSC_PHY=y
# CONFIG_SND_SOC_AD193X_I2C is not set
# CONFIG_SND_SOC_AD193X_SPI is not set
CONFIG_SPARSE_IRQ=y CONFIG_SPARSE_IRQ=y
CONFIG_SRCU=y CONFIG_SRCU=y
# CONFIG_STRIP_ASM_SYMS is not set # CONFIG_STRIP_ASM_SYMS is not set

View File

@ -399,6 +399,8 @@ CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SG_POOL=y CONFIG_SG_POOL=y
CONFIG_SMP=y CONFIG_SMP=y
CONFIG_SMP_ON_UP=y CONFIG_SMP_ON_UP=y
# CONFIG_SND_SOC_AD193X_I2C is not set
# CONFIG_SND_SOC_AD193X_SPI is not set
CONFIG_SPARSE_IRQ=y CONFIG_SPARSE_IRQ=y
CONFIG_SRCU=y CONFIG_SRCU=y
# CONFIG_STRIP_ASM_SYMS is not set # CONFIG_STRIP_ASM_SYMS is not set

View File

@ -389,6 +389,8 @@ CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SG_POOL=y CONFIG_SG_POOL=y
CONFIG_SMP=y CONFIG_SMP=y
CONFIG_SMSC_PHY=y CONFIG_SMSC_PHY=y
# CONFIG_SND_SOC_AD193X_I2C is not set
# CONFIG_SND_SOC_AD193X_SPI is not set
CONFIG_SPARSEMEM=y CONFIG_SPARSEMEM=y
CONFIG_SPARSEMEM_EXTREME=y CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_MANUAL=y CONFIG_SPARSEMEM_MANUAL=y

View File

@ -391,6 +391,8 @@ CONFIG_SERIAL_MCTRL_GPIO=y
CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SG_POOL=y CONFIG_SG_POOL=y
CONFIG_SMP=y CONFIG_SMP=y
# CONFIG_SND_SOC_AD193X_I2C is not set
# CONFIG_SND_SOC_AD193X_SPI is not set
CONFIG_SPARSEMEM=y CONFIG_SPARSEMEM=y
CONFIG_SPARSEMEM_EXTREME=y CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_MANUAL=y CONFIG_SPARSEMEM_MANUAL=y

View File

@ -400,6 +400,8 @@ CONFIG_SERIAL_MCTRL_GPIO=y
CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SG_POOL=y CONFIG_SG_POOL=y
CONFIG_SMP=y CONFIG_SMP=y
# CONFIG_SND_SOC_AD193X_I2C is not set
# CONFIG_SND_SOC_AD193X_SPI is not set
CONFIG_SPARSEMEM=y CONFIG_SPARSEMEM=y
CONFIG_SPARSEMEM_EXTREME=y CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_MANUAL=y CONFIG_SPARSEMEM_MANUAL=y

View File

@ -403,6 +403,8 @@ CONFIG_SERIAL_MCTRL_GPIO=y
CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SG_POOL=y CONFIG_SG_POOL=y
CONFIG_SMP=y CONFIG_SMP=y
# CONFIG_SND_SOC_AD193X_I2C is not set
# CONFIG_SND_SOC_AD193X_SPI is not set
CONFIG_SPARSEMEM=y CONFIG_SPARSEMEM=y
CONFIG_SPARSEMEM_EXTREME=y CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_MANUAL=y CONFIG_SPARSEMEM_MANUAL=y

View File

@ -26,8 +26,6 @@ define KernelPackage/sound-soc-bcm2835-i2s
TITLE:=SoC Audio support for the Broadcom 2835 I2S module TITLE:=SoC Audio support for the Broadcom 2835 I2S module
KCONFIG:= \ KCONFIG:= \
CONFIG_SND_BCM2835_SOC_I2S \ CONFIG_SND_BCM2835_SOC_I2S \
CONFIG_SND_SOC_AD193X_SPI=n \
CONFIG_SND_SOC_AD193X_I2C=n \
CONFIG_SND_SOC_DMAENGINE_PCM=y \ CONFIG_SND_SOC_DMAENGINE_PCM=y \
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
FILES:= \ FILES:= \