[U-Boot] BUG num banks 8 exceeds hardcoded limit 4

Hi Lukasz / Minkyu,
Today I wanted to test the latest u-boot on my Odroid-XU4 and I landed onto this bug and it failed to boot up.
include/configs/odroid.h:#define CONFIG_NR_DRAM_BANKS 8 include/configs/odroid_xu3.h:#define CONFIG_NR_DRAM_BANKS 8
seem to the the issue.
Well I have some local changes to enable MMC on u-boot and reset the mmc regulators on. which might not be related to this bug.
U-Boot 2018.09-rc1-00165-ge966471562-dirty (Aug 09 2018 - 06:29:02 +0000) for ODROID-XU3/XU4/HC1
CPU: Exynos5422 @ 800 MHz Model: Odroid XU3 based on EXYNOS5422 Board: Odroid XU3 based on EXYNOS5422 Type: xu4 DRAM: 2 GiB LDO18@vdd_emmc_1V8: set 1800000 uV; enabling LDO3@vddq_mmc0: set 1800000 uV; enabling LDO13@vddq_mmc2: set 2800000 uV; enabling LDO19@vdd_sd: set 2800000 uV; enabling MMC: EXYNOS DWMMC: 0, EXYNOS DWMMC: 2 Loading Environment from MMC... Card did not respond to voltage select! *** Warning - No block device, using default environment
Failed (-5) In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 MMC Device 1 not found no mmc device at slot 1 Card did not respond to voltage select! switch to partitions #0, OK mmc2 is current device Scanning mmc 2:1... Found U-Boot script /boot.scr 3266 bytes read in 6 ms (531.3 KiB/s) ## Executing script at 50000000 Found kernel image: zImage 57082 bytes read in 8 ms (6.8 MiB/s) Found ramdisk image. 6484525 bytes read in 425 ms (14.6 MiB/s) 6713264 bytes read in 441 ms (14.5 MiB/s) Kernel image @ 0x40007fc0 [ 0x000000 - 0x666fb0 ] ## Loading init Ramdisk from Legacy Image at 42000000 ... Image Name: uInitrd Image Type: ARM Linux RAMDisk Image (uncompressed) Data Size: 6484461 Bytes = 6.2 MiB Load Address: 00000000 Entry Point: 00000000 Verifying Checksum ... OK ## Flattened Device Tree blob at 40800000 Booting using the fdt blob at 0x40800000 Loading Ramdisk to 4f9d0000, end 4ffff1ed ... OK Loading Device Tree to 4f9bf000, end 4f9cfef9 ... OK fdt_fixup_memory_banks: num banks 8 exceeds hardcoded limit 4. Recompile with higher MEMORY_BANKS_MAX? ERROR: arch-specific fdt fixup failed - must RESET the board to recover.
FDT creation failed! hanging...### ERROR ### Please RESET the board ###
Best Regards -Anand

Hi Anand,
Hi Lukasz / Minkyu,
Today I wanted to test the latest u-boot on my Odroid-XU4 and I landed onto this bug and it failed to boot up.
include/configs/odroid.h:#define CONFIG_NR_DRAM_BANKS 8 include/configs/odroid_xu3.h:#define CONFIG_NR_DRAM_BANKS 8
seem to the the issue.
Are you sure that you ran the code recently?
According to git blame: 973ae1e0858d3 (Przemyslaw Marczak 2015-02-17 14:50:26 +0100 22) #define CONFIG_NR_DRAM_BANKS 8
This change is quite old...
Which u-boot version have you ran till now?
Well I have some local changes to enable MMC on u-boot and reset the mmc regulators on. which might not be related to this bug.
U-Boot 2018.09-rc1-00165-ge966471562-dirty (Aug 09 2018 - 06:29:02 +0000) for ODROID-XU3/XU4/HC1
CPU: Exynos5422 @ 800 MHz Model: Odroid XU3 based on EXYNOS5422 Board: Odroid XU3 based on EXYNOS5422 Type: xu4 DRAM: 2 GiB LDO18@vdd_emmc_1V8: set 1800000 uV; enabling LDO3@vddq_mmc0: set 1800000 uV; enabling LDO13@vddq_mmc2: set 2800000 uV; enabling LDO19@vdd_sd: set 2800000 uV; enabling MMC: EXYNOS DWMMC: 0, EXYNOS DWMMC: 2 Loading Environment from MMC... Card did not respond to voltage select! *** Warning - No block device, using default environment
Failed (-5) In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 MMC Device 1 not found no mmc device at slot 1 Card did not respond to voltage select! switch to partitions #0, OK mmc2 is current device Scanning mmc 2:1... Found U-Boot script /boot.scr 3266 bytes read in 6 ms (531.3 KiB/s) ## Executing script at 50000000 Found kernel image: zImage 57082 bytes read in 8 ms (6.8 MiB/s) Found ramdisk image. 6484525 bytes read in 425 ms (14.6 MiB/s) 6713264 bytes read in 441 ms (14.5 MiB/s) Kernel image @ 0x40007fc0 [ 0x000000 - 0x666fb0 ] ## Loading init Ramdisk from Legacy Image at 42000000 ... Image Name: uInitrd Image Type: ARM Linux RAMDisk Image (uncompressed) Data Size: 6484461 Bytes = 6.2 MiB Load Address: 00000000 Entry Point: 00000000 Verifying Checksum ... OK ## Flattened Device Tree blob at 40800000 Booting using the fdt blob at 0x40800000 Loading Ramdisk to 4f9d0000, end 4ffff1ed ... OK Loading Device Tree to 4f9bf000, end 4f9cfef9 ... OK fdt_fixup_memory_banks: num banks 8 exceeds hardcoded limit 4. Recompile with higher MEMORY_BANKS_MAX? ERROR: arch-specific fdt fixup failed
- must RESET the board to recover.
FDT creation failed! hanging...### ERROR ### Please RESET the board ###
Best Regards -Anand
Best regards,
Lukasz Majewski
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de

