try again.

OK, following Eric' suggestion, let's start with a list.

Each item on the list is marked as M (mandatory), R (recommended),
O (optional), A (architecture dependent, not needed on all systems),
C (chipset dependent)

Assembly startup:
M       Reset jump to start of LinuxBIOS
M       Ensure CPU is in sane state (e.g. Purge I Pipeline, etc.)
A       Put CPU into protected virtual memory mode
O       Enable serial port debugging print
O       Enable debugging prints to console graphics
O       Memory test
M       Set up C environment
M       Jump to C code

Hardware startup:
A       Configure Cache. Needed here for speed.
A       Processor-dependent steps that are required, e.g. microcode patch
M       Init C display variables. Required before printk()
M       Init malloc memory pool
O       Display processor internal details of value (e.g. intel cpuid)
O       Pick a PCI method if you need to init PCI
M       Size memory so you can tell Linux
A       Re-config the cache so that it caches all or memory
O       Configure PCI bus
A       Mainboard fixup
C       enabled extended NVRAM access
A       Handle extended machine state (e.g. MTRR)
C       Enable keyboard
C       Enable floppy
A       Enable tables that Linux uses on startup (e.g. SMPBLOCK)
M       Set up IRQ tables for Linux
R       Enable interrupts
O       Final Mainboard Fixup
A       Final  L2 Configure
M       Call non-hardware-dependent linuxbiosmain()

Kernel startup:
O       Banner
M       gunzip setup
M       gunzip
M       Linux parameter setup
(mistake! move me!)      APIC setup
M       Jump to Linux


-----



Reply via email to