Peter Stuge wrote:
Etherboot was initially developed as a bootrom project targeted at boot ROMs on networking cards. Etherboot has turned out to be very usable for other purposes as well, such as LinuxBIOS. :)
Things are becoming clearer now. I remembered the site http://www.rom-o-matic.net from the days I fiddled around with LTSP (Linux Terminal Server Project).
Am I right with those assumtions: 1. I decided to use a Gigabit GA-6BXC board. They cost no more than 5,- Euro + 50,- Euro for a Pentium III 1GHz Slot 1 + few Euro for cheap SD-RAM. Thats perfect and has enough PCI slots. If the PVR-350 framebuffer makes trouble I have the Option to buy another 5,- Euro ATI Rage XL AGP card and use this. 2. I follow the documentation in freebios/Documentation/configmanual.ps and create a build dir 3. do the config and run "make" 4. Create an ELF-image on rom-o-matic.net fitting my NIC 5. Combining the ELF-image with the LinuxBIOS bootloader 6. Create an EEPROM image somehow 7. Buying an EEPROM fitting the mainboard BIOS socket and find someone who can burn the image to a chip 8. Inserting the chip into the BIOS socket. Boot. Done. 9. The Etherboot will contact my LTSP-server via DHCP/tftp. That's the part I'm familiar with.
Is this correct? I don't have any clue how steps 5 and 6 will work. Can you please point me to any document or give me some keyword?
By the way: I've already tried to compile the GA-6BXC bootloader, but make ended with:
gcc -nostdlib -r -o linuxbios_c.o c_start.o linuxbios.a /usr/lib/gcc-lib/i486-linux/3.3.3/libgcc.a gcc -nostdlib -nostartfiles -static -o linuxbios_c -T /home/jochen/linuxbios/freebios/src/config/linuxbios_c.ld linuxbios_c.o linuxbios_c.o(.text+0x61f): In function `mainboard_fixup': : undefined reference to `pci_zero_irq_settings' collect2: ld returned 1 exit status make: *** [linuxbios_c] Error 1
The string "pci_zero_irq_settings" does not appear in the Linux Kernel headers nor in any file of the freebios tree except the function call that the linker complains about. It is in src/mainboard/gigabit/ga-6bxc/mainboard.c, so board-specific. Any idea?
Hope this helps! (Oh, and feel free to edit this short writeup and put it on the web somewhere to serve as some kind of status report..)
Yeah, it did. We are not done, but my understanding for this whole matter grows. Unfortunately my website is in German, but as soon as I bought the hardware and start fiddling I will compile some kind of HOWTO or report. The problem is just that all documentation available is aimed to BIOS hackers. I know C a bit, can read it quite well and I am able to compile OSS-software or the kernel, but when it comes to unresolved symbols, Makefiles or assembly language, I'm out.
Thanks so far, best regards Jochen