lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202211011906.dnWHrfOg-lkp@intel.com>
Date:   Tue, 1 Nov 2022 19:47:03 +0800
From:   kernel test robot <lkp@...el.com>
To:     Ibrahim Tilki <Ibrahim.Tilki@...log.com>, a.zummo@...ertech.it,
        alexandre.belloni@...tlin.com, jdelvare@...e.com,
        linux@...ck-us.net, robh+dt@...nel.org,
        krzysztof.kozlowski+dt@...aro.org
Cc:     oe-kbuild-all@...ts.linux.dev,
        Ibrahim Tilki <Ibrahim.Tilki@...log.com>,
        linux-rtc@...r.kernel.org, linux-kernel@...r.kernel.org,
        linux-hwmon@...r.kernel.org, devicetree@...r.kernel.org,
        Zeynep Arslanbenzer <Zeynep.Arslanbenzer@...log.com>
Subject: Re: [PATCH v2 1/2] drivers: rtc: add max313xx series rtc driver

Hi Ibrahim,

I love your patch! Yet something to improve:

[auto build test ERROR on abelloni/rtc-next]
[also build test ERROR on linus/master v6.1-rc3 next-20221101]
[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/Ibrahim-Tilki/drivers-rtc-add-max313xx-series-rtc-driver/20221026-211354
base:   https://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux.git rtc-next
patch link:    https://lore.kernel.org/r/20221026131124.289-2-Ibrahim.Tilki%40analog.com
patch subject: [PATCH v2 1/2] drivers: rtc: add max313xx series rtc driver
config: arc-randconfig-p002-20221031
compiler: arceb-elf-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/c1a7008298cd59100af5149baf99e53245d6be0f
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Ibrahim-Tilki/drivers-rtc-add-max313xx-series-rtc-driver/20221026-211354
        git checkout c1a7008298cd59100af5149baf99e53245d6be0f
        # 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=arc SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@...el.com>

All errors (new ones prefixed by >>):

   arceb-elf-ld: drivers/rtc/rtc-max313xx.o: in function `max313xx_probe':
>> drivers/rtc/rtc-max313xx.c:1018: undefined reference to `devm_hwmon_device_register_with_info'
>> arceb-elf-ld: drivers/rtc/rtc-max313xx.c:1018: undefined reference to `devm_hwmon_device_register_with_info'


vim +1018 drivers/rtc/rtc-max313xx.c

   930	
   931	static int max313xx_probe(struct i2c_client *client,
   932				  const struct i2c_device_id *id)
   933	{
   934		struct device *dev = &client->dev;
   935		struct max313xx *max313xx;
   936		struct device *hwmon;
   937		const void *match;
   938		int ret;
   939	
   940		max313xx = devm_kzalloc(&client->dev, sizeof(*max313xx), GFP_KERNEL);
   941		if (!max313xx)
   942			return -ENOMEM;
   943	
   944		dev_set_drvdata(&client->dev, max313xx);
   945	
   946		max313xx->regmap = devm_regmap_init_i2c(client, &regmap_config);
   947		if (IS_ERR(max313xx->regmap)) {
   948			return dev_err_probe(dev, PTR_ERR(max313xx->regmap),
   949					     "regmap init failed\n");
   950		}
   951	
   952		i2c_set_clientdata(client, max313xx);
   953	
   954		match = device_get_match_data(dev);
   955		if (match)
   956			max313xx->id = (enum max313xx_ids)match;
   957		else if (id)
   958			max313xx->id = id->driver_data;
   959		else
   960			return -ENODEV;
   961	
   962		max313xx->chip = &chip[max313xx->id];
   963	
   964		ret = max313xx_init(max313xx);
   965		if (ret)
   966			return ret;
   967	
   968		max313xx->rtc = devm_rtc_allocate_device(dev);
   969		if (IS_ERR(max313xx->rtc))
   970			return PTR_ERR(max313xx->rtc);
   971	
   972		max313xx->rtc->ops = &max3133x_rtc_ops;
   973		max313xx->rtc->range_min = RTC_TIMESTAMP_BEGIN_2000;
   974		max313xx->rtc->range_max = RTC_TIMESTAMP_END_2199;
   975	
   976		ret = devm_rtc_register_device(max313xx->rtc);
   977		if (ret)
   978			return ret;
   979	
   980		switch (max313xx->id) {
   981		case ID_MAX31328:
   982		case ID_MAX31343:
   983			max313xx->irqs[0] = client->irq;
   984			break;
   985		default:
   986			max313xx->irqs[0] = fwnode_irq_get_byname(dev_fwnode(dev), "INTA");
   987			max313xx->irqs[1] = fwnode_irq_get_byname(dev_fwnode(dev), "INTB");
   988			if (max313xx->irqs[0] <= 0 && max313xx->irqs[1] <= 0 && client->irq)
   989				return dev_err_probe(dev, -ENOENT,
   990						     "interrupt requested but no interrupt name specified\n");
   991	
   992			break;
   993		}
   994	
   995		ret = max313xx_clkout_register(dev);
   996		if (ret)
   997			return ret;
   998	
   999		ret = max313xx_clkin_init(dev);
  1000		if (ret)
  1001			return ret;
  1002	
  1003		/* IRQ wiring depends on the clock configuration so parse them first */
  1004		ret = max313xx_irq_init(dev, client->name);
  1005		if (ret)
  1006			return ret;
  1007	
  1008		if (max313xx->chip->ram_size) {
  1009			max313xx_nvmem_cfg.size = max313xx->chip->ram_size;
  1010			max313xx_nvmem_cfg.priv = max313xx;
  1011	
  1012			ret = devm_rtc_nvmem_register(max313xx->rtc, &max313xx_nvmem_cfg);
  1013			if (ret)
  1014				dev_warn(dev, "cannot register rtc nvmem\n");
  1015		}
  1016	
  1017		if (max313xx->chip->temp_reg) {
> 1018			hwmon = devm_hwmon_device_register_with_info(dev, client->name,
  1019								     max313xx,
  1020								     &max313xx_chip_info,
  1021								     NULL);
  1022			if (IS_ERR(hwmon))
  1023				dev_warn(dev, "cannot register hwmon device: %li\n",
  1024					 PTR_ERR(hwmon));
  1025		}
  1026	
  1027		return max313xx_trickle_charger_setup(dev);
  1028	}
  1029	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

View attachment "config" of type "text/plain" (156815 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