RE: [U-Boot-Users] Booting kernel with initrd

Make a uImage from bootpImage instead of zImage so you won't need separate files for kernel and compressed ram disk image. Bootm automatically detects ram disk and passes its address to kernel through ATAG. Of course you need fatload to load this uImage to RAM first.
Regards, Jian
-----Original Message----- From: u-boot-users-admin@lists.sourceforge.net [mailto:u-boot-users- admin@lists.sourceforge.net] On Behalf Of Rainer Brestan (VI/SEA) Sent: Wednesday, September 01, 2004 2:53 AM To: 'U-Boot-Users@lists.sourceforge.net' Cc: 'wd@denx.de' Subject: RE: [U-Boot-Users] Booting kernel with initrd
Seems to be misunderstood.
I dont want to create the root filesystem on FAT. I want to have it like the configuration with loadlin, where you have
the
four files on the FAT filesystem, the kernel, the initrd image, the
root
filesystem image (ext2) and a swap image. When the kernel boots the initrd, this mounts the root filesystem through the loopback device (root=/dev/loop0), this is described various times on the net.
I have read the manuals about uboot i have found (DLUG).
The bootm command describes how the images (kernel and initrd) are processed, when they are in flash and copied out in memeory. But that
not
what i need in this case. They must be loaded from filesystem into
RAM. It
makes no sense to load the images into RAM with another command and
then
run bootm, which copies them from one position in RAM to another.
The reply from fumin showed a way to do this. Looking at the kernel
source
for the parameter parsing for initrd parameter assumes initrd=0x00800000,16M to be correct (first start address and then
size). I
dont understood your reply.
u can load image to 0x00800000 and type command to set bootargs
like
below:
setenv bootargs root=/dev/ram0 mem=128M initrd=0x00800000,16M
This is only needed for broken (Linux) ports. Normally U-Boot will directly pass the ramdisk address top the Linux kernel.
Maybe i have completly misunderstood something, but for me the boot sequency is to load the kernel from filesystem (probable fatload, but where is the documentation for that command), then the initrd, and
then
starting the kernel with go with bootargs set to root=/dev/loop0 initrd=start,size.
Is this wrong ? Should i use other commands ? Should i use another way to get the kernel and initrd from FAT
filesystem
?
Regards, Rainer
This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047&alloc_id=10808&op=click _______________________________________________ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
participants (1)
-
Zhang, Jian