Adding Simon.
On Sat, Aug 11, 2018 at 2:54 PM Lukasz Majewski lukma@denx.de wrote:
Hi Anand,
Hi Lukasz / Minkyu,
Today I wanted to test the latest u-boot on my Odroid-XU4 and I landed onto this bug and it failed to boot up.
include/configs/odroid.h:#define CONFIG_NR_DRAM_BANKS 8 include/configs/odroid_xu3.h:#define CONFIG_NR_DRAM_BANKS 8
seem to the the issue.
The issue is my new patch: https://patchwork.ozlabs.org/patch/947431/ Temporarily you adjust MEMORY_BANKS_MAX in common/fdt_support.c I have a suggestion on how to fix it for all boards, waiting for Simon to respond. Thanks, Ramon.
Are you sure that you ran the code recently?
According to git blame: 973ae1e0858d3 (Przemyslaw Marczak 2015-02-17 14:50:26 +0100 22) #define CONFIG_NR_DRAM_BANKS 8
This change is quite old...
Which u-boot version have you ran till now?
Well I have some local changes to enable MMC on u-boot and reset the mmc regulators on. which might not be related to this bug.
U-Boot 2018.09-rc1-00165-ge966471562-dirty (Aug 09 2018 - 06:29:02 +0000) for ODROID-XU3/XU4/HC1
CPU: Exynos5422 @ 800 MHz Model: Odroid XU3 based on EXYNOS5422 Board: Odroid XU3 based on EXYNOS5422 Type: xu4 DRAM: 2 GiB LDO18@vdd_emmc_1V8: set 1800000 uV; enabling LDO3@vddq_mmc0: set 1800000 uV; enabling LDO13@vddq_mmc2: set 2800000 uV; enabling LDO19@vdd_sd: set 2800000 uV; enabling MMC: EXYNOS DWMMC: 0, EXYNOS DWMMC: 2 Loading Environment from MMC... Card did not respond to voltage select! *** Warning - No block device, using default environment
Failed (-5) In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 MMC Device 1 not found no mmc device at slot 1 Card did not respond to voltage select! switch to partitions #0, OK mmc2 is current device Scanning mmc 2:1... Found U-Boot script /boot.scr 3266 bytes read in 6 ms (531.3 KiB/s) ## Executing script at 50000000 Found kernel image: zImage 57082 bytes read in 8 ms (6.8 MiB/s) Found ramdisk image. 6484525 bytes read in 425 ms (14.6 MiB/s) 6713264 bytes read in 441 ms (14.5 MiB/s) Kernel image @ 0x40007fc0 [ 0x000000 - 0x666fb0 ] ## Loading init Ramdisk from Legacy Image at 42000000 ... Image Name: uInitrd Image Type: ARM Linux RAMDisk Image (uncompressed) Data Size: 6484461 Bytes = 6.2 MiB Load Address: 00000000 Entry Point: 00000000 Verifying Checksum ... OK ## Flattened Device Tree blob at 40800000 Booting using the fdt blob at 0x40800000 Loading Ramdisk to 4f9d0000, end 4ffff1ed ... OK Loading Device Tree to 4f9bf000, end 4f9cfef9 ... OK fdt_fixup_memory_banks: num banks 8 exceeds hardcoded limit 4. Recompile with higher MEMORY_BANKS_MAX? ERROR: arch-specific fdt fixup failed
- must RESET the board to recover.
FDT creation failed! hanging...### ERROR ### Please RESET the board ###
Best Regards -Anand
Best regards,
Lukasz Majewski
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot

Hi Lukasz and Ramon.
On Sun, 12 Aug 2018 at 13:21, Ramon Fried ramon.fried@gmail.com wrote:
Adding Simon.
On Sat, Aug 11, 2018 at 2:54 PM Lukasz Majewski lukma@denx.de wrote:
Hi Anand,
Hi Lukasz / Minkyu,
Today I wanted to test the latest u-boot on my Odroid-XU4 and I landed onto this bug and it failed to boot up.
include/configs/odroid.h:#define CONFIG_NR_DRAM_BANKS 8 include/configs/odroid_xu3.h:#define CONFIG_NR_DRAM_BANKS 8
seem to the the issue.
The issue is my new patch: https://patchwork.ozlabs.org/patch/947431/ Temporarily you adjust MEMORY_BANKS_MAX in common/fdt_support.c I have a suggestion on how to fix it for all boards, waiting for Simon to respond. Thanks, Ramon.
This issue is related to number of sub nodes in memory node. Odroid XU3 / XU4
https://github.com/u-boot/u-boot/blob/master/arch/arm/dts/exynos5422-odroidx...
But this can be fix by using mainline memory node. https://github.com/torvalds/linux/blob/master/arch/arm/boot/dts/exynos5422-o...
Are you sure that you ran the code recently?
According to git blame: 973ae1e0858d3 (Przemyslaw Marczak 2015-02-17 14:50:26 +0100 22) #define CONFIG_NR_DRAM_BANKS 8
This change is quite old...
Which u-boot version have you ran till now?
I am using the mainline u-boot for now to test new feature.
Best Regards -Anand
participants (3)
-
Anand Moon
-
Lukasz Majewski
-
Ramon Fried