Message ID | 1668165992-6493-7-git-send-email-wangweidong.a@awinic.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | ASoC: codecs: Add Awinic AW883XX audio amplifier driver | expand |
Hi, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on broonie-sound/for-next] [also build test WARNING on linus/master v6.1-rc4 next-20221111] [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#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/wangweidong-a-awinic-com/ASoC-codecs-Add-i2c-and-codec-registration-for/20221111-202637 base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next patch link: https://lore.kernel.org/r/1668165992-6493-7-git-send-email-wangweidong.a%40awinic.com patch subject: [PATCH V3 6/6] ASoC:codecs:aw883xx corresponds to the modified Makefile and Kconfig config: sparc-allyesconfig compiler: sparc64-linux-gcc (GCC) 12.1.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/intel-lab-lkp/linux/commit/b8778077cd1bc1375124d18df7afeec32dca1950 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review wangweidong-a-awinic-com/ASoC-codecs-Add-i2c-and-codec-registration-for/20221111-202637 git checkout b8778077cd1bc1375124d18df7afeec32dca1950 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=sparc SHELL=/bin/bash sound/soc/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot <lkp@intel.com> All warnings (new ones prefixed by >>): sound/soc/codecs/aw883xx/aw883xx.c: In function 'reg_store': >> sound/soc/codecs/aw883xx/aw883xx.c:1095:9: warning: this 'if' clause does not guard... [-Wmisleading-indentation] 1095 | if (sscanf(buf, "%x %x", &databuf[0], &databuf[1]) == 2) | ^~ sound/soc/codecs/aw883xx/aw883xx.c:1097:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' 1097 | regmap_write(aw883xx->regmap, databuf[0], databuf[1]); | ^~~~~~~~~~~~ sound/soc/codecs/aw883xx/aw883xx.c: At top level: sound/soc/codecs/aw883xx/aw883xx.c:1799:19: error: initialization of 'void (*)(struct i2c_client *)' from incompatible pointer type 'int (*)(struct i2c_client *)' [-Werror=incompatible-pointer-types] 1799 | .remove = aw883xx_i2c_remove, | ^~~~~~~~~~~~~~~~~~ sound/soc/codecs/aw883xx/aw883xx.c:1799:19: note: (near initialization for 'aw883xx_i2c_driver.remove') In file included from sound/soc/codecs/aw883xx/aw883xx.c:30: sound/soc/codecs/aw883xx/aw883xx_pid_2049_reg.h:110:28: warning: 'aw_pid_2049_reg_access' defined but not used [-Wunused-const-variable=] 110 | static const unsigned char aw_pid_2049_reg_access[AW_PID_2049_REG_MAX] = { | ^~~~~~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors -- >> sound/soc/codecs/aw883xx/aw883xx_device.c:634:5: warning: no previous prototype for 'aw883xx_dev_get_int_status' [-Wmissing-prototypes] 634 | int aw883xx_dev_get_int_status(struct aw_device *aw_dev, uint16_t *int_status) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ >> sound/soc/codecs/aw883xx/aw883xx_device.c:650:6: warning: no previous prototype for 'aw883xx_dev_clear_int_status' [-Wmissing-prototypes] 650 | void aw883xx_dev_clear_int_status(struct aw_device *aw_dev) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> sound/soc/codecs/aw883xx/aw883xx_device.c:1000:5: warning: no previous prototype for 'aw_dev_get_ra' [-Wmissing-prototypes] 1000 | int aw_dev_get_ra(struct aw_cali_desc *cali_desc) | ^~~~~~~~~~~~~ >> sound/soc/codecs/aw883xx/aw883xx_device.c:1062:5: warning: no previous prototype for 'aw_dev_dsp_fw_update' [-Wmissing-prototypes] 1062 | int aw_dev_dsp_fw_update(struct aw_device *aw_dev, | ^~~~~~~~~~~~~~~~~~~~ vim +/if +1095 sound/soc/codecs/aw883xx/aw883xx.c 00cbb9c2078dff Weidong Wang 2022-11-11 1087 00cbb9c2078dff Weidong Wang 2022-11-11 1088 static ssize_t reg_store(struct device *dev, 00cbb9c2078dff Weidong Wang 2022-11-11 1089 struct device_attribute *attr, const char *buf, 00cbb9c2078dff Weidong Wang 2022-11-11 1090 size_t count) 00cbb9c2078dff Weidong Wang 2022-11-11 1091 { 00cbb9c2078dff Weidong Wang 2022-11-11 1092 struct aw883xx *aw883xx = dev_get_drvdata(dev); 00cbb9c2078dff Weidong Wang 2022-11-11 1093 unsigned int databuf[2] = { 0 }; 00cbb9c2078dff Weidong Wang 2022-11-11 1094 00cbb9c2078dff Weidong Wang 2022-11-11 @1095 if (sscanf(buf, "%x %x", &databuf[0], &databuf[1]) == 2) 00cbb9c2078dff Weidong Wang 2022-11-11 1096 mutex_lock(&aw883xx->dsp_lock); 00cbb9c2078dff Weidong Wang 2022-11-11 1097 regmap_write(aw883xx->regmap, databuf[0], databuf[1]); 00cbb9c2078dff Weidong Wang 2022-11-11 1098 mutex_unlock(&aw883xx->dsp_lock); 00cbb9c2078dff Weidong Wang 2022-11-11 1099 00cbb9c2078dff Weidong Wang 2022-11-11 1100 return count; 00cbb9c2078dff Weidong Wang 2022-11-11 1101 } 00cbb9c2078dff Weidong Wang 2022-11-11 1102
Hi,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on broonie-sound/for-next]
[also build test WARNING on linus/master v6.1-rc4 next-20221111]
[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#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/wangweidong-a-awinic-com/ASoC-codecs-Add-i2c-and-codec-registration-for/20221111-202637
base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
patch link: https://lore.kernel.org/r/1668165992-6493-7-git-send-email-wangweidong.a%40awinic.com
patch subject: [PATCH V3 6/6] ASoC:codecs:aw883xx corresponds to the modified Makefile and Kconfig
config: x86_64-allyesconfig
compiler: gcc-11 (Debian 11.3.0-8) 11.3.0
reproduce (this is a W=1 build):
# https://github.com/intel-lab-lkp/linux/commit/b8778077cd1bc1375124d18df7afeec32dca1950
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review wangweidong-a-awinic-com/ASoC-codecs-Add-i2c-and-codec-registration-for/20221111-202637
git checkout b8778077cd1bc1375124d18df7afeec32dca1950
# save the config file
mkdir build_dir && cp config build_dir/.config
make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash sound/soc/codecs/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
sound/soc/codecs/aw883xx/aw883xx.c: In function 'reg_store':
sound/soc/codecs/aw883xx/aw883xx.c:1095:9: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
1095 | if (sscanf(buf, "%x %x", &databuf[0], &databuf[1]) == 2)
| ^~
sound/soc/codecs/aw883xx/aw883xx.c:1097:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
1097 | regmap_write(aw883xx->regmap, databuf[0], databuf[1]);
| ^~~~~~~~~~~~
sound/soc/codecs/aw883xx/aw883xx.c: At top level:
sound/soc/codecs/aw883xx/aw883xx.c:1799:19: error: initialization of 'void (*)(struct i2c_client *)' from incompatible pointer type 'int (*)(struct i2c_client *)' [-Werror=incompatible-pointer-types]
1799 | .remove = aw883xx_i2c_remove,
| ^~~~~~~~~~~~~~~~~~
sound/soc/codecs/aw883xx/aw883xx.c:1799:19: note: (near initialization for 'aw883xx_i2c_driver.remove')
In file included from sound/soc/codecs/aw883xx/aw883xx.c:30:
>> sound/soc/codecs/aw883xx/aw883xx_pid_2049_reg.h:110:28: warning: 'aw_pid_2049_reg_access' defined but not used [-Wunused-const-variable=]
110 | static const unsigned char aw_pid_2049_reg_access[AW_PID_2049_REG_MAX] = {
| ^~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +/aw_pid_2049_reg_access +110 sound/soc/codecs/aw883xx/aw883xx_pid_2049_reg.h
92f03a652991d3 Weidong Wang 2022-11-11 109
92f03a652991d3 Weidong Wang 2022-11-11 @110 static const unsigned char aw_pid_2049_reg_access[AW_PID_2049_REG_MAX] = {
92f03a652991d3 Weidong Wang 2022-11-11 111 [AW_PID_2049_ID_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 112 [AW_PID_2049_SYSST_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 113 [AW_PID_2049_SYSINT_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 114 [AW_PID_2049_SYSINTM_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 115 [AW_PID_2049_SYSCTRL_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 116 [AW_PID_2049_SYSCTRL2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 117 [AW_PID_2049_I2SCTRL_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 118 [AW_PID_2049_I2SCFG1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 119 [AW_PID_2049_I2SCFG2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 120 [AW_PID_2049_HAGCCFG1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 121 [AW_PID_2049_HAGCCFG2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 122 [AW_PID_2049_HAGCCFG3_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 123 [AW_PID_2049_HAGCCFG4_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 124 [AW_PID_2049_HAGCCFG5_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 125 [AW_PID_2049_HAGCCFG6_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 126 [AW_PID_2049_HAGCCFG7_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 127 [AW_PID_2049_MPDCFG_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 128 [AW_PID_2049_PWMCTRL_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 129 [AW_PID_2049_I2SCFG3_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 130 [AW_PID_2049_DBGCTRL_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 131 [AW_PID_2049_HAGCST_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 132 [AW_PID_2049_VBAT_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 133 [AW_PID_2049_TEMP_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 134 [AW_PID_2049_PVDD_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 135 [AW_PID_2049_ISNDAT_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 136 [AW_PID_2049_VSNDAT_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 137 [AW_PID_2049_I2SINT_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 138 [AW_PID_2049_I2SCAPCNT_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 139 [AW_PID_2049_ANASTA1_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 140 [AW_PID_2049_ANASTA2_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 141 [AW_PID_2049_ANASTA3_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 142 [AW_PID_2049_ANASTA4_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 143 [AW_PID_2049_TESTDET_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 144 [AW_PID_2049_TESTIN_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 145 [AW_PID_2049_TESTOUT_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 146 [AW_PID_2049_DSPMADD_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 147 [AW_PID_2049_DSPMDAT_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 148 [AW_PID_2049_WDT_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 149 [AW_PID_2049_ACR1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 150 [AW_PID_2049_ACR2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 151 [AW_PID_2049_ASR1_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 152 [AW_PID_2049_ASR2_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 153 [AW_PID_2049_DSPCFG_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 154 [AW_PID_2049_ASR3_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 155 [AW_PID_2049_ASR4_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 156 [AW_PID_2049_VSNCTRL1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 157 [AW_PID_2049_ISNCTRL1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 158 [AW_PID_2049_PLLCTRL1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 159 [AW_PID_2049_PLLCTRL2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 160 [AW_PID_2049_PLLCTRL3_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 161 [AW_PID_2049_CDACTRL1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 162 [AW_PID_2049_CDACTRL2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 163 [AW_PID_2049_SADCCTRL1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 164 [AW_PID_2049_SADCCTRL2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 165 [AW_PID_2049_CPCTRL1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 166 [AW_PID_2049_BSTCTRL1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 167 [AW_PID_2049_BSTCTRL2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 168 [AW_PID_2049_BSTCTRL3_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 169 [AW_PID_2049_BSTCTRL4_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 170 [AW_PID_2049_BSTCTRL5_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 171 [AW_PID_2049_BSTCTRL6_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 172 [AW_PID_2049_BSTCTRL7_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 173 [AW_PID_2049_DSMCFG1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 174 [AW_PID_2049_DSMCFG2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 175 [AW_PID_2049_DSMCFG3_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 176 [AW_PID_2049_DSMCFG4_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 177 [AW_PID_2049_DSMCFG5_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 178 [AW_PID_2049_DSMCFG6_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 179 [AW_PID_2049_DSMCFG7_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 180 [AW_PID_2049_DSMCFG8_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 181 [AW_PID_2049_TESTCTRL1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 182 [AW_PID_2049_TESTCTRL2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 183 [AW_PID_2049_EFCTRL1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 184 [AW_PID_2049_EFCTRL2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 185 [AW_PID_2049_EFWH_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 186 [AW_PID_2049_EFWM2_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 187 [AW_PID_2049_EFWM1_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 188 [AW_PID_2049_EFWL_REG] = (REG_RD_ACCESS | REG_WR_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 189 [AW_PID_2049_EFRH_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 190 [AW_PID_2049_EFRM2_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 191 [AW_PID_2049_EFRM1_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 192 [AW_PID_2049_EFRL_REG] = (REG_RD_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 193 [AW_PID_2049_TM_REG] = (REG_NONE_ACCESS),
92f03a652991d3 Weidong Wang 2022-11-11 194 };
92f03a652991d3 Weidong Wang 2022-11-11 195
Hi, Thank you for the patch! Yet something to improve: [auto build test ERROR on broonie-sound/for-next] [also build test ERROR on linus/master v6.1-rc4 next-20221111] [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#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/wangweidong-a-awinic-com/ASoC-codecs-Add-i2c-and-codec-registration-for/20221111-202637 base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next patch link: https://lore.kernel.org/r/1668165992-6493-7-git-send-email-wangweidong.a%40awinic.com patch subject: [PATCH V3 6/6] ASoC:codecs:aw883xx corresponds to the modified Makefile and Kconfig config: nios2-randconfig-r036-20221111 compiler: nios2-linux-gcc (GCC) 12.1.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/intel-lab-lkp/linux/commit/b8778077cd1bc1375124d18df7afeec32dca1950 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review wangweidong-a-awinic-com/ASoC-codecs-Add-i2c-and-codec-registration-for/20221111-202637 git checkout b8778077cd1bc1375124d18df7afeec32dca1950 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=nios2 SHELL=/bin/bash sound/soc/codecs/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot <lkp@intel.com> All error/warnings (new ones prefixed by >>): sound/soc/codecs/aw883xx/aw883xx.c: In function 'reg_store': >> sound/soc/codecs/aw883xx/aw883xx.c:1095:9: warning: this 'if' clause does not guard... [-Wmisleading-indentation] 1095 | if (sscanf(buf, "%x %x", &databuf[0], &databuf[1]) == 2) | ^~ sound/soc/codecs/aw883xx/aw883xx.c:1097:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' 1097 | regmap_write(aw883xx->regmap, databuf[0], databuf[1]); | ^~~~~~~~~~~~ sound/soc/codecs/aw883xx/aw883xx.c: At top level: >> sound/soc/codecs/aw883xx/aw883xx.c:1799:19: error: initialization of 'void (*)(struct i2c_client *)' from incompatible pointer type 'int (*)(struct i2c_client *)' [-Werror=incompatible-pointer-types] 1799 | .remove = aw883xx_i2c_remove, | ^~~~~~~~~~~~~~~~~~ sound/soc/codecs/aw883xx/aw883xx.c:1799:19: note: (near initialization for 'aw883xx_i2c_driver.remove') In file included from sound/soc/codecs/aw883xx/aw883xx.c:30: sound/soc/codecs/aw883xx/aw883xx_pid_2049_reg.h:110:28: warning: 'aw_pid_2049_reg_access' defined but not used [-Wunused-const-variable=] 110 | static const unsigned char aw_pid_2049_reg_access[AW_PID_2049_REG_MAX] = { | ^~~~~~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors -- >> sound/soc/codecs/aw883xx/aw883xx_device.c:634:5: warning: no previous prototype for 'aw883xx_dev_get_int_status' [-Wmissing-prototypes] 634 | int aw883xx_dev_get_int_status(struct aw_device *aw_dev, uint16_t *int_status) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ >> sound/soc/codecs/aw883xx/aw883xx_device.c:650:6: warning: no previous prototype for 'aw883xx_dev_clear_int_status' [-Wmissing-prototypes] 650 | void aw883xx_dev_clear_int_status(struct aw_device *aw_dev) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> sound/soc/codecs/aw883xx/aw883xx_device.c:1000:5: warning: no previous prototype for 'aw_dev_get_ra' [-Wmissing-prototypes] 1000 | int aw_dev_get_ra(struct aw_cali_desc *cali_desc) | ^~~~~~~~~~~~~ >> sound/soc/codecs/aw883xx/aw883xx_device.c:1062:5: warning: no previous prototype for 'aw_dev_dsp_fw_update' [-Wmissing-prototypes] 1062 | int aw_dev_dsp_fw_update(struct aw_device *aw_dev, | ^~~~~~~~~~~~~~~~~~~~ vim +1799 sound/soc/codecs/aw883xx/aw883xx.c 00cbb9c2078dff Weidong Wang 2022-11-11 1791 00cbb9c2078dff Weidong Wang 2022-11-11 1792 static struct i2c_driver aw883xx_i2c_driver = { 00cbb9c2078dff Weidong Wang 2022-11-11 1793 .driver = { 00cbb9c2078dff Weidong Wang 2022-11-11 1794 .name = AW883XX_I2C_NAME, 00cbb9c2078dff Weidong Wang 2022-11-11 1795 .owner = THIS_MODULE, 00cbb9c2078dff Weidong Wang 2022-11-11 1796 .of_match_table = of_match_ptr(aw883xx_dt_match), 00cbb9c2078dff Weidong Wang 2022-11-11 1797 }, 00cbb9c2078dff Weidong Wang 2022-11-11 1798 .probe = aw883xx_i2c_probe, 00cbb9c2078dff Weidong Wang 2022-11-11 @1799 .remove = aw883xx_i2c_remove, 00cbb9c2078dff Weidong Wang 2022-11-11 1800 .id_table = aw883xx_i2c_id, 00cbb9c2078dff Weidong Wang 2022-11-11 1801 }; 00cbb9c2078dff Weidong Wang 2022-11-11 1802 module_i2c_driver(aw883xx_i2c_driver); 00cbb9c2078dff Weidong Wang 2022-11-11 1803
diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig index d16b4ef..033c285 100644 --- a/sound/soc/codecs/Kconfig +++ b/sound/soc/codecs/Kconfig @@ -54,6 +54,7 @@ config SND_SOC_ALL_CODECS imply SND_SOC_ALC5623 imply SND_SOC_ALC5632 imply SND_SOC_AW8738 + imply SND_SOC_AW883XX imply SND_SOC_BT_SCO imply SND_SOC_BD28623 imply SND_SOC_CQ0093VC @@ -2128,4 +2129,13 @@ config SND_SOC_LPASS_TX_MACRO select SND_SOC_LPASS_MACRO_COMMON tristate "Qualcomm TX Macro in LPASS(Low Power Audio SubSystem)" +config SND_SOC_AW883XX + tristate "Soc Audio for awinic aw883xx series" + depends on I2C + help + this option enables support for aw883xx series Smart PA. + The Awinic AW883XX is an I2S/TDM input, high efficiency + digital Smart K audio amplifier with an integrated 10V + smart boost convert. + endmenu diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile index 92fd441..e10d95f 100644 --- a/sound/soc/codecs/Makefile +++ b/sound/soc/codecs/Makefile @@ -352,6 +352,11 @@ snd-soc-tas2780-objs := tas2780.o # Mux snd-soc-simple-mux-objs := simple-mux.o +snd_soc_aw883xx-objs := aw883xx/aw883xx.o \ + aw883xx/aw883xx_init.o \ + aw883xx/aw883xx_device.o \ + aw883xx/aw883xx_bin_parse.o \ + obj-$(CONFIG_SND_SOC_88PM860X) += snd-soc-88pm860x.o obj-$(CONFIG_SND_SOC_AB8500_CODEC) += snd-soc-ab8500-codec.o obj-$(CONFIG_SND_SOC_AC97_CODEC) += snd-soc-ac97.o @@ -709,3 +714,5 @@ obj-$(CONFIG_SND_SOC_LPASS_TX_MACRO) += snd-soc-lpass-tx-macro.o # Mux obj-$(CONFIG_SND_SOC_SIMPLE_MUX) += snd-soc-simple-mux.o + +obj-$(CONFIG_SND_SOC_AW883XX) +=snd_soc_aw883xx.o