etherboot
Adam Agnew
agnew at cs.umd.edu
Thu May 15 15:27:00 CEST 2003
> Adam can you do a short writeup on building etherboot 5.0.x apply your
> patches and then the process above? I'll make 2 different sections in
> my FAQ/HOWTO) one for each etherboot version.
Certainly. See the attached diff, feel free to edit.
Also, did you decide on a permanent format? I don't mind getting better at
latex if that could be of assistance to you.
- Adam A.
-----------------
Adam Agnew
Independent Contractor
www.adamagnew.com
-------------- next part --------------
248a249,314
> For Ver 5.0.6
>
> The Config file is already correct for most instances.
> Note that -DPCBIOS is NOT set and -DLINUXBIOS -DCONFIG_TSC_CURRTICKS -DCONSOLE_SERIAL -DCOMCONSOLE=0x3f8
> -DCOMPRESERVE -DCONFIG_PCI_DIRECT -DELF_IMAGE and -DPOLLED_IDE are.
>
> You will want to modify the top of polled_ide.h to specify where to find your kernel. The default is
> "(hd0,0)/kernel" (uses grub naming scheme)
>
> If you're using compact flash on an IDE adapter to boot (this is common for people using LinuxBIOS for
> embedded applications) then you'll also want to remove the delay on line 22 of polled_ide.c so
> etherboot does not wait for a hard drive to spin up to operational speed when the hard drive is
> actually instant-on compact flash!
>
> You then select an ethernet device as a back up if booting off of ide fails. For this example, we'll
> assume your board has the sis900. You then run "make bin32/sis900.ebi". bin32/sis900.ebi will now be
> your LinuxBIOS payload!
>
> Now modify your linuxbios config file to include:
>
> option USE_ELF_BOOT=1
> option PAYLOAD_SIZE=<size of you etherboot payload>
> payload /path/to/your/etherboot/driver
>
> You also need an input stream for the elfboot code to read from
> so you must set one (or more?) of the following options.
>
> USE_GENERIC_ROM=1
>
> <What are all the other stream options?>
>
> Now you need to create an elf kernel for the ether boot code to find.
> Go fetch the mkelfimage command at
>
> ftp://ftp.lnxi.com/pub/src/mkelfImage/
>
> Generally the latest one is better. Note that there are several older versions
> of binutils that are broken and mkelfimage will expose those bugs. Insure that
> you are running a recient copy of binutils. The following shows the version
> output from a known working bintuils.
>
> # as --version
> GNU assembler 2.13.90.0.10 20021010 Debian GNU/Linux
>
> Now compile mkelfimage. Which should be as easy as ./configure, make, make install
>
> You can now create a elf kernel.
>
> Change to the directory where the image file for you kernel is. Normally this is
> somewhere in the kernel tree. In my case this is is arch/i386/boot and the kernel
> image is bzImage.
>
> By defaut mkelfimage is installed in /usr/local/sbin so you would do
>
> /usr/local/sbin/mkelfimage bzImage elfimage
>
> Now you have your kernel elfized in the file 'elfimage'
>
> mkelfimage support several options for adding commandlines and initrd's to the kernel image
> type 'mkelfimage' without any arguments for the details.
>
> Now take that file 'elfimage' and copy it to the destination you gave etherboot (remember
> "(hd0,0)/kernel"?) Etherboot 5.0.6 with the polled ide/file system patch can find your file on vfat,
> ext2, or ext3 formatted partitions!
>
>
269,272d334
< For Ver 5.0.x:
<
< <Someone needs to fill in the info for the earlier version>
<
595c657
<
\ No newline at end of file
---
>
More information about the coreboot
mailing list