Hi all, I'm currently in the process of porting our ancient TQM5200 SoM to a modern kernel, and I've identified a number of regressions that cause early boot failures (before the UART console has been initialized) with arch/powerpc/configs/52xx/tqm5200_defconfig.
Issue 1) Boot fails with CONFIG_PPC_KUAP enabled (enabled by default since 9f5bd8f1471d7 "powerpc/32s: Activate KUAP and KUEP by default"). The reason is a number of of_iomap() calls in arch/powerpc/platforms/52xx that should be early_ioremap(). I can fix this up easy enough for mpc5200_simple by changing mpc5200_setup_xlb_arbiter() to use early_ioremap() and moving mpc52xx_map_common_devices() from the setup_arch to the init hook (one side effect is that mpc52xx_restart() only works a bit later, as it requires the mpc52xx_wdt mapping from mpc52xx_map_common_devices(); I'm not sure if there is a better solution). For the other 52xx platforms (efika, lite5200, media5200) things are a bit more chaotic, and they create several more temporary mappings from setup_arch. Either they should all be moved to the init hook as well, or be converted to early_ioremap(), but I can't tell which is more appropriate. As a first step, I would propose a patch that fixes this for the simple platforms and leaves the other ones unchanged. (Side note: I also found that before 16132529cee58 ("powerpc/32s: Rework Kernel Userspace Access Protection"), boot would succeed even with KUAP enabled without changing the incorrect of_iomap(); I guess the old implementation was more lenient about the incorrect calls that the kernel warns about?) Issue 2) Boot fails with CONFIG_STRICT_KERNEL_RWX enabled, which is also the default nowadays. I have not found the cause of this boot failure yet; is there any way to debug this if the failure happens before the UART is available and I currently don't have JTAG for this hardware? Best regards, Matthias -- TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany Amtsgericht München, HRB 105018 Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider https://www.tq-group.com/