tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: 19ae1f2bd9c091059f80646604ccef8a1e614f57 commit: 236fd3e0427070413e7059dc3c52c3f9c89f7cc0 [9419/10007] Merge remote-tracking branch 'nand/nand/next' config: riscv-randconfig-r013-20210615 (attached as .config) compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 64720f57bea6a6bf033feef4a5751ab9c0c3b401) 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/next/linux-next.git/commit/?id=236fd3e0427070413e7059dc3c52c3f9c89f7cc0 git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git git fetch --no-tags linux-next master git checkout 236fd3e0427070413e7059dc3c52c3f9c89f7cc0 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): In file included from drivers/mtd/nand/raw/arasan-nand-controller.c:17: In file included from include/linux/dma-mapping.h:10: In file included from include/linux/scatterlist.h:8: In file included from include/linux/mm.h:33: In file included from include/linux/pgtable.h:6: arch/riscv/include/asm/pgtable.h:521:9: error: implicit declaration of function 'pfn_pmd' [-Werror,-Wimplicit-function-declaration] return pfn_pmd(page_to_pfn(page), prot); ^ arch/riscv/include/asm/pgtable.h:521:9: note: did you mean 'pfn_pgd'? arch/riscv/include/asm/pgtable.h:222:21: note: 'pfn_pgd' declared here static inline pgd_t pfn_pgd(unsigned long pfn, pgprot_t prot) ^ arch/riscv/include/asm/pgtable.h:521:17: error: implicit declaration of function 'page_to_section' [-Werror,-Wimplicit-function-declaration] return pfn_pmd(page_to_pfn(page), prot); ^ include/asm-generic/memory_model.h:81:21: note: expanded from macro 'page_to_pfn' #define page_to_pfn __page_to_pfn ^ include/asm-generic/memory_model.h:64:14: note: expanded from macro '__page_to_pfn' int __sec = page_to_section(__pg); \ ^ arch/riscv/include/asm/pgtable.h:521:17: note: did you mean '__nr_to_section'? include/asm-generic/memory_model.h:81:21: note: expanded from macro 'page_to_pfn' #define page_to_pfn __page_to_pfn ^ include/asm-generic/memory_model.h:64:14: note: expanded from macro '__page_to_pfn' int __sec = page_to_section(__pg); \ ^ include/linux/mmzone.h:1314:35: note: '__nr_to_section' declared here static inline struct mem_section *__nr_to_section(unsigned long nr) ^ In file included from drivers/mtd/nand/raw/arasan-nand-controller.c:17: In file included from include/linux/dma-mapping.h:10: In file included from include/linux/scatterlist.h:8: In file included from include/linux/mm.h:33: In file included from include/linux/pgtable.h:6: arch/riscv/include/asm/pgtable.h:521:9: error: returning 'int' from a function with incompatible result type 'pmd_t' return pfn_pmd(page_to_pfn(page), prot); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/mtd/nand/raw/arasan-nand-controller.c:17: In file included from include/linux/dma-mapping.h:10: In file included from include/linux/scatterlist.h:8: include/linux/mm.h:1552:29: error: static declaration of 'page_to_section' follows non-static declaration static inline unsigned long page_to_section(const struct page *page) ^ arch/riscv/include/asm/pgtable.h:521:17: note: previous implicit declaration is here return pfn_pmd(page_to_pfn(page), prot); ^ include/asm-generic/memory_model.h:81:21: note: expanded from macro 'page_to_pfn' #define page_to_pfn __page_to_pfn ^ include/asm-generic/memory_model.h:64:14: note: expanded from macro '__page_to_pfn' int __sec = page_to_section(__pg); \ ^ >> drivers/mtd/nand/raw/arasan-nand-controller.c:1453:33: warning: shift count >= width of type [-Wshift-count-overflow] ret = dma_set_mask(&pdev->dev, DMA_BIT_MASK(64)); ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:76:54: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^ ~~~ 1 warning and 4 errors generated. vim +1453 drivers/mtd/nand/raw/arasan-nand-controller.c 197b88fecc50ee Miquel Raynal 2020-05-19 1416 197b88fecc50ee Miquel Raynal 2020-05-19 1417 static int anfc_probe(struct platform_device *pdev) 197b88fecc50ee Miquel Raynal 2020-05-19 1418 { 197b88fecc50ee Miquel Raynal 2020-05-19 1419 struct arasan_nfc *nfc; 197b88fecc50ee Miquel Raynal 2020-05-19 1420 int ret; 197b88fecc50ee Miquel Raynal 2020-05-19 1421 197b88fecc50ee Miquel Raynal 2020-05-19 1422 nfc = devm_kzalloc(&pdev->dev, sizeof(*nfc), GFP_KERNEL); 197b88fecc50ee Miquel Raynal 2020-05-19 1423 if (!nfc) 197b88fecc50ee Miquel Raynal 2020-05-19 1424 return -ENOMEM; 197b88fecc50ee Miquel Raynal 2020-05-19 1425 197b88fecc50ee Miquel Raynal 2020-05-19 1426 nfc->dev = &pdev->dev; 197b88fecc50ee Miquel Raynal 2020-05-19 1427 nand_controller_init(&nfc->controller); 197b88fecc50ee Miquel Raynal 2020-05-19 1428 nfc->controller.ops = &anfc_ops; 197b88fecc50ee Miquel Raynal 2020-05-19 1429 INIT_LIST_HEAD(&nfc->chips); 197b88fecc50ee Miquel Raynal 2020-05-19 1430 197b88fecc50ee Miquel Raynal 2020-05-19 1431 nfc->base = devm_platform_ioremap_resource(pdev, 0); 197b88fecc50ee Miquel Raynal 2020-05-19 1432 if (IS_ERR(nfc->base)) 197b88fecc50ee Miquel Raynal 2020-05-19 1433 return PTR_ERR(nfc->base); 197b88fecc50ee Miquel Raynal 2020-05-19 1434 197b88fecc50ee Miquel Raynal 2020-05-19 1435 anfc_reset(nfc); 197b88fecc50ee Miquel Raynal 2020-05-19 1436 197b88fecc50ee Miquel Raynal 2020-05-19 1437 nfc->controller_clk = devm_clk_get(&pdev->dev, "controller"); 197b88fecc50ee Miquel Raynal 2020-05-19 1438 if (IS_ERR(nfc->controller_clk)) 197b88fecc50ee Miquel Raynal 2020-05-19 1439 return PTR_ERR(nfc->controller_clk); 197b88fecc50ee Miquel Raynal 2020-05-19 1440 197b88fecc50ee Miquel Raynal 2020-05-19 1441 nfc->bus_clk = devm_clk_get(&pdev->dev, "bus"); 197b88fecc50ee Miquel Raynal 2020-05-19 1442 if (IS_ERR(nfc->bus_clk)) 197b88fecc50ee Miquel Raynal 2020-05-19 1443 return PTR_ERR(nfc->bus_clk); 197b88fecc50ee Miquel Raynal 2020-05-19 1444 197b88fecc50ee Miquel Raynal 2020-05-19 1445 ret = clk_prepare_enable(nfc->controller_clk); 197b88fecc50ee Miquel Raynal 2020-05-19 1446 if (ret) 197b88fecc50ee Miquel Raynal 2020-05-19 1447 return ret; 197b88fecc50ee Miquel Raynal 2020-05-19 1448 197b88fecc50ee Miquel Raynal 2020-05-19 1449 ret = clk_prepare_enable(nfc->bus_clk); 197b88fecc50ee Miquel Raynal 2020-05-19 1450 if (ret) 197b88fecc50ee Miquel Raynal 2020-05-19 1451 goto disable_controller_clk; 197b88fecc50ee Miquel Raynal 2020-05-19 1452 61622f6791a1f4 Miquel Raynal 2021-05-27 @1453 ret = dma_set_mask(&pdev->dev, DMA_BIT_MASK(64)); 61622f6791a1f4 Miquel Raynal 2021-05-27 1454 if (ret) 61622f6791a1f4 Miquel Raynal 2021-05-27 1455 return ret; 61622f6791a1f4 Miquel Raynal 2021-05-27 1456 acbd3d0945f9cc Miquel Raynal 2021-05-26 1457 ret = anfc_parse_cs(nfc); acbd3d0945f9cc Miquel Raynal 2021-05-26 1458 if (ret) acbd3d0945f9cc Miquel Raynal 2021-05-26 1459 goto disable_bus_clk; acbd3d0945f9cc Miquel Raynal 2021-05-26 1460 197b88fecc50ee Miquel Raynal 2020-05-19 1461 ret = anfc_chips_init(nfc); 197b88fecc50ee Miquel Raynal 2020-05-19 1462 if (ret) 197b88fecc50ee Miquel Raynal 2020-05-19 1463 goto disable_bus_clk; 197b88fecc50ee Miquel Raynal 2020-05-19 1464 197b88fecc50ee Miquel Raynal 2020-05-19 1465 platform_set_drvdata(pdev, nfc); 197b88fecc50ee Miquel Raynal 2020-05-19 1466 197b88fecc50ee Miquel Raynal 2020-05-19 1467 return 0; 197b88fecc50ee Miquel Raynal 2020-05-19 1468 197b88fecc50ee Miquel Raynal 2020-05-19 1469 disable_bus_clk: 197b88fecc50ee Miquel Raynal 2020-05-19 1470 clk_disable_unprepare(nfc->bus_clk); 197b88fecc50ee Miquel Raynal 2020-05-19 1471 197b88fecc50ee Miquel Raynal 2020-05-19 1472 disable_controller_clk: 197b88fecc50ee Miquel Raynal 2020-05-19 1473 clk_disable_unprepare(nfc->controller_clk); 197b88fecc50ee Miquel Raynal 2020-05-19 1474 197b88fecc50ee Miquel Raynal 2020-05-19 1475 return ret; 197b88fecc50ee Miquel Raynal 2020-05-19 1476 } 197b88fecc50ee Miquel Raynal 2020-05-19 1477 :::::: The code at line 1453 was first introduced by commit :::::: 61622f6791a1f4ac2b84b93f4e8bf5ca20d105aa mtd: rawnand: arasan: Use the right DMA mask :::::: TO: Miquel Raynal :::::: CC: Miquel Raynal --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org