Closed kwizart closed 5 years ago
Interesting that it's still showing 0x35000000 in the error message. A quick grep of the source code shows that only PXE boot is actually using ramdisk_addr_r. Perhaps try setting initrd_high to the top of the 0x40000000 bank of RAM (0x4ffffff)? This is based off of common/image.c (where you can turn on some debugging as well).
Edit: It appears that none of the *_addr_r are really used outside of PXE... I wonder if I'm just reading the source code wrong. It might be worthwhile checking and seeing if the environment was properly overwritten or if it was still trying to use the old 0x35000000 address
I've managed to create a lighter initramfs (< 16M) and it worked with 0x40000000\0) I will try with initrd_high later.
But then I cannot switch_root from initramfs, I have: "A start job in running for /dev/mmcblk2p1" (whereas I can see the partition detected from the kernel log early) Using the uImage from the ubi partition on the same rootfs works as appropriate (same bootargs, as I've converted my root=UUID to the previous "hardcoded bootargs from dts".
Using a ramdisk is mandatory to enable support for sysboot (extlinux). But I'm unable to find a good address. Last attempt is with:
ramdisk_addr_r=0x40000000\0"
But then I have the following message as shown by https://pasteboard.co/I0Pasyy.jpg Failed to allocate 0x35607db bytes bellow 0x35000000. ramdisk - allocation error
All components are loaded as appropriate and ramdisk size is 55969755 bytes. I will try to reduce the size of the ramdisk and try to reproduce. (but default fedora ramdisk will likely be that huge).