On Sat, Nov 06, 2021 at 08:49:11AM -0700, Randy Dunlap wrote: > Several header files need info on CONFIG_32BIT or CONFIG_64BIT, > but kconfig symbol BCM63XX does not provide that info. This leads > to many build errors, e.g.: > > arch/mips/include/asm/page.h:196:13: error: use of undeclared identifier 'CAC_BASE' > return x - PAGE_OFFSET + PHYS_OFFSET; > arch/mips/include/asm/mach-generic/spaces.h:91:23: note: expanded from macro 'PAGE_OFFSET' > #define PAGE_OFFSET (CAC_BASE + PHYS_OFFSET) > arch/mips/include/asm/io.h:134:28: error: use of undeclared identifier 'CAC_BASE' > return (void *)(address + PAGE_OFFSET - PHYS_OFFSET); > arch/mips/include/asm/mach-generic/spaces.h:91:23: note: expanded from macro 'PAGE_OFFSET' > #define PAGE_OFFSET (CAC_BASE + PHYS_OFFSET) > > arch/mips/include/asm/uaccess.h:82:10: error: use of undeclared identifier '__UA_LIMIT' > return (__UA_LIMIT & (addr | (addr + size) | __ua_size(size))) == 0; > > > Selecting the SYS_HAS_CPU_BMIPS* symbols causes SYS_HAS_CPU_BMIPS to be > set, which then selects CPU_SUPPORT_32BIT_KERNEL, which causes > CONFIG_32BIT to be set. (a bit more indirect than v1 [RFC].) > > Fixes: e7300d04bd08 ("MIPS: BCM63xx: Add support for the Broadcom BCM63xx family of SOCs.") > Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> > Reported-by: kernel test robot <lkp@xxxxxxxxx> > Cc: Thomas Bogendoerfer <tsbogend@xxxxxxxxxxxxxxxx> > Cc: Florian Fainelli <f.fainelli@xxxxxxxxx> > Cc: bcm-kernel-feedback-list@xxxxxxxxxxxx > Cc: linux-mips@xxxxxxxxxxxxxxx > Cc: Paul Burton <paulburton@xxxxxxxxxx> > Cc: Maxime Bizon <mbizon@xxxxxxxxxx> > Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx> > Suggested-by: Florian Fainelli <f.fainelli@xxxxxxxxx> > --- > v2: select 3 SYS_HAS_CPU_BMIPS* symbols that will cause > CPU_SUPPORTS_32BIT_KERNEL to be set (Florian) > > arch/mips/Kconfig | 3 +++ > 1 file changed, 3 insertions(+) > > --- linux-next-20211105.orig/arch/mips/Kconfig > +++ linux-next-20211105/arch/mips/Kconfig > @@ -332,6 +332,9 @@ config BCM63XX > select SYS_SUPPORTS_32BIT_KERNEL > select SYS_SUPPORTS_BIG_ENDIAN > select SYS_HAS_EARLY_PRINTK > + select SYS_HAS_CPU_BMIPS32_3300 > + select SYS_HAS_CPU_BMIPS4350 > + select SYS_HAS_CPU_BMIPS4380 > select SWAP_IO_SPACE > select GPIOLIB > select MIPS_L1_CACHE_SHIFT_4 applied to mips-next. Thomas. -- Crap can work. Given enough thrust pigs will fly, but it's not necessarily a good idea. [ RFC1925, 2.3 ]