- Code to initialize sdram from C on the l440gx
- cache as ram code fro the p6 it works except conflict misses occur
with addresses that are not cached so writing to ram does not work.
Which makes it to brittle to count on.
- Initial implementation of a fallback booting scheme where we can
have two copies of linuxbios in rom at once.
- Movement of 32 bit entry code from entry16.inc to entry32.inc
- Update of all config files so they now also include entry32.inc
- Fix for start_stop.c & entry16.inc so I can fairly arbitrarily relocate
the 16bit entry code in SMP.
- A small number of fixes for warnings
This also includes a bunch of my pending work including
- Updated serial code so we can compile in different serial port speeds
- Updates to the build system so that:
- Makefile.settings holds all of the settings of the config variables
- ldoptions and cpuflags are generated automatically with perl scripts
- src/config/Config holds all of the architecture neutral make file settings
- Initial work on the P4 including how to use cache as ram
- Update to the ioapic code for the P4 because it delivers irqs on the system
bus instead of an out of band bus
- Updated version of printf that doesn't need an intermediate buffer
- logbuf_subr now handles the case when we want to use a log buffer
- video_subr handles the preliminary code for writing to a video device.
- Pending changes for the L440GX are merged in as well (hopefully I haven't
messed then up since they were written).
- Add IMB to the palcode in start.inc
- Reduce the heap to only 128K in alpha/ldscript.base
- In elfboot add checks to make certain we don't overwrite linuxBIOS...
newpci.c has some new functions. asus config is fixed for i386 stuff.
NLBconfig has a new command (nsuperio) and will take arch, mainboard, or
target as the first command. sis 950 superio has changes for the new
superio model
First, grow heap size in src/arch/i386/config/ldscript.base for DoC
Minor include fixes
Fixes to cua -- but it's now broken, won't find IDE
Minor fix to util/config/NLBConfig.py: for docipl, use CFLAGS
Added files so that CUA works with config tool.
Added set_initrd() to params.h and params.c.
Added PRINTK macro and KERN_SPEW to printk.h.
Changed fill_inbuf.c to accept zkernel_start and zknernel_mask as
variables that can be set by linuxbiosmain().
Changed linuxbiosmain() to allow custom code to modify some parameters
such as where the kernel image is located in ROM, the initrd parameters
and the command line.
Change most of the DBG's in newpci.c to PRINTK(KERN_SPEW... This was
the worst offender when DEBUG was defined. Some of it was changed to
KERN_DEBUG.
There are no new files this time, however,
freebios-010214.orig/src/superio/SMC/fdc37n769/superio.inc
remains and needs to be deleted and then 'cvs rm'.
None of these changes should break any other code. The same
ZKERNEL_START, ZKERNEL_MASK and CMD_LINE defines are still used, but
are now all used in linuxbiosmain() and used to initialize variables
that can later be changed rather than used directly.
These changes allow me to choose between two kernel images, optionally
use an initrd image, load the initrd image and set the kernel command
line as needed.