Hi,
it looks as if I might have to jump in and hold a 30 minute speech about LinuxBIOS at a conference here in Stockholm since the original speaker can't make it. I have about a week to prepare. *panics*
The information I have about this so far is:
Target audience: Hardware designers, driver programmers, kernel programmers but also people interested in faster startup times in their embedded systems.
(possible) things to talk about:
- What is a BIOS and especially, LinuxBIOS?
- What are the main benefits in using LinuxBIOS?
- What chipsets are supported by LinuxBIOS today?
- How does the Linux boot system work?
- How does a common x86-based board work?
- How does the initialization sequence work.
- What are the steps involved in creating a LinuxBIOS for this board?
Points that I do need help with are:
- What is a BIOS and especially, LinuxBIOS?
I think I need a short introduction to LinuxBIOS and also a short history of where it came from.
- What are the main benefits in using LinuxBIOS?
Maybe the rationale behind writing LinuxBIOS at all.
- What are the pros and cons with LinuxBIOS?
Pros:
Faster bootup. Tiny code. Tailored to the hardware. Written in C and uses 32 bit mode. Less buggy. Portable (in theory) across architectures so that x86 and Alpha can boot the same way.
Cons:
Not as flexible as a normal BIOS. Requires hardware and chipset documentation, it's hard to keep up with the hardware development.. Hard to handle PCI cards with expansion ROMs on them that expect a standard PC BIOS.
- What chipsets are supported by LinuxBIOS today?
Is there a list of supported chipsets?
- How does the Linux boot system work?
- How does a common x86-based board work?
- How does the initialization sequence work.
These I think I have a rather good handle on.
- What are the steps involved in creating a LinuxBIOS for this
board?
I can take the SC2200 port I did as an example here.
By the way, one thing I'm not sure about, what is actually stored in the LinuxBIOS table? As far as I can tell right now the only thing there is the amount of memory in the system and the kernel command line. Is there anything else? (The PIRQ table is stored in the BIOS image itself if I understand correctly).
Is there anything else missing from the list that I should talk about?
Any help would be appreciated.
/Christer