"Larry G. Linde" wrote:
>
> There are only a couple of changes to stage1. That which is required to be
> there. Such as:
>
> The memory sizing code has been changed, The original code had a few
> problems.
I agree that ipl.S has some flaw in it. But man, you can only do this
in 512 Bytes !!!.
It seems that we really need a seperate DRAM sizing/timming code which
can be choosed at compile time.
> Memory gets passed to kernel.
Wht do you mean ?? We are doing this too.
> Most of stage 1 has been changed to protected mode only. No real mode.
AFAIK, the whole LinuxBIOS is in protected mode. That is the point of
LinuxBIOS from day 1.
> The pci enumeration is complete now.
> The irq routing table gets passed to the kernel now.
LinuxBIOS does the PCI enumeration too (as complete as it can be).
The only thing left is it does not specify IRQ but pass the irq table
to kernel instead.
> Keyboard stuff.
> Lots of irq setup stuff
This is the one I am most interested. You are handling all irq in
TIARA which means you have to setup all GDT, LDT, IDT etc, etc
correct.
> Enable access to full flash not just 64k.
>
I don't understand this one neither. At least for SiS 630 you can
access the whole flash. If you happened to have a 512KB one, you can
access all of it.
> I think it will merge back in ok, but it may not be as simple as you might
> think.
>
> Stage2 is quite different. It fully inits all the hw, display, 950, kbd/mse,
> disks, enet, nvram, rtc, everything.
>
I am quiet agree with Eric, we should put the neceressary part of stage1
back into LinuxBIOS and use his ELF loader to load stage2. As for
passing
information from stage1 to stage2, since stage2 is AN ELF EXECUTABLE,
why don't we use the usual main(argc, argv, envp) stuff ??
Ollie