[linusw-nomadik:ux500-href-charging-compiletest 23/23] drivers/power/supply/cw2015_battery.c:691:55: error: use of undeclared identifier 'cw'

kernel test robot lkp at intel.com
Thu Dec 2 22:28:58 PST 2021


tree:   https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik.git ux500-href-charging-compiletest
head:   c362e3ead88e4c099ba792a0e3813e8aaeb68732
commit: c362e3ead88e4c099ba792a0e3813e8aaeb68732 [23/23] power: supply_core: Pass pointer to battery info
config: riscv-buildonly-randconfig-r006-20211203 (https://download.01.org/0day-ci/archive/20211203/202112031447.ltG1SWxH-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 1e328b06c15273edf4a40a27ca24931b5efb3a87)
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 riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik.git/commit/?id=c362e3ead88e4c099ba792a0e3813e8aaeb68732
        git remote add linusw-nomadik https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik.git
        git fetch --no-tags linusw-nomadik ux500-href-charging-compiletest
        git checkout c362e3ead88e4c099ba792a0e3813e8aaeb68732
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash drivers/power/supply/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp at intel.com>

All errors (new ones prefixed by >>):

>> drivers/power/supply/cw2015_battery.c:691:55: error: use of undeclared identifier 'cw'
                   cw_bat->battery = devm_kzalloc(&client->dev, sizeof(cw->battery),
                                                                       ^
   1 error generated.
--
>> drivers/power/supply/bq27xxx_battery.c:1524:34: error: incompatible pointer types passing 'struct power_supply_battery_info **' to parameter of type 'struct power_supply_battery_info *'; remove & [-Werror,-Wincompatible-pointer-types]
                   bq27xxx_battery_set_config(di, &info);
                                                  ^~~~~
   drivers/power/supply/bq27xxx_battery.c:1431:46: note: passing argument to parameter 'info' here
                                          struct power_supply_battery_info *info)
                                                                            ^
   1 error generated.
--
>> drivers/power/supply/sc27xx_fuel_gauge.c:1020:42: error: incompatible pointer types passing 'struct power_supply_battery_info **' to parameter of type 'struct power_supply_battery_info *'; remove & [-Werror,-Wincompatible-pointer-types]
           table = power_supply_find_ocv2cap_table(&info, 20, &data->table_len);
                                                   ^~~~~
   include/linux/power_supply.h:583:67: note: passing argument to parameter 'info' here
   power_supply_find_ocv2cap_table(struct power_supply_battery_info *info,
                                                                     ^
   1 error generated.


vim +/cw +691 drivers/power/supply/cw2015_battery.c

   641	
   642	static int cw_bat_probe(struct i2c_client *client)
   643	{
   644		int ret;
   645		struct cw_battery *cw_bat;
   646		struct power_supply_config psy_cfg = { 0 };
   647	
   648		cw_bat = devm_kzalloc(&client->dev, sizeof(*cw_bat), GFP_KERNEL);
   649		if (!cw_bat)
   650			return -ENOMEM;
   651	
   652		i2c_set_clientdata(client, cw_bat);
   653		cw_bat->dev = &client->dev;
   654		cw_bat->soc = 1;
   655	
   656		ret = cw2015_parse_properties(cw_bat);
   657		if (ret) {
   658			dev_err(cw_bat->dev, "Failed to parse cw2015 properties\n");
   659			return ret;
   660		}
   661	
   662		cw_bat->regmap = devm_regmap_init_i2c(client, &cw2015_regmap_config);
   663		if (IS_ERR(cw_bat->regmap)) {
   664			dev_err(cw_bat->dev, "Failed to allocate regmap: %ld\n",
   665				PTR_ERR(cw_bat->regmap));
   666			return PTR_ERR(cw_bat->regmap);
   667		}
   668	
   669		ret = cw_init(cw_bat);
   670		if (ret) {
   671			dev_err(cw_bat->dev, "Init failed: %d\n", ret);
   672			return ret;
   673		}
   674	
   675		psy_cfg.drv_data = cw_bat;
   676		psy_cfg.fwnode = dev_fwnode(cw_bat->dev);
   677	
   678		cw_bat->rk_bat = devm_power_supply_register(&client->dev,
   679							    &cw2015_bat_desc,
   680							    &psy_cfg);
   681		if (IS_ERR(cw_bat->rk_bat)) {
   682			/* try again if this happens */
   683			dev_err_probe(&client->dev, PTR_ERR(cw_bat->rk_bat),
   684				"Failed to register power supply\n");
   685			return PTR_ERR(cw_bat->rk_bat);
   686		}
   687	
   688		ret = power_supply_get_battery_info(cw_bat->rk_bat, &cw_bat->battery);
   689		if (ret) {
   690			/* Allocate an empty battery */
 > 691			cw_bat->battery = devm_kzalloc(&client->dev, sizeof(cw->battery),
   692						       GFP_KERNEL);
   693			if (!cw_bat->battery)
   694				return -ENOMEM;
   695			dev_warn(cw_bat->dev,
   696				 "No monitored battery, some properties will be missing\n");
   697		}
   698	
   699		cw_bat->battery_workqueue = create_singlethread_workqueue("rk_battery");
   700		INIT_DELAYED_WORK(&cw_bat->battery_delay_work, cw_bat_work);
   701		queue_delayed_work(cw_bat->battery_workqueue,
   702				   &cw_bat->battery_delay_work, msecs_to_jiffies(10));
   703		return 0;
   704	}
   705	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org



More information about the linux-arm-kernel mailing list