[<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, ®map_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