* Re: [PATCH v2 1/6] ASoC: codecs: Remove unused of_gpio.h
[not found] <20240531153038.1590171-2-andriy.shevchenko@linux.intel.com>
@ 2024-05-31 21:52 ` kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-05-31 21:52 UTC (permalink / raw)
To: Andy Shevchenko, Charles Keepax, Rob Herring, Weidong Wang,
Mark Brown, Uwe Kleine-König, Kuninori Morimoto,
Shenghao Ding, Marco Felsch, Alper Nebi Yasak, Chancel Liu,
linux-sound, linux-kernel, alsa-devel, patches, linuxppc-dev, imx,
linux-arm-kernel, linux-rockchip
Cc: llvm, oe-kbuild-all, Nicolin Chen, Fabio Estevam,
Pengutronix Kernel Team, Liam Girdwood, Shengjiu Wang,
Sascha Hauer, Xiubo Li, Takashi Iwai, David Rhodes, Kevin Lu,
Richard Fitzgerald
Hi Andy,
kernel test robot noticed the following build errors:
[auto build test ERROR on broonie-sound/for-next]
[also build test ERROR on shawnguo/for-next rockchip/for-next linus/master v6.10-rc1 next-20240531]
[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/Andy-Shevchenko/ASoC-codecs-Remove-unused-of_gpio-h/20240531-233513
base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
patch link: https://lore.kernel.org/r/20240531153038.1590171-2-andriy.shevchenko%40linux.intel.com
patch subject: [PATCH v2 1/6] ASoC: codecs: Remove unused of_gpio.h
config: i386-buildonly-randconfig-006-20240601 (https://download.01.org/0day-ci/archive/20240601/202406010556.2MUAFCcz-lkp@intel.com/config)
compiler: clang version 18.1.5 (https://github.com/llvm/llvm-project 617a15a9eac96088ae5e9134248d8236e34b91b1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240601/202406010556.2MUAFCcz-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202406010556.2MUAFCcz-lkp@intel.com/
All errors (new ones prefixed by >>):
>> sound/soc/codecs/aw88399.c:1791:3: error: call to undeclared function 'gpiod_set_value_cansleep'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1791 | gpiod_set_value_cansleep(aw88399->reset_gpio, 1);
| ^
>> sound/soc/codecs/aw88399.c:1868:24: error: call to undeclared function 'devm_gpiod_get_optional'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1868 | aw88399->reset_gpio = devm_gpiod_get_optional(&i2c->dev, "reset", GPIOD_OUT_LOW);
| ^
sound/soc/codecs/aw88399.c:1868:24: note: did you mean 'devm_regulator_get_optional'?
include/linux/regulator/consumer.h:347:1: note: 'devm_regulator_get_optional' declared here
347 | devm_regulator_get_optional(struct device *dev, const char *id)
| ^
>> sound/soc/codecs/aw88399.c:1868:68: error: use of undeclared identifier 'GPIOD_OUT_LOW'
1868 | aw88399->reset_gpio = devm_gpiod_get_optional(&i2c->dev, "reset", GPIOD_OUT_LOW);
| ^
3 errors generated.
vim +/gpiod_set_value_cansleep +1791 sound/soc/codecs/aw88399.c
8ade6cc7e26175 Weidong Wang 2023-10-25 1787
8ade6cc7e26175 Weidong Wang 2023-10-25 1788 static void aw88399_hw_reset(struct aw88399 *aw88399)
8ade6cc7e26175 Weidong Wang 2023-10-25 1789 {
8ade6cc7e26175 Weidong Wang 2023-10-25 1790 if (aw88399->reset_gpio) {
8ade6cc7e26175 Weidong Wang 2023-10-25 @1791 gpiod_set_value_cansleep(aw88399->reset_gpio, 1);
8ade6cc7e26175 Weidong Wang 2023-10-25 1792 usleep_range(AW88399_1000_US, AW88399_1000_US + 10);
8ade6cc7e26175 Weidong Wang 2023-10-25 1793 gpiod_set_value_cansleep(aw88399->reset_gpio, 0);
8ade6cc7e26175 Weidong Wang 2023-10-25 1794 usleep_range(AW88399_1000_US, AW88399_1000_US + 10);
8ade6cc7e26175 Weidong Wang 2023-10-25 1795 gpiod_set_value_cansleep(aw88399->reset_gpio, 1);
8ade6cc7e26175 Weidong Wang 2023-10-25 1796 usleep_range(AW88399_1000_US, AW88399_1000_US + 10);
8ade6cc7e26175 Weidong Wang 2023-10-25 1797 }
8ade6cc7e26175 Weidong Wang 2023-10-25 1798 }
8ade6cc7e26175 Weidong Wang 2023-10-25 1799
8ade6cc7e26175 Weidong Wang 2023-10-25 1800 static void aw88399_parse_channel_dt(struct aw_device *aw_dev)
8ade6cc7e26175 Weidong Wang 2023-10-25 1801 {
8ade6cc7e26175 Weidong Wang 2023-10-25 1802 struct device_node *np = aw_dev->dev->of_node;
8ade6cc7e26175 Weidong Wang 2023-10-25 1803 u32 channel_value;
8ade6cc7e26175 Weidong Wang 2023-10-25 1804
8ade6cc7e26175 Weidong Wang 2023-10-25 1805 of_property_read_u32(np, "awinic,audio-channel", &channel_value);
8ade6cc7e26175 Weidong Wang 2023-10-25 1806 aw_dev->channel = channel_value;
8ade6cc7e26175 Weidong Wang 2023-10-25 1807 }
8ade6cc7e26175 Weidong Wang 2023-10-25 1808
8ade6cc7e26175 Weidong Wang 2023-10-25 1809 static int aw88399_init(struct aw88399 *aw88399, struct i2c_client *i2c, struct regmap *regmap)
8ade6cc7e26175 Weidong Wang 2023-10-25 1810 {
8ade6cc7e26175 Weidong Wang 2023-10-25 1811 struct aw_device *aw_dev;
8ade6cc7e26175 Weidong Wang 2023-10-25 1812 unsigned int chip_id;
8ade6cc7e26175 Weidong Wang 2023-10-25 1813 int ret;
8ade6cc7e26175 Weidong Wang 2023-10-25 1814
8ade6cc7e26175 Weidong Wang 2023-10-25 1815 ret = regmap_read(regmap, AW88399_ID_REG, &chip_id);
8ade6cc7e26175 Weidong Wang 2023-10-25 1816 if (ret) {
8ade6cc7e26175 Weidong Wang 2023-10-25 1817 dev_err(&i2c->dev, "%s read chipid error. ret = %d", __func__, ret);
8ade6cc7e26175 Weidong Wang 2023-10-25 1818 return ret;
8ade6cc7e26175 Weidong Wang 2023-10-25 1819 }
8ade6cc7e26175 Weidong Wang 2023-10-25 1820 if (chip_id != AW88399_CHIP_ID) {
8ade6cc7e26175 Weidong Wang 2023-10-25 1821 dev_err(&i2c->dev, "unsupported device");
8ade6cc7e26175 Weidong Wang 2023-10-25 1822 return -ENXIO;
8ade6cc7e26175 Weidong Wang 2023-10-25 1823 }
8ade6cc7e26175 Weidong Wang 2023-10-25 1824 dev_dbg(&i2c->dev, "chip id = %x\n", chip_id);
8ade6cc7e26175 Weidong Wang 2023-10-25 1825
8ade6cc7e26175 Weidong Wang 2023-10-25 1826 aw_dev = devm_kzalloc(&i2c->dev, sizeof(*aw_dev), GFP_KERNEL);
8ade6cc7e26175 Weidong Wang 2023-10-25 1827 if (!aw_dev)
8ade6cc7e26175 Weidong Wang 2023-10-25 1828 return -ENOMEM;
8ade6cc7e26175 Weidong Wang 2023-10-25 1829 aw88399->aw_pa = aw_dev;
8ade6cc7e26175 Weidong Wang 2023-10-25 1830
8ade6cc7e26175 Weidong Wang 2023-10-25 1831 aw_dev->i2c = i2c;
8ade6cc7e26175 Weidong Wang 2023-10-25 1832 aw_dev->dev = &i2c->dev;
8ade6cc7e26175 Weidong Wang 2023-10-25 1833 aw_dev->regmap = regmap;
8ade6cc7e26175 Weidong Wang 2023-10-25 1834 mutex_init(&aw_dev->dsp_lock);
8ade6cc7e26175 Weidong Wang 2023-10-25 1835
8ade6cc7e26175 Weidong Wang 2023-10-25 1836 aw_dev->chip_id = chip_id;
8ade6cc7e26175 Weidong Wang 2023-10-25 1837 aw_dev->acf = NULL;
8ade6cc7e26175 Weidong Wang 2023-10-25 1838 aw_dev->prof_info.prof_desc = NULL;
8ade6cc7e26175 Weidong Wang 2023-10-25 1839 aw_dev->prof_info.count = 0;
8ade6cc7e26175 Weidong Wang 2023-10-25 1840 aw_dev->prof_info.prof_type = AW88395_DEV_NONE_TYPE_ID;
8ade6cc7e26175 Weidong Wang 2023-10-25 1841 aw_dev->channel = AW88399_DEV_DEFAULT_CH;
8ade6cc7e26175 Weidong Wang 2023-10-25 1842 aw_dev->fw_status = AW88399_DEV_FW_FAILED;
8ade6cc7e26175 Weidong Wang 2023-10-25 1843
8ade6cc7e26175 Weidong Wang 2023-10-25 1844 aw_dev->fade_step = AW88399_VOLUME_STEP_DB;
8ade6cc7e26175 Weidong Wang 2023-10-25 1845 aw_dev->volume_desc.ctl_volume = AW88399_VOL_DEFAULT_VALUE;
8ade6cc7e26175 Weidong Wang 2023-10-25 1846
8ade6cc7e26175 Weidong Wang 2023-10-25 1847 aw88399_parse_channel_dt(aw_dev);
8ade6cc7e26175 Weidong Wang 2023-10-25 1848
8ade6cc7e26175 Weidong Wang 2023-10-25 1849 return 0;
8ade6cc7e26175 Weidong Wang 2023-10-25 1850 }
8ade6cc7e26175 Weidong Wang 2023-10-25 1851
8ade6cc7e26175 Weidong Wang 2023-10-25 1852 static int aw88399_i2c_probe(struct i2c_client *i2c)
8ade6cc7e26175 Weidong Wang 2023-10-25 1853 {
8ade6cc7e26175 Weidong Wang 2023-10-25 1854 struct aw88399 *aw88399;
8ade6cc7e26175 Weidong Wang 2023-10-25 1855 int ret;
8ade6cc7e26175 Weidong Wang 2023-10-25 1856
8ade6cc7e26175 Weidong Wang 2023-10-25 1857 if (!i2c_check_functionality(i2c->adapter, I2C_FUNC_I2C))
8ade6cc7e26175 Weidong Wang 2023-10-25 1858 return dev_err_probe(&i2c->dev, -ENXIO, "check_functionality failed");
8ade6cc7e26175 Weidong Wang 2023-10-25 1859
8ade6cc7e26175 Weidong Wang 2023-10-25 1860 aw88399 = devm_kzalloc(&i2c->dev, sizeof(*aw88399), GFP_KERNEL);
8ade6cc7e26175 Weidong Wang 2023-10-25 1861 if (!aw88399)
8ade6cc7e26175 Weidong Wang 2023-10-25 1862 return -ENOMEM;
8ade6cc7e26175 Weidong Wang 2023-10-25 1863
8ade6cc7e26175 Weidong Wang 2023-10-25 1864 mutex_init(&aw88399->lock);
8ade6cc7e26175 Weidong Wang 2023-10-25 1865
8ade6cc7e26175 Weidong Wang 2023-10-25 1866 i2c_set_clientdata(i2c, aw88399);
8ade6cc7e26175 Weidong Wang 2023-10-25 1867
8ade6cc7e26175 Weidong Wang 2023-10-25 @1868 aw88399->reset_gpio = devm_gpiod_get_optional(&i2c->dev, "reset", GPIOD_OUT_LOW);
8ade6cc7e26175 Weidong Wang 2023-10-25 1869 if (IS_ERR(aw88399->reset_gpio))
8ade6cc7e26175 Weidong Wang 2023-10-25 1870 return dev_err_probe(&i2c->dev, PTR_ERR(aw88399->reset_gpio),
8ade6cc7e26175 Weidong Wang 2023-10-25 1871 "reset gpio not defined\n");
8ade6cc7e26175 Weidong Wang 2023-10-25 1872 aw88399_hw_reset(aw88399);
8ade6cc7e26175 Weidong Wang 2023-10-25 1873
8ade6cc7e26175 Weidong Wang 2023-10-25 1874 aw88399->regmap = devm_regmap_init_i2c(i2c, &aw88399_remap_config);
8ade6cc7e26175 Weidong Wang 2023-10-25 1875 if (IS_ERR(aw88399->regmap))
8ade6cc7e26175 Weidong Wang 2023-10-25 1876 return dev_err_probe(&i2c->dev, PTR_ERR(aw88399->regmap),
8ade6cc7e26175 Weidong Wang 2023-10-25 1877 "failed to init regmap\n");
8ade6cc7e26175 Weidong Wang 2023-10-25 1878
8ade6cc7e26175 Weidong Wang 2023-10-25 1879 /* aw pa init */
8ade6cc7e26175 Weidong Wang 2023-10-25 1880 ret = aw88399_init(aw88399, i2c, aw88399->regmap);
8ade6cc7e26175 Weidong Wang 2023-10-25 1881 if (ret)
8ade6cc7e26175 Weidong Wang 2023-10-25 1882 return ret;
8ade6cc7e26175 Weidong Wang 2023-10-25 1883
8ade6cc7e26175 Weidong Wang 2023-10-25 1884 ret = devm_snd_soc_register_component(&i2c->dev,
8ade6cc7e26175 Weidong Wang 2023-10-25 1885 &soc_codec_dev_aw88399,
8ade6cc7e26175 Weidong Wang 2023-10-25 1886 aw88399_dai, ARRAY_SIZE(aw88399_dai));
8ade6cc7e26175 Weidong Wang 2023-10-25 1887 if (ret)
8ade6cc7e26175 Weidong Wang 2023-10-25 1888 dev_err(&i2c->dev, "failed to register aw88399: %d", ret);
8ade6cc7e26175 Weidong Wang 2023-10-25 1889
8ade6cc7e26175 Weidong Wang 2023-10-25 1890 return ret;
8ade6cc7e26175 Weidong Wang 2023-10-25 1891 }
8ade6cc7e26175 Weidong Wang 2023-10-25 1892
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2024-05-31 21:53 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20240531153038.1590171-2-andriy.shevchenko@linux.intel.com>
2024-05-31 21:52 ` [PATCH v2 1/6] ASoC: codecs: Remove unused of_gpio.h kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox