Message ID | 20210406105018.59463-6-jiri.prchal@aksignal.cz |
---|---|
State | New |
Headers | show |
Series | None | expand |
Hi Jiri, Thank you for the patch! Yet something to improve: [auto build test ERROR on asoc/for-next] [also build test ERROR on v5.12-rc6 next-20210406] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Jiri-Prchal/SOC-Codecs-TLV320AIC3X-add-SPI-support/20210406-185528 base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next config: s390-randconfig-r011-20210406 (attached as .config) compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project a46f59a747a7273cc439efaf3b4f98d8b63d2f20) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # install s390 cross compiling tool for clang build # apt-get install binutils-s390x-linux-gnu # https://github.com/0day-ci/linux/commit/8001328cfb49d6387002a8314bc25241e46a969d git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Jiri-Prchal/SOC-Codecs-TLV320AIC3X-add-SPI-support/20210406-185528 git checkout 8001328cfb49d6387002a8314bc25241e46a969d # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=s390 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): In file included from sound/soc/codecs/tlv320aic3x-i2c.c:15: In file included from include/linux/regmap.h:20: In file included from include/linux/iopoll.h:14: In file included from include/linux/io.h:13: In file included from arch/s390/include/asm/io.h:80: include/asm-generic/io.h:464:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] val = __raw_readb(PCI_IOBASE + addr); ~~~~~~~~~~ ^ include/asm-generic/io.h:477:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr)); ~~~~~~~~~~ ^ include/uapi/linux/byteorder/big_endian.h:36:59: note: expanded from macro '__le16_to_cpu' #define __le16_to_cpu(x) __swab16((__force __u16)(__le16)(x)) ^ include/uapi/linux/swab.h:102:54: note: expanded from macro '__swab16' #define __swab16(x) (__u16)__builtin_bswap16((__u16)(x)) ^ In file included from sound/soc/codecs/tlv320aic3x-i2c.c:15: In file included from include/linux/regmap.h:20: In file included from include/linux/iopoll.h:14: In file included from include/linux/io.h:13: In file included from arch/s390/include/asm/io.h:80: include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr)); ~~~~~~~~~~ ^ include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu' #define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x)) ^ include/uapi/linux/swab.h:115:54: note: expanded from macro '__swab32' #define __swab32(x) (__u32)__builtin_bswap32((__u32)(x)) ^ In file included from sound/soc/codecs/tlv320aic3x-i2c.c:15: In file included from include/linux/regmap.h:20: In file included from include/linux/iopoll.h:14: In file included from include/linux/io.h:13: In file included from arch/s390/include/asm/io.h:80: include/asm-generic/io.h:501:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] __raw_writeb(value, PCI_IOBASE + addr); ~~~~~~~~~~ ^ include/asm-generic/io.h:511:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] __raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr); ~~~~~~~~~~ ^ include/asm-generic/io.h:521:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] __raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr); ~~~~~~~~~~ ^ include/asm-generic/io.h:609:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] readsb(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ include/asm-generic/io.h:617:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] readsw(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ include/asm-generic/io.h:625:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] readsl(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ include/asm-generic/io.h:634:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] writesb(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ include/asm-generic/io.h:643:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] writesw(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ include/asm-generic/io.h:652:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] writesl(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ >> sound/soc/codecs/tlv320aic3x-i2c.c:61:32: error: expected '}' .of_match_table = aic3x_of_id), ^ sound/soc/codecs/tlv320aic3x-i2c.c:59:12: note: to match this '{' .driver = { ^ >> sound/soc/codecs/tlv320aic3x-i2c.c:62:3: error: expected ';' at end of declaration }, ^ ; >> sound/soc/codecs/tlv320aic3x-i2c.c:63:2: error: expected identifier or '(' .probe = aic3x_i2c_probe, ^ >> sound/soc/codecs/tlv320aic3x-i2c.c:66:1: error: extraneous closing brace ('}') }; ^ 12 warnings and 4 errors generated. vim +61 sound/soc/codecs/tlv320aic3x-i2c.c eab5358b511ef2 Jiri Prchal 2021-04-06 57 eab5358b511ef2 Jiri Prchal 2021-04-06 58 static struct i2c_driver aic3x_i2c_driver = { eab5358b511ef2 Jiri Prchal 2021-04-06 59 .driver = { eab5358b511ef2 Jiri Prchal 2021-04-06 60 .name = "tlv320aic3x", eab5358b511ef2 Jiri Prchal 2021-04-06 @61 .of_match_table = aic3x_of_id), eab5358b511ef2 Jiri Prchal 2021-04-06 @62 }, eab5358b511ef2 Jiri Prchal 2021-04-06 @63 .probe = aic3x_i2c_probe, eab5358b511ef2 Jiri Prchal 2021-04-06 64 .remove = aic3x_i2c_remove, eab5358b511ef2 Jiri Prchal 2021-04-06 65 .id_table = aic3x_i2c_id, eab5358b511ef2 Jiri Prchal 2021-04-06 @66 }; eab5358b511ef2 Jiri Prchal 2021-04-06 67 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Hi Jiri, Thank you for the patch! Yet something to improve: [auto build test ERROR on asoc/for-next] [also build test ERROR on v5.12-rc6 next-20210406] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Jiri-Prchal/SOC-Codecs-TLV320AIC3X-add-SPI-support/20210406-185528 base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next config: arc-allyesconfig (attached as .config) compiler: arceb-elf-gcc (GCC) 9.3.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/8001328cfb49d6387002a8314bc25241e46a969d git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Jiri-Prchal/SOC-Codecs-TLV320AIC3X-add-SPI-support/20210406-185528 git checkout 8001328cfb49d6387002a8314bc25241e46a969d # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): >> sound/soc/codecs/tlv320aic3x-i2c.c:61:32: error: expected '}' before ')' token 61 | .of_match_table = aic3x_of_id), | ^ sound/soc/codecs/tlv320aic3x-i2c.c:59:12: note: to match this '{' 59 | .driver = { | ^ >> sound/soc/codecs/tlv320aic3x-i2c.c:61:32: error: expected '}' before ')' token 61 | .of_match_table = aic3x_of_id), | ^ sound/soc/codecs/tlv320aic3x-i2c.c:58:45: note: to match this '{' 58 | static struct i2c_driver aic3x_i2c_driver = { | ^ >> sound/soc/codecs/tlv320aic3x-i2c.c:61:32: error: expected ',' or ';' before ')' token 61 | .of_match_table = aic3x_of_id), | ^ >> sound/soc/codecs/tlv320aic3x-i2c.c:62:3: error: expected identifier or '(' before ',' token 62 | }, | ^ sound/soc/codecs/tlv320aic3x-i2c.c:38:35: warning: 'aic3x_i2c_id' defined but not used [-Wunused-const-variable=] 38 | static const struct i2c_device_id aic3x_i2c_id[] = { | ^~~~~~~~~~~~ sound/soc/codecs/tlv320aic3x-i2c.c:33:12: warning: 'aic3x_i2c_remove' defined but not used [-Wunused-function] 33 | static int aic3x_i2c_remove(struct i2c_client *i2c) | ^~~~~~~~~~~~~~~~ sound/soc/codecs/tlv320aic3x-i2c.c:20:12: warning: 'aic3x_i2c_probe' defined but not used [-Wunused-function] 20 | static int aic3x_i2c_probe(struct i2c_client *i2c, const struct i2c_device_id *id) | ^~~~~~~~~~~~~~~ vim +61 sound/soc/codecs/tlv320aic3x-i2c.c eab5358b511ef2 Jiri Prchal 2021-04-06 57 eab5358b511ef2 Jiri Prchal 2021-04-06 58 static struct i2c_driver aic3x_i2c_driver = { eab5358b511ef2 Jiri Prchal 2021-04-06 59 .driver = { eab5358b511ef2 Jiri Prchal 2021-04-06 60 .name = "tlv320aic3x", eab5358b511ef2 Jiri Prchal 2021-04-06 @61 .of_match_table = aic3x_of_id), eab5358b511ef2 Jiri Prchal 2021-04-06 @62 }, eab5358b511ef2 Jiri Prchal 2021-04-06 63 .probe = aic3x_i2c_probe, eab5358b511ef2 Jiri Prchal 2021-04-06 64 .remove = aic3x_i2c_remove, eab5358b511ef2 Jiri Prchal 2021-04-06 65 .id_table = aic3x_i2c_id, eab5358b511ef2 Jiri Prchal 2021-04-06 66 }; eab5358b511ef2 Jiri Prchal 2021-04-06 67 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig index 1c87b42606c9..d1fecf3b17c6 100644 --- a/sound/soc/codecs/Kconfig +++ b/sound/soc/codecs/Kconfig @@ -215,6 +215,8 @@ config SND_SOC_ALL_CODECS imply SND_SOC_TLV320AIC32X4_I2C imply SND_SOC_TLV320AIC32X4_SPI imply SND_SOC_TLV320AIC3X + imply SND_SOC_TLV320AIC3X_I2C + imply SND_SOC_TLV320AIC3X_SPI imply SND_SOC_TPA6130A2 imply SND_SOC_TLV320DAC33 imply SND_SOC_TSCS42XX @@ -1420,7 +1422,16 @@ config SND_SOC_TLV320AIC32X4_SPI config SND_SOC_TLV320AIC3X tristate "Texas Instruments TLV320AIC3x CODECs" + +config SND_SOC_TLV320AIC3X_I2C + tristate "Texas Instruments TLV320AIC3x audio CODECs - I2C" depends on I2C + select SND_SOC_TLV320AIC3X + +config SND_SOC_TLV320AIC3X_SPI + tristate "Texas Instruments TLV320AIC3x audio CODECs - SPI" + depends on SPI_MASTER + select SND_SOC_TLV320AIC3X config SND_SOC_TLV320DAC33 tristate diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile index 81357dc62ea0..022b3801d964 100644 --- a/sound/soc/codecs/Makefile +++ b/sound/soc/codecs/Makefile @@ -233,6 +233,8 @@ snd-soc-tlv320aic32x4-objs := tlv320aic32x4.o tlv320aic32x4-clk.o snd-soc-tlv320aic32x4-i2c-objs := tlv320aic32x4-i2c.o snd-soc-tlv320aic32x4-spi-objs := tlv320aic32x4-spi.o snd-soc-tlv320aic3x-objs := tlv320aic3x.o +snd-soc-tlv320aic3x-i2c-objs := tlv320aic3x-i2c.o +snd-soc-tlv320aic3x-spi-objs := tlv320aic3x-spi.o snd-soc-tlv320dac33-objs := tlv320dac33.o snd-soc-tlv320adcx140-objs := tlv320adcx140.o snd-soc-tscs42xx-objs := tscs42xx.o @@ -548,6 +550,8 @@ obj-$(CONFIG_SND_SOC_TLV320AIC32X4) += snd-soc-tlv320aic32x4.o obj-$(CONFIG_SND_SOC_TLV320AIC32X4_I2C) += snd-soc-tlv320aic32x4-i2c.o obj-$(CONFIG_SND_SOC_TLV320AIC32X4_SPI) += snd-soc-tlv320aic32x4-spi.o obj-$(CONFIG_SND_SOC_TLV320AIC3X) += snd-soc-tlv320aic3x.o +obj-$(CONFIG_SND_SOC_TLV320AIC3X_I2C) += snd-soc-tlv320aic3x-i2c.o +obj-$(CONFIG_SND_SOC_TLV320AIC3X_SPI) += snd-soc-tlv320aic3x-spi.o obj-$(CONFIG_SND_SOC_TLV320DAC33) += snd-soc-tlv320dac33.o obj-$(CONFIG_SND_SOC_TLV320ADCX140) += snd-soc-tlv320adcx140.o obj-$(CONFIG_SND_SOC_TSCS42XX) += snd-soc-tscs42xx.o
Adds configuration option for SPI. Compile new sources. Signed-off-by: Jiri Prchal <jiri.prchal@aksignal.cz> --- sound/soc/codecs/Kconfig | 11 +++++++++++ sound/soc/codecs/Makefile | 4 ++++ 2 files changed, 15 insertions(+)