Lots and Lots of changes. Mainly bugfixes for the supermicro p4dc6,
and a bunch of generic changes.
- Started playing with automatic scanning memory for LinuxBIOS tables.
- Converted the fill_inbuf drivers to stream drivers. This allows
for pure data copying operations to be faster, and it allows skipping
of unneeded data on platforms that support it.
- Added a section .rodata.streams for the stream driver control structures.
This is preparation for building a bootloader that shares source code
- Added a driver command to NLBConfig.py for objects that should
always be linked into LinuxBIOS if they are compiled at all.
- Moved the boot_successful logic down into the guts of the
- Modified the ip style checksum logic so it isn't specific to uniform
- Added a function ndelay that uses the RTC (this is i786 specific for now).
- Added a function to delay in seconds for the braindead harddrive
- Added a floppy stream driver.
- Added a ide stream driver.
- Broke out the ram initialization for the p4dc6 into multiple c files.
- Stupidly adapted linuxbiosmain and do_inflate to the new stream
interface. get_byte is now a slow function call so it might be able
to use some optimization.
- Updated the ELF bootloader to the new stream interface and adding a
ELF header scanning function so we can boot off of harddrives and
not smash their partition tables.
- Removed some bogus unlook ahead code from inflate.c
- Fixed a problem where we did not enable I/O resources on VGA
compatible chips. This caused a trident card to lock up the system
when it's memory mapped resources were enabled.
- Correctly set up nested pci busses. Before this a pci bus behind a
pci bus would not get enabled.
- Config changes to the p4dc6
- Added more interrupt sources to the p4dc6 interrupt table
- Converted all of the inbuf drivers to stream drivers.
All have good conversions except the doc_millenium.