On Wed, Mar 30, 2022 at 02:40:54PM +0200, Pali Rohár wrote: > On Wednesday 30 March 2022 14:32:24 Pali Rohár wrote: > > On Wednesday 30 March 2022 08:29:17 Tom Rini wrote: > > > On Wed, Mar 30, 2022 at 02:20:28PM +0200, Pali Rohár wrote: > > > > Hello! > > > > > > > > In current master branch is U-Boot for P2020 board (powerpc mpc85xx > > > > based) built by P2020RDB-PC_SDCARD_defconfig completely broken. U-Boot > > > > does not work at all and on UART is nothing printed. > > > > > > > > I run git bisect and it found commit which broke this P2020 board: > > > > > > > > be7dbb60c5bfa38ea444fe7de1dca8bd35f83f5b is the first bad commit > > > > commit be7dbb60c5bfa38ea444fe7de1dca8bd35f83f5b > > > > Author: Tom Rini <tr...@konsulko.com> > > > > Date: Sun Dec 12 22:12:30 2021 -0500 > > > > > > > > Convert CONFIG_SYS_IMMR to Kconfig > > > > > > > > This converts the following to Kconfig: > > > > CONFIG_SYS_IMMR > > > > > > > > We do this by consolidating the SYS_IMMR options we have and > > > > providing > > > > defaults. > > > > > > > > We also, in the few places where M68K was also sharing code with > > > > these > > > > platforms, define it within the file to CONFIG_SYS_MBAR to match > > > > usage. > > > > This should be cleaned up longer term. > > > > > > > > Signed-off-by: Tom Rini <tr...@konsulko.com> > > > > > > > > :040000 040000 12f819284e85d64b7df5da65476038a542e587f5 > > > > ea3da4aefeee93f1566be6b7f85a43846f29aa8b M arch > > > > :040000 040000 afe083b1f22b57470532d2a2c3c37b6a5d4a68d4 > > > > 302d04810c9449622ce43982f562d2e8400086ec M configs > > > > :040000 040000 411b7912fc83c8aaf25adf5647400625793cee38 > > > > 0eff4a6f6e7b5f21bc3d533e1c5bc1cd2a5ed86b M drivers > > > > :040000 040000 b7d8b45f803b3619f76be355193d5c5645e76782 > > > > be2ac1c8506e99d1f9c615ad09477884f5ce1231 M include > > > > > > > > So it is relatively new change (Dec 2021). > > > > > > > > Tom, any idea how this commit could broke P2020 board which is mpc85xx > > > > platform? I do not see nothing suspicious in this commit. Before this > > > > commit BootROM can successfully boot SPL without any issues and SPL > > > > prints info on UART. This board use include/configs/p1_p2_rdb_pc.h > > > > config file and it was not touched at all. > > > > > > > > Priyanka, Wolfgang, you are marked as maintainers, do you know how to > > > > debug this issue? Or do you have some P2020 board or other mpc85xx > > > > based, so you could test if U-Boot is working on this platform? > > > > > > > > > > > > For reference I built U-Boot SPL by these commands: > > > > > > > > make CROSS_COMPILE=powerpc-linux-gnuspe- P2020RDB-PC_SDCARD_defconfig > > > > spl/u-boot-spl.bin > > > > boot_format config_sram_p2020rdb.dat spl/u-boot-spl.bin -spi > > > > u-boot.sdcard.bin > > > > > > > > boot_format and config_sram_p2020rdb.dat are taken from the upstream git > > > > repo from the latest branch nxp/sdk-v2.0.x: > > > > https://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/boot-format > > > > > > > > u-boot.sdcard.bin is then copied to SD card (starting from sector zero). > > > > > > The likely answer is that one of the sets of games PowerPC platforms > > > play so that "SPL", "TPL" and regular U-Boot to do redefine some symbols > > > / base addresses didn't get migrated correctly. Or, re-reading that > > > commit, maybe what I had worked out wasn't right, and > > > CONFIG_SYS_IMMR=0xff700000 is wrong? > > > > In include/mpc85xx.h you removed code: > > > > -#ifndef CONFIG_SYS_IMMR > > -#define CONFIG_SYS_IMMR CONFIG_SYS_CCSRBAR > > -#endif > > > > And in include/configs/p1_p2_rdb_pc.h is: > > > > #define CONFIG_SYS_CCSRBAR 0xffe00000 > > > > So it looks like that CONFIG_SYS_IMMR needs to be set to 0xffe00000 > > value. I'm going to test this change. > > Yes, changing it to 0xffe00000 fixed this issue and SPL started printing > on UART again. > > Here are config files which sets custom CONFIG_SYS_CCSRBAR value: > > $ git grep '#define\s*CONFIG_SYS_CCSRBAR\s' include/ > include/configs/MPC8540ADS.h:#define CONFIG_SYS_CCSRBAR 0xe0000000 > include/configs/MPC8548CDS.h:#define CONFIG_SYS_CCSRBAR 0xe0000000 > include/configs/MPC8560ADS.h:#define CONFIG_SYS_CCSRBAR 0xe0000000 > include/configs/P1010RDB.h:#define CONFIG_SYS_CCSRBAR > 0xffe00000 > include/configs/p1_p2_rdb_pc.h:#define CONFIG_SYS_CCSRBAR > 0xffe00000 > include/configs/qemu-ppce500.h:#define CONFIG_SYS_CCSRBAR > 0xe0000000 > include/configs/socrates.h:#define CONFIG_SYS_CCSRBAR 0xE0000000 > include/mpc85xx.h:#define CONFIG_SYS_CCSRBAR > CONFIG_SYS_CCSRBAR_DEFAULT > > And this should be reflected into CONFIG_SYS_IMMR as it looks like that > all above config files are MPC85xx platforms.
Ah, OK, so what happened was that what I had been doing to check for unmigrated symbols missed this one as we have SYS_CCSRBAR_DEFAULT in Kconfig but not SYS_CCSRBAR. I'll post something to fix these platforms shortly, thanks! -- Tom
signature.asc
Description: PGP signature