Dear Kever,
I've tried the patch, and now U-Boot sees the whole 8G. It can boot
linux directly, that works now. Great!
Howewer, booting linux through grub-efi
(/boot/efi/EFI/debian/grubaa64.efi) does not work. Grub itself starts,
shows the menu, but booting linux stops. Booting from console looks
like:
grub> linux (hd0,gpt2)/boot/vmlinuz-5.15.32
grub> linux (hd0,gpt2)/boot/vmlinuz-5.15.32 root=/dev/mmcblk1p2
console=ttyS2,1500000 rootwait
grub> initrd (hd0,gpt2)/boot/initrd.img-5.15.32
grub> boot
EFI stub: Booting Linux Kernel...
EFI stub: Using DTB from configuration table
EFI stub: Exiting boot services...
These are the last lines. I see no sign of the kernel booting. For
example, ethernet leds are not turned on.
This u-boot+efi setup works on other boards, and also it worked before
the patch, with 1G visible ram only.
Thanks in advance,
Richard
2022-04-09 06:56 időpontban Richard Kojedzinszky ezt írta:
Hi Kever,
Thanks for your reply! I greatly appreciate your work, really.
Additionally, can you please provide me sources of documentations, on
which you base your work? I am totally blind in this area, and I would
be interested in reading such kind of documentation of the SoCs.
Many thanks,
Richard
2022-04-09 04:28 időpontban Kever Yang ezt írta:
Hi Richard,
The ATAGs to pass the parameters is not available on the mainline
U-Boot, and only use os_regs for the ram size for now, it do have the
limitation for max 4GB now.
There is a fix for this on the list, you can try it:
https://patchwork.ozlabs.org/project/uboot/patch/20220222013131.3114990-12-pgwipe...@gmail.com/
Thanks,
- Kever
On 2022/4/8 15:44, Richard Kojedzinszky wrote:
Dear community,
I own a rock-pi-3a board with 8G ram. Right now, radxa's u-boot is
capable of detecting the whole amount during boot. Upstream u-boot
shows 1G of dram installed.
I've started with evb-rk3568_defconfig.
What I would like to achieve is that u-boot load grub-efi, to finally
boot the operating system. Howewer, with radxa uboot, and using
grub-efi, the kernel sees 4G only. If I boot the kernel image
directly from radxa u-boot, the whole 8G is visible. I assume that
efi is broken somehow, as I get multiple warnings from kernel
regarding EFI firmware.
Reading radxa's u-boot, it seems that it uses ATAGs do detect memory
size. Am I in the right way?
Would it be beneficial to port some of that code to upstream u-boot,
or are there other solutions to detect correct memory size?
Thanks in advance,
Richard