This patchset series addresses various bugs found and fixed by Arnd Bergmann
whilst doing randconfig builds.
My involvement has been to review, add/check the maintainers are correct
and submit upstream to try and reduce the backlog.
Best Regards,
Kaixu Xia
Arnd Bergmann (11):
ASoC: CS42L51 and WM8962 codecs depend on INPUT
ASoC: davinci: add dependencies for SND_SOC_TLV320AIC3X
ASoC: SMDK_WM8580_PCM needs REGMAP_I2C
ASoC: samsung-idma: avoid 64-bit division
ASoC: nuc900: export nuc900_ac97_data
ASoC: RX-51 audio needs I2C
ASoC: UDA1380 needs I2C
ASoC: Atmel WM8904 codec support needs I2C
ASoC: SND_S3C_DMA_LEGACY needs S3C24XX_DMA
ASoC: Amstrad E3 needs TTY support for codec
ASoC: pxa: remove mach header dependency
Xia Kaixu (4):
ASoC: TTC DKB audio needs I2C
ASoC: Migo-R sound needs I2C
ASoC: TLV320AIC23 and Simtec Hermes audio need I2C
ASoC: WM0010 needs SPI
sound/arm/pxa2xx-pcm.c | 2 ++
sound/arm/pxa2xx-pcm.h | 3 +--
sound/soc/atmel/Kconfig | 2 +-
sound/soc/codecs/Kconfig | 8 ++++----
sound/soc/davinci/Kconfig | 10 +++++-----
sound/soc/fsl/Kconfig | 2 +-
sound/soc/nuc900/Kconfig | 1 +
sound/soc/nuc900/nuc900-ac97.c | 1 +
sound/soc/omap/Kconfig | 4 ++--
sound/soc/pxa/Kconfig | 2 +-
sound/soc/pxa/pxa-ssp.c | 2 --
sound/soc/pxa/pxa2xx-pcm.c | 2 ++
sound/soc/samsung/Kconfig | 22 ++++++++++------------
sound/soc/samsung/idma.c | 2 +-
sound/soc/sh/Kconfig | 2 +-
15 files changed, 33 insertions(+), 32 deletions(-)
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
Building ARM randconfig got into a situation where CONFIG_INPUT
is turned off and SND_SOC_ALL_CODECS is turned on, which failed
for two codecs trying to use the input subsystem. Some other
drivers also select one of these codecs and consequently need an
explicit dependency added.
Appending to the dependency list seems the easiest way out,
since this is not a practical limitation. If anyone really
needs to build these codecs for a kernel with no input support,
a more sophisticated solution can be implemented.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Kukjin Kim <[email protected]>
Cc: Sangbeom Kim <[email protected]>
Cc: Lars-Peter Clausen <[email protected]>
Cc: Timur Tabi <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
sound/soc/codecs/Kconfig | 8 ++++----
sound/soc/fsl/Kconfig | 2 +-
sound/soc/samsung/Kconfig | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig
index f0e8401..d4260d3 100644
--- a/sound/soc/codecs/Kconfig
+++ b/sound/soc/codecs/Kconfig
@@ -40,7 +40,7 @@ config SND_SOC_ALL_CODECS
select SND_SOC_ALC5632 if I2C
select SND_SOC_CQ0093VC if MFD_DAVINCI_VOICECODEC
select SND_SOC_CS42L51 if I2C
- select SND_SOC_CS42L52 if I2C
+ select SND_SOC_CS42L52 if I2C && INPUT
select SND_SOC_CS42L73 if I2C
select SND_SOC_CS4270 if I2C
select SND_SOC_CS4271 if SND_SOC_I2C_AND_SPI
@@ -127,7 +127,7 @@ config SND_SOC_ALL_CODECS
select SND_SOC_WM8955 if I2C
select SND_SOC_WM8960 if I2C
select SND_SOC_WM8961 if I2C
- select SND_SOC_WM8962 if I2C
+ select SND_SOC_WM8962 if I2C && INPUT
select SND_SOC_WM8971 if I2C
select SND_SOC_WM8974 if I2C
select SND_SOC_WM8978 if I2C
@@ -282,7 +282,7 @@ config SND_SOC_CS42L51
config SND_SOC_CS42L52
tristate "Cirrus Logic CS42L52 CODEC"
- depends on I2C
+ depends on I2C && INPUT
config SND_SOC_CS42L73
tristate "Cirrus Logic CS42L73 CODEC"
@@ -598,7 +598,7 @@ config SND_SOC_WM8961
config SND_SOC_WM8962
tristate "Wolfson Microelectronics WM8962 CODEC"
- depends on I2C
+ depends on I2C && INPUT
config SND_SOC_WM8971
tristate
diff --git a/sound/soc/fsl/Kconfig b/sound/soc/fsl/Kconfig
index 338a916..f4069d0 100644
--- a/sound/soc/fsl/Kconfig
+++ b/sound/soc/fsl/Kconfig
@@ -187,7 +187,7 @@ config SND_SOC_EUKREA_TLV320
config SND_SOC_IMX_WM8962
tristate "SoC Audio support for i.MX boards with wm8962"
- depends on OF && I2C
+ depends on OF && I2C && INPUT
select SND_SOC_WM8962
select SND_SOC_IMX_PCM_DMA
select SND_SOC_IMX_AUDMUX
diff --git a/sound/soc/samsung/Kconfig b/sound/soc/samsung/Kconfig
index f2e2891..14568be 100644
--- a/sound/soc/samsung/Kconfig
+++ b/sound/soc/samsung/Kconfig
@@ -204,7 +204,7 @@ config SND_SOC_SPEYSIDE
config SND_SOC_TOBERMORY
tristate "Audio support for Wolfson Tobermory"
- depends on SND_SOC_SAMSUNG && MACH_WLF_CRAGG_6410
+ depends on SND_SOC_SAMSUNG && MACH_WLF_CRAGG_6410 && INPUT
select SND_SAMSUNG_I2S
select SND_SOC_WM8962
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
dma_addr_t may be 64 bit wide, which causes a build failure
when doing a division on it. Here it is safe to cast to an
u32 type, which avoids the problem.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Kukjin Kim <[email protected]>
Cc: Sangbeom Kim <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
sound/soc/samsung/idma.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/samsung/idma.c b/sound/soc/samsung/idma.c
index 3d5cf15..e9891b4 100644
--- a/sound/soc/samsung/idma.c
+++ b/sound/soc/samsung/idma.c
@@ -274,7 +274,7 @@ static irqreturn_t iis_irq(int irqno, void *dev_id)
addr = readl(idma.regs + I2SLVL0ADDR) - idma.lp_tx_addr;
addr += prtd->periodsz;
- addr %= (prtd->end - prtd->start);
+ addr %= (u32)(prtd->end - prtd->start);
addr += idma.lp_tx_addr;
writel(addr, idma.regs + I2SLVL0ADDR);
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
The symbol "nuc900_ac97_data" is used by the nuc900_pcm driver,
which may be a loadable module, so we should export it.
If one tries to build SND_SOC_NUC900 without SND_SOC_NUC900_AC97,
the kernel fails to link because of the reference to nuc900_ac97_data.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Wan ZongShun <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
sound/soc/nuc900/Kconfig | 1 +
sound/soc/nuc900/nuc900-ac97.c | 1 +
2 files changed, 2 insertions(+)
diff --git a/sound/soc/nuc900/Kconfig b/sound/soc/nuc900/Kconfig
index a0ed1c6..7f0c954 100644
--- a/sound/soc/nuc900/Kconfig
+++ b/sound/soc/nuc900/Kconfig
@@ -4,6 +4,7 @@
config SND_SOC_NUC900
tristate "SoC Audio for NUC900 series"
depends on ARCH_W90X900
+ select SND_SOC_NUC900_AC97
help
This option enables support for AC97 mode on the NUC900 SoC.
diff --git a/sound/soc/nuc900/nuc900-ac97.c b/sound/soc/nuc900/nuc900-ac97.c
index 8987bf9..f2f6794 100644
--- a/sound/soc/nuc900/nuc900-ac97.c
+++ b/sound/soc/nuc900/nuc900-ac97.c
@@ -28,6 +28,7 @@
static DEFINE_MUTEX(ac97_mutex);
struct nuc900_audio *nuc900_ac97_data;
+EXPORT_SYMBOL_GPL(nuc900_ac97_data);
static int nuc900_checkready(void)
{
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
The codec requires I2C to be enabled, so any other option
that selects it should also depend on I2C.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Peter Ujfalusi <[email protected]>
Cc: Jarkko Nikula <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
sound/soc/omap/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/omap/Kconfig b/sound/soc/omap/Kconfig
index e006593..2796af9 100644
--- a/sound/soc/omap/Kconfig
+++ b/sound/soc/omap/Kconfig
@@ -26,7 +26,7 @@ config SND_OMAP_SOC_N810
config SND_OMAP_SOC_RX51
tristate "SoC Audio support for Nokia RX-51"
- depends on SND_OMAP_SOC && ARM && (MACH_NOKIA_RX51 || COMPILE_TEST)
+ depends on SND_OMAP_SOC && ARM && (MACH_NOKIA_RX51 || COMPILE_TEST) && I2C
select SND_OMAP_SOC_MCBSP
select SND_SOC_TLV320AIC3X
select SND_SOC_TPA6130A2
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
The missing dependency can lead to build errors, so
make it explicit in Kconfig.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Philipp Zabel <[email protected]>
Cc: Paul Parsons <[email protected]>
Cc: Russell King <[email protected]>
Cc: Eric Miao <[email protected]>
Cc: Haojian Zhuang <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
sound/soc/pxa/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/pxa/Kconfig b/sound/soc/pxa/Kconfig
index 6473052..6acb225 100644
--- a/sound/soc/pxa/Kconfig
+++ b/sound/soc/pxa/Kconfig
@@ -140,7 +140,7 @@ config SND_PXA910_SOC
config SND_SOC_TTC_DKB
bool "SoC Audio support for TTC DKB"
- depends on SND_PXA910_SOC && MACH_TTC_DKB
+ depends on SND_PXA910_SOC && MACH_TTC_DKB && I2C=y
select PXA_SSP
select SND_PXA_SOC_SSP
select SND_MMP_SOC
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
The WM8978 driver needs I2C to be enabled, so the
SND_SIU_MIGOR option also requires this.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
sound/soc/sh/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/sh/Kconfig b/sound/soc/sh/Kconfig
index ff60e11..b43fdf0 100644
--- a/sound/soc/sh/Kconfig
+++ b/sound/soc/sh/Kconfig
@@ -56,7 +56,7 @@ config SND_SH7760_AC97
config SND_SIU_MIGOR
tristate "SIU sound support on Migo-R"
- depends on SH_MIGOR
+ depends on SH_MIGOR && I2C
select SND_SOC_SH4_SIU
select SND_SOC_WM8978
help
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
The WM8904 codec driver needs I2C to be enabled, so the
SND_ATMEL_SOC_WM8904 option also requires this.
Found using randconfig build testing.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: [email protected]
---
sound/soc/atmel/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/atmel/Kconfig b/sound/soc/atmel/Kconfig
index 4789619..27e3fc4 100644
--- a/sound/soc/atmel/Kconfig
+++ b/sound/soc/atmel/Kconfig
@@ -35,7 +35,7 @@ config SND_AT91_SOC_SAM9G20_WM8731
config SND_ATMEL_SOC_WM8904
tristate "Atmel ASoC driver for boards using WM8904 codec"
- depends on ARCH_AT91 && ATMEL_SSC && SND_ATMEL_SOC
+ depends on ARCH_AT91 && ATMEL_SSC && SND_ATMEL_SOC && I2C
select SND_ATMEL_SOC_SSC
select SND_ATMEL_SOC_DMA
select SND_SOC_WM8904
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
SND_S3C_DMA_LEGACY can only be set on S3C24xx, which does not
(yet) support the dmaengine framework, so samsung_dma_get_ops()
fails to link if S3C24XX_DMA is disabled:
sound/built-in.o: In function `dma_hw_params':
:(.text+0x7f310): undefined reference to `s3c_dma_get_ops'
sound/built-in.o: In function `s3c_ac97_trigger':
:(.text+0x7f7f0): undefined reference to `s3c_dma_get_ops'
sound/built-in.o: In function `s3c_ac97_mic_trigger':
:(.text+0x7f884): undefined reference to `s3c_dma_get_ops'
sound/built-in.o: In function `s3c2412_i2s_trigger':
:(.text+0x80944): undefined reference to `s3c2410_dma_ctrl'
This makes sure S3C24XX_DMA is always enabled when we need
it, just like we do it for the same dependency in SND_S3C24XX_I2S,
which has the same problem. Selecting "S3C2410_DMA" as we did
before does not actually have the intended effect, since
that one is only used on the s3c2410 and s3c2442 SoCs of the
s3c24xx family, but not the others, so we can remove this
from Kconfig.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Kukjin Kim <[email protected]>
Cc: Sangbeom Kim <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
sound/soc/samsung/Kconfig | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/sound/soc/samsung/Kconfig b/sound/soc/samsung/Kconfig
index 99cc196..7b610a8 100644
--- a/sound/soc/samsung/Kconfig
+++ b/sound/soc/samsung/Kconfig
@@ -1,7 +1,6 @@
config SND_SOC_SAMSUNG
tristate "ASoC support for Samsung"
depends on PLAT_SAMSUNG
- select S3C2410_DMA if ARCH_S3C24XX
select S3C64XX_PL080 if ARCH_S3C64XX
select SND_S3C_DMA if !ARCH_S3C24XX
select SND_S3C_DMA_LEGACY if ARCH_S3C24XX
@@ -15,11 +14,11 @@ config SND_S3C_DMA
tristate
config SND_S3C_DMA_LEGACY
+ select S3C24XX_DMA
tristate
config SND_S3C24XX_I2S
tristate
- select S3C24XX_DMA
config SND_S3C_I2SV2_SOC
tristate
@@ -27,7 +26,6 @@ config SND_S3C_I2SV2_SOC
config SND_S3C2412_SOC_I2S
tristate
select SND_S3C_I2SV2_SOC
- select S3C2410_DMA
config SND_SAMSUNG_PCM
tristate
@@ -83,7 +81,6 @@ config SND_SOC_SAMSUNG_SMDK_WM8994
config SND_SOC_SAMSUNG_SMDK2443_WM9710
tristate "SoC AC97 Audio support for SMDK2443 - WM9710"
depends on SND_SOC_SAMSUNG && MACH_SMDK2443
- select S3C2410_DMA
select AC97_BUS
select SND_SOC_AC97_CODEC
select SND_SAMSUNG_AC97
@@ -94,7 +91,6 @@ config SND_SOC_SAMSUNG_SMDK2443_WM9710
config SND_SOC_SAMSUNG_LN2440SBC_ALC650
tristate "SoC AC97 Audio support for LN2440SBC - ALC650"
depends on SND_SOC_SAMSUNG && ARCH_S3C24XX
- select S3C2410_DMA
select AC97_BUS
select SND_SOC_AC97_CODEC
select SND_SAMSUNG_AC97
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
As we are moving the mmp platform towards multiplatform support,
we have to stop including platform header files.
This changes the pxa-ssp sound driver file to no longer depend
on mach/hardware.h and mach/dma.h. The code using the definitions
from those headers is actually gone already, the only thing
that was still being used was the pxa_dma_desc typedef, which
we can easily work around by using the normal 'struct pxa_dma_desc'
name.
The pxa2xx-dma driver still uses this header, so we include it
explicitly there, which is ok because that is only used on pxa,
not on mmp.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Eric Miao <[email protected]>
Cc: Russell King <[email protected]>
Cc: Haojian Zhuang <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
sound/arm/pxa2xx-pcm.c | 2 ++
sound/arm/pxa2xx-pcm.h | 3 +--
sound/soc/pxa/pxa-ssp.c | 2 --
sound/soc/pxa/pxa2xx-pcm.c | 2 ++
4 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/sound/arm/pxa2xx-pcm.c b/sound/arm/pxa2xx-pcm.c
index e6c727b..83be8e3 100644
--- a/sound/arm/pxa2xx-pcm.c
+++ b/sound/arm/pxa2xx-pcm.c
@@ -14,6 +14,8 @@
#include <linux/dma-mapping.h>
#include <linux/dmaengine.h>
+#include <mach/dma.h>
+
#include <sound/core.h>
#include <sound/pxa2xx-lib.h>
#include <sound/dmaengine_pcm.h>
diff --git a/sound/arm/pxa2xx-pcm.h b/sound/arm/pxa2xx-pcm.h
index 2a8fc08..0033098 100644
--- a/sound/arm/pxa2xx-pcm.h
+++ b/sound/arm/pxa2xx-pcm.h
@@ -9,12 +9,11 @@
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
-#include <mach/dma.h>
struct pxa2xx_runtime_data {
int dma_ch;
struct snd_dmaengine_dai_dma_data *params;
- pxa_dma_desc *dma_desc_array;
+ struct pxa_dma_desc *dma_desc_array;
dma_addr_t dma_desc_array_phys;
};
diff --git a/sound/soc/pxa/pxa-ssp.c b/sound/soc/pxa/pxa-ssp.c
index a3119a0..9b19ee7 100644
--- a/sound/soc/pxa/pxa-ssp.c
+++ b/sound/soc/pxa/pxa-ssp.c
@@ -34,8 +34,6 @@
#include <sound/pxa2xx-lib.h>
#include <sound/dmaengine_pcm.h>
-#include <mach/hardware.h>
-
#include "../../arm/pxa2xx-pcm.h"
#include "pxa-ssp.h"
diff --git a/sound/soc/pxa/pxa2xx-pcm.c b/sound/soc/pxa/pxa2xx-pcm.c
index d58b09f..42f2f01 100644
--- a/sound/soc/pxa/pxa2xx-pcm.c
+++ b/sound/soc/pxa/pxa2xx-pcm.c
@@ -15,6 +15,8 @@
#include <linux/dmaengine.h>
#include <linux/of.h>
+#include <mach/dma.h>
+
#include <sound/core.h>
#include <sound/soc.h>
#include <sound/pxa2xx-lib.h>
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
The cx20442 codec driver used here requires the TTY layer to
be enabled, or we get a link error:
sound/built-in.o: In function `cx20442_codec_remove':
cx20442.c:398: undefined reference to `tty_hangup'
sound/built-in.o: In function `ams_delta_remove':
ams-delta.c:613: undefined reference to `tty_unregister_ldisc'
sound/built-in.o: In function `ams_delta_cx20442_init':
ams-delta.c:559: undefined reference to `tty_register_ldisc'
This adds the missing dependency in the E3 configuration, there
was already one for the codec.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Peter Ujfalusi <[email protected]>
Cc: Jarkko Nikula <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
sound/soc/omap/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/omap/Kconfig b/sound/soc/omap/Kconfig
index 2796af9..d44463a 100644
--- a/sound/soc/omap/Kconfig
+++ b/sound/soc/omap/Kconfig
@@ -37,7 +37,7 @@ config SND_OMAP_SOC_RX51
config SND_OMAP_SOC_AMS_DELTA
tristate "SoC Audio support for Amstrad E3 (Delta) videophone"
- depends on SND_OMAP_SOC && MACH_AMS_DELTA
+ depends on SND_OMAP_SOC && MACH_AMS_DELTA && TTY
select SND_OMAP_SOC_MCBSP
select SND_SOC_CX20442
help
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
The UDA1380 driver needs I2C to be enabled, so
SND_SOC_SAMSUNG_H1940_UDA1380 and
SND_SOC_SAMSUNG_RX1950_UDA1380 also
require this.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Kukjin Kim <[email protected]>
Cc: Sangbeom Kim <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
sound/soc/samsung/Kconfig | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sound/soc/samsung/Kconfig b/sound/soc/samsung/Kconfig
index 0c5e9e2..b09b5a4 100644
--- a/sound/soc/samsung/Kconfig
+++ b/sound/soc/samsung/Kconfig
@@ -130,7 +130,7 @@ config SND_SOC_SAMSUNG_SIMTEC_HERMES
config SND_SOC_SAMSUNG_H1940_UDA1380
tristate "Audio support for the HP iPAQ H1940"
- depends on SND_SOC_SAMSUNG && ARCH_H1940
+ depends on SND_SOC_SAMSUNG && ARCH_H1940 && I2C
select SND_S3C24XX_I2S
select SND_SOC_UDA1380
help
@@ -138,7 +138,7 @@ config SND_SOC_SAMSUNG_H1940_UDA1380
config SND_SOC_SAMSUNG_RX1950_UDA1380
tristate "Audio support for the HP iPAQ RX1950"
- depends on SND_SOC_SAMSUNG && MACH_RX1950
+ depends on SND_SOC_SAMSUNG && MACH_RX1950 && I2C
select SND_S3C24XX_I2S
select SND_SOC_UDA1380
help
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
This adds a missing dependency for SND_SOC_SMDK_WM8580_PCM to
require REGMAP_I2C to be enabled, avoiding possible build
erorrs.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Kukjin Kim <[email protected]>
Cc: Sangbeom Kim <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
sound/soc/samsung/Kconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sound/soc/samsung/Kconfig b/sound/soc/samsung/Kconfig
index 14568be..0c5e9e2 100644
--- a/sound/soc/samsung/Kconfig
+++ b/sound/soc/samsung/Kconfig
@@ -64,6 +64,7 @@ config SND_SOC_SAMSUNG_JIVE_WM8750
config SND_SOC_SAMSUNG_SMDK_WM8580
tristate "SoC I2S Audio support for WM8580 on SMDK"
depends on SND_SOC_SAMSUNG && (MACH_SMDK6410 || MACH_SMDKC100 || MACH_SMDK6440 || MACH_SMDK6450 || MACH_SMDKV210 || MACH_SMDKC110)
+ depends on REGMAP_I2C
select SND_SOC_WM8580
select SND_SAMSUNG_I2S
help
@@ -178,6 +179,7 @@ config SND_SOC_SAMSUNG_SMDK_SPDIF
config SND_SOC_SMDK_WM8580_PCM
tristate "SoC PCM Audio support for WM8580 on SMDK"
depends on SND_SOC_SAMSUNG && (MACH_SMDK6450 || MACH_SMDKV210 || MACH_SMDKC110)
+ depends on REGMAP_I2C
select SND_SOC_WM8580
select SND_SAMSUNG_PCM
help
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
This codec requires I2C to be enabled, so any other option
that selects it should also depend on I2C.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: [email protected]
---
sound/soc/davinci/Kconfig | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/sound/soc/davinci/Kconfig b/sound/soc/davinci/Kconfig
index a8ec1fc..50a0987 100644
--- a/sound/soc/davinci/Kconfig
+++ b/sound/soc/davinci/Kconfig
@@ -18,7 +18,7 @@ config SND_DAVINCI_SOC_GENERIC_EVM
config SND_AM33XX_SOC_EVM
tristate "SoC Audio for the AM33XX chip based boards"
- depends on SND_DAVINCI_SOC && SOC_AM33XX
+ depends on SND_DAVINCI_SOC && SOC_AM33XX && I2C
select SND_DAVINCI_SOC_GENERIC_EVM
help
Say Y or M if you want to add support for SoC audio on AM33XX
@@ -28,7 +28,7 @@ config SND_AM33XX_SOC_EVM
config SND_DAVINCI_SOC_EVM
tristate "SoC Audio support for DaVinci DM6446, DM355 or DM365 EVM"
- depends on SND_DAVINCI_SOC
+ depends on SND_DAVINCI_SOC && I2C
depends on MACH_DAVINCI_EVM || MACH_DAVINCI_DM355_EVM || MACH_DAVINCI_DM365_EVM
select SND_DAVINCI_SOC_GENERIC_EVM
help
@@ -56,7 +56,7 @@ endchoice
config SND_DM6467_SOC_EVM
tristate "SoC Audio support for DaVinci DM6467 EVM"
- depends on SND_DAVINCI_SOC && MACH_DAVINCI_DM6467_EVM
+ depends on SND_DAVINCI_SOC && MACH_DAVINCI_DM6467_EVM && I2C
select SND_DAVINCI_SOC_GENERIC_EVM
select SND_SOC_SPDIF
@@ -65,7 +65,7 @@ config SND_DM6467_SOC_EVM
config SND_DA830_SOC_EVM
tristate "SoC Audio support for DA830/OMAP-L137 EVM"
- depends on SND_DAVINCI_SOC && MACH_DAVINCI_DA830_EVM
+ depends on SND_DAVINCI_SOC && MACH_DAVINCI_DA830_EVM && I2C
select SND_DAVINCI_SOC_GENERIC_EVM
help
@@ -74,7 +74,7 @@ config SND_DA830_SOC_EVM
config SND_DA850_SOC_EVM
tristate "SoC Audio support for DA850/OMAP-L138 EVM"
- depends on SND_DAVINCI_SOC && MACH_DAVINCI_DA850_EVM
+ depends on SND_DAVINCI_SOC && MACH_DAVINCI_DA850_EVM && I2C
select SND_DAVINCI_SOC_GENERIC_EVM
help
Say Y if you want to add support for SoC audio on TI
--
1.7.9.5
From: Arnd Bergmann <[email protected]>
The missing dependency can lead to build errors, so
make it explicit in Kconfig.
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Xia Kaixu <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Kukjin Kim <[email protected]>
Cc: Sangbeom Kim <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
sound/soc/samsung/Kconfig | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sound/soc/samsung/Kconfig b/sound/soc/samsung/Kconfig
index 9fd6f62..99cc196 100644
--- a/sound/soc/samsung/Kconfig
+++ b/sound/soc/samsung/Kconfig
@@ -201,7 +201,7 @@ config SND_SOC_SPEYSIDE
select SND_SAMSUNG_I2S
select SND_SOC_WM8996
select SND_SOC_WM9081
- select SND_SOC_WM0010
+ select SND_SOC_WM0010 if SPI
select SND_SOC_WM1250_EV1
config SND_SOC_TOBERMORY
@@ -217,7 +217,7 @@ config SND_SOC_BELLS
select SND_SOC_WM5102
select SND_SOC_WM5110
select SND_SOC_WM9081
- select SND_SOC_WM0010
+ select SND_SOC_WM0010 if SPI
select SND_SOC_WM1250_EV1
config SND_SOC_LOWLAND
--
1.7.9.5
On Tue, 29 Apr 2014, Xia Kaixu wrote:
> From: Arnd Bergmann <[email protected]>
>
> Building ARM randconfig got into a situation where CONFIG_INPUT
> is turned off and SND_SOC_ALL_CODECS is turned on, which failed
> for two codecs trying to use the input subsystem. Some other
> drivers also select one of these codecs and consequently need an
> explicit dependency added.
I assume you mean the CS42L52 instead of the L51. INPUT is used for a BEEP
Generator but when I disable CONFIG_INPUT I do not get an error. Is there
any information available on what the error is?
>
> Appending to the dependency list seems the easiest way out,
> since this is not a practical limitation. If anyone really
> needs to build these codecs for a kernel with no input support,
> a more sophisticated solution can be implemented.
>
It shouldn't build the BEEP code without CONFIG_INPUT enabled as you can
use the CODEC without the BEEP enabled.
I believe the WM8962 is done the same way.
Thanks,
Brian
On 04/29/2014 04:48 PM, Xia Kaixu wrote:
> From: Arnd Bergmann <[email protected]>
>
> dma_addr_t may be 64 bit wide, which causes a build failure
> when doing a division on it. Here it is safe to cast to an
> u32 type, which avoids the problem.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> Signed-off-by: Xia Kaixu <[email protected]>
> Cc: Mark Brown <[email protected]>
> Cc: Liam Girdwood <[email protected]>
> Cc: Ben Dooks <[email protected]>
> Cc: Kukjin Kim <[email protected]>
> Cc: Sangbeom Kim <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> ---
Tested with ARM_LPAE enabled. Without this patch, getting following error.
sound/built-in.o: In function `iis_irq':
sound/soc/samsung/idma.c:277: undefined reference to `__aeabi_uldivmod'
Tested-by: Tushar Behera <[email protected]>
> sound/soc/samsung/idma.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/sound/soc/samsung/idma.c b/sound/soc/samsung/idma.c
> index 3d5cf15..e9891b4 100644
> --- a/sound/soc/samsung/idma.c
> +++ b/sound/soc/samsung/idma.c
> @@ -274,7 +274,7 @@ static irqreturn_t iis_irq(int irqno, void *dev_id)
>
> addr = readl(idma.regs + I2SLVL0ADDR) - idma.lp_tx_addr;
> addr += prtd->periodsz;
> - addr %= (prtd->end - prtd->start);
> + addr %= (u32)(prtd->end - prtd->start);
> addr += idma.lp_tx_addr;
>
> writel(addr, idma.regs + I2SLVL0ADDR);
>
--
Tushar Behera
On Tue, Apr 29, 2014 at 07:18:22PM +0800, Xia Kaixu wrote:
> From: Arnd Bergmann <[email protected]>
>
> Building ARM randconfig got into a situation where CONFIG_INPUT
> is turned off and SND_SOC_ALL_CODECS is turned on, which failed
> for two codecs trying to use the input subsystem. Some other
Applied, but...
> Cc: Mark Brown <[email protected]>
> Cc: Liam Girdwood <[email protected]>
> Cc: Ben Dooks <[email protected]>
> Cc: Kukjin Kim <[email protected]>
> Cc: Sangbeom Kim <[email protected]>
> Cc: Lars-Peter Clausen <[email protected]>
> Cc: Timur Tabi <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
...please don't include noise like this in patch submissions, especially
with such long lists (which still manage to miss the driver maintainers
concerned).
On Tue, Apr 29, 2014 at 09:31:30PM -0500, Brian Austin wrote:
> I assume you mean the CS42L52 instead of the L51. INPUT is used for a BEEP
> Generator but when I disable CONFIG_INPUT I do not get an error. Is there
> any information available on what the error is?
I suspect it's ASoC built in and INPUT build as a module.
> On Apr 30, 2014, at 20:31, "Mark Brown" <[email protected]> wrote:
>
>> On Tue, Apr 29, 2014 at 09:31:30PM -0500, Brian Austin wrote:
>>
>> I assume you mean the CS42L52 instead of the L51. INPUT is used for a BEEP
>> Generator but when I disable CONFIG_INPUT I do not get an error. Is there
>> any information available on what the error is?
>
> I suspect it's ASoC built in and INPUT build as a module.
Ok, I'll try that next.
Doesn't IS_ENABLED cover that?
On Apr 30, 2014, at 8:54 PM, Austin, Brian <[email protected]> wrote:
>
>
>> On Apr 30, 2014, at 20:31, "Mark Brown" <[email protected]> wrote:
>>
>>> On Tue, Apr 29, 2014 at 09:31:30PM -0500, Brian Austin wrote:
>>>
>>> I assume you mean the CS42L52 instead of the L51. INPUT is used for a BEEP
>>> Generator but when I disable CONFIG_INPUT I do not get an error. Is there
>>> any information available on what the error is?
>>
>> I suspect it's ASoC built in and INPUT build as a module.
> Ok, I'll try that next.
> Doesn't IS_ENABLED cover that?
Apparently not.
I would like to come up with a better solution than making INPUT a requirement. I just need some time.
In the meantime I suppose it?s OK to apply it?
On Thu, May 01, 2014 at 02:16:27AM +0000, Austin, Brian wrote:
> Apparently not.
> I would like to come up with a better solution than making INPUT a requirement. I just need some time.
> In the meantime I suppose it’s OK to apply it?
Yeah. Realistically it's probably not going to ever be a practical
problem - the number of systems with audio but no input is likely to be
very close to zero.
On Tue, Apr 29, 2014 at 07:18:23PM +0800, Xia Kaixu wrote:
> From: Arnd Bergmann <[email protected]>
>
> This codec requires I2C to be enabled, so any other option
> that selects it should also depend on I2C.
Applied, thanks.
On Tue, Apr 29, 2014 at 07:18:24PM +0800, Xia Kaixu wrote:
> From: Arnd Bergmann <[email protected]>
>
> This adds a missing dependency for SND_SOC_SMDK_WM8580_PCM to
> require REGMAP_I2C to be enabled, avoiding possible build
> erorrs.
Applied, thanks. As well as the Cc list thing please try to use subject
lines matching the style for the subsystem.
On Tue, Apr 29, 2014 at 07:18:25PM +0800, Xia Kaixu wrote:
> From: Arnd Bergmann <[email protected]>
>
> dma_addr_t may be 64 bit wide, which causes a build failure
> when doing a division on it. Here it is safe to cast to an
> u32 type, which avoids the problem.
Applied, thanks.
On Tue, Apr 29, 2014 at 07:18:26PM +0800, Xia Kaixu wrote:
> From: Arnd Bergmann <[email protected]>
>
> The symbol "nuc900_ac97_data" is used by the nuc900_pcm driver,
> which may be a loadable module, so we should export it.
Applied, thanks.