Hi WANG, Thank you for the patch! Yet something to improve: [auto build test ERROR on linus/master] [also build test ERROR on next-20210505] [cannot apply to abelloni/rtc-next robh/for-next v5.12] [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] url: https://github.com/0day-ci/linux/commits/WANG-Xuerui/rtc-ls2x-Add-support-for-the-Loongson-2K-LS7A-RTC/20210506-013703 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git d665ea6ea86c785760ee4bad4543dab3267ad074 config: arc-allyesconfig (attached as .config) compiler: arceb-elf-gcc (GCC) 9.3.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/0day-ci/linux/commit/a4a12242f17c2ad92025b724458a31eb088e1893 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review WANG-Xuerui/rtc-ls2x-Add-support-for-the-Loongson-2K-LS7A-RTC/20210506-013703 git checkout a4a12242f17c2ad92025b724458a31eb088e1893 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=arc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> All errors (new ones prefixed by >>): drivers/rtc/rtc-ls2x.c: In function 'ls2x_rtc_probe': >> drivers/rtc/rtc-ls2x.c:202:9: error: implicit declaration of function 'rtc_register_device'; did you mean 'devm_rtc_register_device'? [-Werror=implicit-function-declaration] 202 | return rtc_register_device(rtc); | ^~~~~~~~~~~~~~~~~~~ | devm_rtc_register_device drivers/rtc/rtc-ls2x.c: At top level: >> drivers/rtc/rtc-ls2x.c:205:34: error: array type has incomplete element type 'struct of_device_id' 205 | static const struct of_device_id ls2x_rtc_of_match[] = { | ^~~~~~~~~~~~~~~~~ >> drivers/rtc/rtc-ls2x.c:206:4: error: field name not in record or union initializer 206 | { .compatible = "loongson,ls2x-rtc" }, | ^ drivers/rtc/rtc-ls2x.c:206:4: note: (near initialization for 'ls2x_rtc_of_match') >> drivers/rtc/rtc-ls2x.c:215:21: error: implicit declaration of function 'of_match_ptr' [-Werror=implicit-function-declaration] 215 | .of_match_table = of_match_ptr(ls2x_rtc_of_match), | ^~~~~~~~~~~~ drivers/rtc/rtc-ls2x.c:205:34: warning: 'ls2x_rtc_of_match' defined but not used [-Wunused-variable] 205 | static const struct of_device_id ls2x_rtc_of_match[] = { | ^~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +202 drivers/rtc/rtc-ls2x.c 152 153 static int ls2x_rtc_probe(struct platform_device *pdev) 154 { 155 struct device *dev = &pdev->dev; 156 struct rtc_device *rtc; 157 struct ls2x_rtc_priv *priv; 158 void __iomem *regs; 159 int ret; 160 161 priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); 162 if (unlikely(!priv)) 163 return -ENOMEM; 164 165 spin_lock_init(&priv->lock); 166 platform_set_drvdata(pdev, priv); 167 168 regs = devm_platform_ioremap_resource(pdev, 0); 169 if (IS_ERR(regs)) { 170 ret = PTR_ERR(regs); 171 dev_err(dev, "Failed to map rtc registers: %d\n", ret); 172 return ret; 173 } 174 175 priv->regmap = devm_regmap_init_mmio(dev, regs, 176 &ls2x_rtc_regmap_config); 177 if (IS_ERR(priv->regmap)) { 178 ret = PTR_ERR(priv->regmap); 179 dev_err(dev, "Failed to init regmap: %d\n", ret); 180 return ret; 181 } 182 183 rtc = devm_rtc_allocate_device(dev); 184 if (IS_ERR(rtc)) { 185 ret = PTR_ERR(rtc); 186 dev_err(dev, "Failed to allocate rtc device: %d\n", ret); 187 return ret; 188 } 189 190 rtc->ops = &ls2x_rtc_ops; 191 192 /* Due to hardware erratum, all years multiple of 4 are considered 193 * leap year, so only years 2000 through 2099 are usable. 194 * 195 * Previous out-of-tree versions of this driver wrote tm_year directly 196 * into the year register, so epoch 2000 must be used to preserve 197 * semantics on shipped systems. 198 */ 199 rtc->range_min = RTC_TIMESTAMP_BEGIN_2000; 200 rtc->range_max = RTC_TIMESTAMP_END_2099; 201 > 202 return rtc_register_device(rtc); 203 } 204 > 205 static const struct of_device_id ls2x_rtc_of_match[] = { > 206 { .compatible = "loongson,ls2x-rtc" }, 207 { /* sentinel */ }, 208 }; 209 MODULE_DEVICE_TABLE(of, ls2x_rtc_of_match); 210 211 static struct platform_driver ls2x_rtc_driver = { 212 .probe = ls2x_rtc_probe, 213 .driver = { 214 .name = "ls2x-rtc", > 215 .of_match_table = of_match_ptr(ls2x_rtc_of_match), 216 }, 217 }; 218 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip