tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: 0caac1da994900d12a9be6106edb8e98696712a3 commit: 437b6b35362b206fdf881fe6dea76720eedb6d25 [5718/6856] parisc: Use the generic IO helpers config: parisc-randconfig-r003-20220911 (https://download.01.org/0day-ci/archive/20220914/202209141221.hy0dSSyj-lkp@xxxxxxxxx/config) compiler: hppa-linux-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://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=437b6b35362b206fdf881fe6dea76720eedb6d25 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 437b6b35362b206fdf881fe6dea76720eedb6d25 # 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=parisc SHELL=/bin/bash If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <lkp@xxxxxxxxx> All warnings (new ones prefixed by >>): >> arch/parisc/lib/iomap.c:363:5: warning: no previous prototype for 'ioread64_lo_hi' [-Wmissing-prototypes] 363 | u64 ioread64_lo_hi(const void __iomem *addr) | ^~~~~~~~~~~~~~ >> arch/parisc/lib/iomap.c:373:5: warning: no previous prototype for 'ioread64_hi_lo' [-Wmissing-prototypes] 373 | u64 ioread64_hi_lo(const void __iomem *addr) | ^~~~~~~~~~~~~~ >> arch/parisc/lib/iomap.c:448:6: warning: no previous prototype for 'iowrite64_lo_hi' [-Wmissing-prototypes] 448 | void iowrite64_lo_hi(u64 val, void __iomem *addr) | ^~~~~~~~~~~~~~~ >> arch/parisc/lib/iomap.c:454:6: warning: no previous prototype for 'iowrite64_hi_lo' [-Wmissing-prototypes] 454 | void iowrite64_hi_lo(u64 val, void __iomem *addr) | ^~~~~~~~~~~~~~~ vim +/ioread64_lo_hi +363 arch/parisc/lib/iomap.c 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 362 18a1d5e1945385 Andy Shevchenko 2022-02-07 @363 u64 ioread64_lo_hi(const void __iomem *addr) 18a1d5e1945385 Andy Shevchenko 2022-02-07 364 { 18a1d5e1945385 Andy Shevchenko 2022-02-07 365 u32 low, high; 18a1d5e1945385 Andy Shevchenko 2022-02-07 366 18a1d5e1945385 Andy Shevchenko 2022-02-07 367 low = ioread32(addr); 18a1d5e1945385 Andy Shevchenko 2022-02-07 368 high = ioread32(addr + sizeof(u32)); 18a1d5e1945385 Andy Shevchenko 2022-02-07 369 18a1d5e1945385 Andy Shevchenko 2022-02-07 370 return low + ((u64)high << 32); 18a1d5e1945385 Andy Shevchenko 2022-02-07 371 } 18a1d5e1945385 Andy Shevchenko 2022-02-07 372 f15309d7ad5d12 Helge Deller 2020-09-30 @373 u64 ioread64_hi_lo(const void __iomem *addr) f15309d7ad5d12 Helge Deller 2020-09-30 374 { f15309d7ad5d12 Helge Deller 2020-09-30 375 u32 low, high; f15309d7ad5d12 Helge Deller 2020-09-30 376 f15309d7ad5d12 Helge Deller 2020-09-30 377 high = ioread32(addr + sizeof(u32)); f15309d7ad5d12 Helge Deller 2020-09-30 378 low = ioread32(addr); f15309d7ad5d12 Helge Deller 2020-09-30 379 f15309d7ad5d12 Helge Deller 2020-09-30 380 return low + ((u64)high << 32); f15309d7ad5d12 Helge Deller 2020-09-30 381 } f15309d7ad5d12 Helge Deller 2020-09-30 382 ^1da177e4c3f41 Linus Torvalds 2005-04-16 383 void iowrite8(u8 datum, void __iomem *addr) ^1da177e4c3f41 Linus Torvalds 2005-04-16 384 { ^1da177e4c3f41 Linus Torvalds 2005-04-16 385 if (unlikely(INDIRECT_ADDR(addr))) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 386 iomap_ops[ADDR_TO_REGION(addr)]->write8(datum, addr); ^1da177e4c3f41 Linus Torvalds 2005-04-16 387 } else { ^1da177e4c3f41 Linus Torvalds 2005-04-16 388 *((u8 *)addr) = datum; ^1da177e4c3f41 Linus Torvalds 2005-04-16 389 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 390 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 391 ^1da177e4c3f41 Linus Torvalds 2005-04-16 392 void iowrite16(u16 datum, void __iomem *addr) ^1da177e4c3f41 Linus Torvalds 2005-04-16 393 { ^1da177e4c3f41 Linus Torvalds 2005-04-16 394 if (unlikely(INDIRECT_ADDR(addr))) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 395 iomap_ops[ADDR_TO_REGION(addr)]->write16(datum, addr); ^1da177e4c3f41 Linus Torvalds 2005-04-16 396 } else { ^1da177e4c3f41 Linus Torvalds 2005-04-16 397 *((u16 *)addr) = cpu_to_le16(datum); ^1da177e4c3f41 Linus Torvalds 2005-04-16 398 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 399 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 400 dae409a2778877 James Bottomley 2005-04-16 401 void iowrite16be(u16 datum, void __iomem *addr) dae409a2778877 James Bottomley 2005-04-16 402 { dae409a2778877 James Bottomley 2005-04-16 403 if (unlikely(INDIRECT_ADDR(addr))) { dae409a2778877 James Bottomley 2005-04-16 404 iomap_ops[ADDR_TO_REGION(addr)]->write16be(datum, addr); dae409a2778877 James Bottomley 2005-04-16 405 } else { dae409a2778877 James Bottomley 2005-04-16 406 *((u16 *)addr) = datum; dae409a2778877 James Bottomley 2005-04-16 407 } dae409a2778877 James Bottomley 2005-04-16 408 } dae409a2778877 James Bottomley 2005-04-16 409 ^1da177e4c3f41 Linus Torvalds 2005-04-16 410 void iowrite32(u32 datum, void __iomem *addr) ^1da177e4c3f41 Linus Torvalds 2005-04-16 411 { ^1da177e4c3f41 Linus Torvalds 2005-04-16 412 if (unlikely(INDIRECT_ADDR(addr))) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 413 iomap_ops[ADDR_TO_REGION(addr)]->write32(datum, addr); ^1da177e4c3f41 Linus Torvalds 2005-04-16 414 } else { ^1da177e4c3f41 Linus Torvalds 2005-04-16 415 *((u32 *)addr) = cpu_to_le32(datum); ^1da177e4c3f41 Linus Torvalds 2005-04-16 416 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 417 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 418 dae409a2778877 James Bottomley 2005-04-16 419 void iowrite32be(u32 datum, void __iomem *addr) dae409a2778877 James Bottomley 2005-04-16 420 { dae409a2778877 James Bottomley 2005-04-16 421 if (unlikely(INDIRECT_ADDR(addr))) { dae409a2778877 James Bottomley 2005-04-16 422 iomap_ops[ADDR_TO_REGION(addr)]->write32be(datum, addr); dae409a2778877 James Bottomley 2005-04-16 423 } else { dae409a2778877 James Bottomley 2005-04-16 424 *((u32 *)addr) = datum; dae409a2778877 James Bottomley 2005-04-16 425 } dae409a2778877 James Bottomley 2005-04-16 426 } dae409a2778877 James Bottomley 2005-04-16 427 77bfc8bdb5a1cd Linus Walleij 2022-09-04 428 #ifdef CONFIG_64BIT 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 429 void iowrite64(u64 datum, void __iomem *addr) 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 430 { 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 431 if (unlikely(INDIRECT_ADDR(addr))) { 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 432 iomap_ops[ADDR_TO_REGION(addr)]->write64(datum, addr); 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 433 } else { 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 434 *((u64 *)addr) = cpu_to_le64(datum); 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 435 } 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 436 } 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 437 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 438 void iowrite64be(u64 datum, void __iomem *addr) 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 439 { 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 440 if (unlikely(INDIRECT_ADDR(addr))) { 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 441 iomap_ops[ADDR_TO_REGION(addr)]->write64be(datum, addr); 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 442 } else { 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 443 *((u64 *)addr) = datum; 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 444 } 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 445 } 77bfc8bdb5a1cd Linus Walleij 2022-09-04 446 #endif 7d1689a2f377a7 Logan Gunthorpe 2019-01-16 447 18a1d5e1945385 Andy Shevchenko 2022-02-07 @448 void iowrite64_lo_hi(u64 val, void __iomem *addr) 18a1d5e1945385 Andy Shevchenko 2022-02-07 449 { 18a1d5e1945385 Andy Shevchenko 2022-02-07 450 iowrite32(val, addr); 18a1d5e1945385 Andy Shevchenko 2022-02-07 451 iowrite32(val >> 32, addr + sizeof(u32)); 18a1d5e1945385 Andy Shevchenko 2022-02-07 452 } 18a1d5e1945385 Andy Shevchenko 2022-02-07 453 f15309d7ad5d12 Helge Deller 2020-09-30 @454 void iowrite64_hi_lo(u64 val, void __iomem *addr) f15309d7ad5d12 Helge Deller 2020-09-30 455 { f15309d7ad5d12 Helge Deller 2020-09-30 456 iowrite32(val >> 32, addr + sizeof(u32)); f15309d7ad5d12 Helge Deller 2020-09-30 457 iowrite32(val, addr); f15309d7ad5d12 Helge Deller 2020-09-30 458 } f15309d7ad5d12 Helge Deller 2020-09-30 459 :::::: The code at line 363 was first introduced by commit :::::: 18a1d5e1945385d9b5adc3fe11427ce4a9d2826e parisc: Add ioread64_lo_hi() and iowrite64_lo_hi() :::::: TO: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> :::::: CC: Helge Deller <deller@xxxxxx> -- 0-DAY CI Kernel Test Service https://01.org/lkp