[Etherboot-developers] Etherboot works again!
Brought to you by:
marty_connor,
stefanhajnoczi
|
From: Eric W B. <ebi...@ln...> - 2002-08-14 06:11:42
|
After a torturous debugging cycle, I have etherboot working again under the pcbios. The build is much more modular, and genrules.pl in particular is now much simpler. Both etherboot ELF images, and PXE images are standard prefixes now so they do not need special cases in genrules.pl. loader.S is now a readable file of 230 lines! IMPORTANT - Do not use compressed images - Do not use relocation UNTIL - The driver you want to use has had been fixed. Except for ROM chips there are essentially no etherboot size limitations, and the code is now mostly PIC throughout. It will only run at RELOCADDR iff the code is not compressed, and you do not use relocation. I have moved the decompressor to 32bit code made it PIC and called it unhuf.S. This has increased it's size by about 200 bytes. Plus the code to switch to protected mode is another extra 100 bytes. So there is some significant size growth in the uncompressed code. The long term removal of size restrictions make this a path worth going down. There is a very good decompressor fix. Grab the decompressor out of upx. The decompressor is roughly 200 bytes, and the it compresses etherboot better than lzhuf does as well. So once I get the code untangled upx code adapted we will get a small overhead reduction in the 5.1.x tree over the 5.0 tree. My 5.1.x todo list looks like: - Finish boot from disk support. - Get a multicast test server. - Generate the list of NIC from a special section in the etherboot image so config.c only needs to be compiled once. - Remove the redundancy of having both eth_reset && eth_disable. - And finally update the drivers after the core has settled down. Have fun at Linux World. Eric |