Hi Manikanta, kernel test robot noticed the following build errors:
[auto build test ERROR on robh/for-next] [also build test ERROR on linus/master arnd-asm-generic/master v6.17-rc7 next-20250924] [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/Manikanta-Guntupalli/dt-bindings-i3c-Add-AMD-I3C-master-controller-support/20250923-234944 base: https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next patch link: https://lore.kernel.org/r/20250923154551.2112388-3-manikanta.guntupalli%40amd.com patch subject: [PATCH V7 2/4] asm-generic/io.h: Add big-endian MMIO accessors config: powerpc-allnoconfig (https://download.01.org/0day-ci/archive/20250925/[email protected]/config) compiler: powerpc-linux-gcc (GCC) 15.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250925/[email protected]/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All errors (new ones prefixed by >>): In file included from arch/powerpc/include/asm/io.h:962, from include/linux/io.h:12, from include/linux/irq.h:20, from arch/powerpc/include/asm/hardirq.h:6, from include/linux/hardirq.h:11, from include/linux/interrupt.h:11, from include/linux/kernel_stat.h:8, from include/linux/cgroup.h:27, from include/linux/memcontrol.h:13, from include/linux/swap.h:9, from include/linux/suspend.h:5, from arch/powerpc/kernel/asm-offsets.c:21: >> include/asm-generic/io.h:304:18: error: redefinition of 'readw_be' 304 | #define readw_be readw_be | ^~~~~~~~ include/asm-generic/io.h:305:19: note: in expansion of macro 'readw_be' 305 | static inline u16 readw_be(const volatile void __iomem *addr) | ^~~~~~~~ arch/powerpc/include/asm/io.h:517:19: note: previous definition of 'readw_be' with type 'u16(const volatile void *)' {aka 'short unsigned int(const volatile void *)'} 517 | static inline u16 readw_be(const volatile void __iomem *addr) | ^~~~~~~~ >> include/asm-generic/io.h:319:18: error: redefinition of 'readl_be' 319 | #define readl_be readl_be | ^~~~~~~~ include/asm-generic/io.h:320:19: note: in expansion of macro 'readl_be' 320 | static inline u32 readl_be(const volatile void __iomem *addr) | ^~~~~~~~ arch/powerpc/include/asm/io.h:522:19: note: previous definition of 'readl_be' with type 'u32(const volatile void *)' {aka 'unsigned int(const volatile void *)'} 522 | static inline u32 readl_be(const volatile void __iomem *addr) | ^~~~~~~~ >> include/asm-generic/io.h:351:19: error: redefinition of 'writew_be' 351 | #define writew_be writew_be | ^~~~~~~~~ include/asm-generic/io.h:352:20: note: in expansion of macro 'writew_be' 352 | static inline void writew_be(u16 value, volatile void __iomem *addr) | ^~~~~~~~~ arch/powerpc/include/asm/io.h:545:20: note: previous definition of 'writew_be' with type 'void(u16, volatile void *)' {aka 'void(short unsigned int, volatile void *)'} 545 | static inline void writew_be(u16 val, volatile void __iomem *addr) | ^~~~~~~~~ >> include/asm-generic/io.h:363:19: error: redefinition of 'writel_be' 363 | #define writel_be writel_be | ^~~~~~~~~ include/asm-generic/io.h:364:20: note: in expansion of macro 'writel_be' 364 | static inline void writel_be(u32 value, volatile void __iomem *addr) | ^~~~~~~~~ arch/powerpc/include/asm/io.h:550:20: note: previous definition of 'writel_be' with type 'void(u32, volatile void *)' {aka 'void(unsigned int, volatile void *)'} 550 | static inline void writel_be(u32 val, volatile void __iomem *addr) | ^~~~~~~~~ make[3]: *** [scripts/Makefile.build:182: arch/powerpc/kernel/asm-offsets.s] Error 1 make[3]: Target 'prepare' not remade because of errors. make[2]: *** [Makefile:1282: prepare0] Error 2 make[2]: Target 'prepare' not remade because of errors. make[1]: *** [Makefile:248: __sub-make] Error 2 make[1]: Target 'prepare' not remade because of errors. make: *** [Makefile:248: __sub-make] Error 2 make: Target 'prepare' not remade because of errors. vim +/readw_be +304 include/asm-generic/io.h 297 298 /* 299 * {read,write}{w,l,q}_be() access big endian memory and return result 300 * in native endianness. 301 */ 302 303 #ifndef readw_be > 304 #define readw_be readw_be 305 static inline u16 readw_be(const volatile void __iomem *addr) 306 { 307 u16 val; 308 309 log_read_mmio(16, addr, _THIS_IP_, _RET_IP_); 310 __io_br(); 311 val = __be16_to_cpu((__be16 __force)__raw_readw(addr)); 312 __io_ar(val); 313 log_post_read_mmio(val, 16, addr, _THIS_IP_, _RET_IP_); 314 return val; 315 } 316 #endif 317 318 #ifndef readl_be > 319 #define readl_be readl_be 320 static inline u32 readl_be(const volatile void __iomem *addr) 321 { 322 u32 val; 323 324 log_read_mmio(32, addr, _THIS_IP_, _RET_IP_); 325 __io_br(); 326 val = __be32_to_cpu((__be32 __force)__raw_readl(addr)); 327 __io_ar(val); 328 log_post_read_mmio(val, 32, addr, _THIS_IP_, _RET_IP_); 329 return val; 330 } 331 #endif 332 333 #ifdef CONFIG_64BIT 334 #ifndef readq_be 335 #define readq_be readq_be 336 static inline u64 readq_be(const volatile void __iomem *addr) 337 { 338 u64 val; 339 340 log_read_mmio(64, addr, _THIS_IP_, _RET_IP_); 341 __io_br(); 342 val = __be64_to_cpu((__be64 __force)__raw_readq(addr)); 343 __io_ar(val); 344 log_post_read_mmio(val, 64, addr, _THIS_IP_, _RET_IP_); 345 return val; 346 } 347 #endif 348 #endif /* CONFIG_64BIT */ 349 350 #ifndef writew_be > 351 #define writew_be writew_be 352 static inline void writew_be(u16 value, volatile void __iomem *addr) 353 { 354 log_write_mmio(value, 16, addr, _THIS_IP_, _RET_IP_); 355 __io_bw(); 356 __raw_writew((u16 __force)__cpu_to_be16(value), addr); 357 __io_aw(); 358 log_post_write_mmio(value, 16, addr, _THIS_IP_, _RET_IP_); 359 } 360 #endif 361 362 #ifndef writel_be > 363 #define writel_be writel_be 364 static inline void writel_be(u32 value, volatile void __iomem *addr) 365 { 366 log_write_mmio(value, 32, addr, _THIS_IP_, _RET_IP_); 367 __io_bw(); 368 __raw_writel((u32 __force)__cpu_to_be32(value), addr); 369 __io_aw(); 370 log_post_write_mmio(value, 32, addr, _THIS_IP_, _RET_IP_); 371 } 372 #endif 373 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
