I'm working on a custom developed Au1200 based board. I'm using the
U-Boot as bootloader, and the latest 2.6.30 Linux kernel.
To try my setup, I burned the U-Boot into the flash, and it gets the
kernel (to 0x81000000) and ramdisk image (to 0x81FFFFC0, its header is
0x40 bytes long) from a TFTP server. I'm using the:
as boot argument. When I call the U-Boot's
bootm 81000000 81FFFFC0
command to load the kernel, the bootloader successfully recognizes both
images, then starts the kernel. The kernel starts, but it can't find the
Initrd not found or empty
If I call the U-Boot as:
and manually set the command line parameters as:
root=/dev/ram rd_start=0x82000000 rd_size=0x191160
it runs perfectly.
As I saw, in the first case, the U-Boot pass the ramdisk parameters to
the kernel through environment variables (initrd_start and initrd_size).
But I couldn't find any code in the kernel side, which could process it.
It knows the memsize and ethaddr environment parameters (the U-Boot sets
them), but nor the initrd_start and initrd_size, and nor the flash_start
and flash_size. Is it true, or I'm blind?