Etherboot

From coreboot
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

The wiki is being retired!

Documentation is now handled by the same processes we use for code: Add something to the Documentation/ directory in the coreboot repo, and it will be rendered to https://doc.coreboot.org/. Contributions welcome!

The description in this article unfortunately does not work in newer versions of etherboot/gPXE. Please use iPXE or go to rom-o-matic for now. Any updates to this article are welcome.

Download and Build

Download Etherboot --- Please use 5.2.6 and gcc 3.2.2

Config changes needed for coreboot support

src/arch/i386/Config

   #CFLAGS+= -DPCBIOS
   CFLAGS+= -DCONFIG_X86_64
   CFLAGS+= -DLINUXBIOS -DCONFIG_TSC_CURRTICKS  -DCONSOLE_SERIAL -DCOMCONSOLE=0x3f8 -DCOMPRESERVE -DCONFIG_PCI_DIRECT -DELF_IMAGE
   #enable VGA
   CFLAGS+= -DCONSOLE_DIRECT_VGA

src/Config

   CFLAGS+= -DBOOT_FIRST=BOOT_NIC
   CFLAGS+= -DBOOT_SECOND=BOOT_DISK
   #enable FILO and Keyboard
   # for direct PC kbd support 
   CFLAGS+= -DCONSOLE_PC_KBD
   # for FILO support it will make main call pci_init
   CFLAGS+= -DCONFIG_FILO

src/filo/Config

change you command line as you like

   AUTOBOOT_FILE = "hda2:/boot/vmlinuz initrd=/boot/initrd pci=noacpi ro root=/dev/hda2 console=tty0 console=ttyS0,115200"

make

   cd src/
   make bin/tg3.zelf
   make bin/tg3--filo.zelf


Some input for boot or AUTOBOOT_FILE, please refer to README.filo_in_etherboot

   boot from BIOS ROM area
   4G-128K
   mem@0xfffe0000
   4G-512K
   mem@0xfff80000
   boot from suse
   hda2:/boot/vmlinuz initrd=/boot/initrd ro root=/dev/hda2 console=tty0 console=ttyS0,115200
   for suse install from CD
   hdc:/boot/loader/linux initrd=/boot/loader/initrd ramdisk_size=65536 splash=silent showopts console=tty0 console=ttyS0,115200
   boot from RH
   for RH install from CD
   hdc:/isolinux/vmlinuz initrd=/isolinux/initrd.img expert nofb acpi=off devfs=nomount ramdisk_size=65536 console=ttyS0,115200
   for serial ATA support (using port1 and port2 only)
   1) if your kernel think SATA as SCSI
   hde2:/boot/vmlinuz initrd=/boot/initrd ro root=/dev/sda2 console=tty0 console=ttyS0,115200    
   2) if your kernel think SATA as normal IDE
   hde2:/boot/vmlinuz initrd=/boot/initrd ro root=/dev/hde2 console=tty0 console=ttyS0,115200
   for usb support
   uda1:/ram0_2.5_2.6.5_k8.2_mydisk7.elf

NVRAM Parsing

  • TO BE DONE!