I am CCing the powerpc-discuss
First of all thanks Joerg for a nice summary.
Joerg Schilling wrote:
> I thought about our project and tried to find the essential tasks....
> please comment.
Yes, that is the list. I think we discussed it earlier ...
> Kernel Space / boot:
>
> - GRUB
GRUB2 works in it current state.
Needs to be augmented with UFS support from Legacy GRUB/Solaris x86.
GRUB2 network support for OpenFirmware limbo. Good thing is that GRUB2
community is actively working on it.
>
> - multiboot
The plans for PPC multiboot were recently discussed on GRUB2 mailing
list. Also good for us since we are not the only one consumer for this
feature.
>
> - Kernel Virtual memory layout
>
> - HAT layer
>
> - Interrupt handler
>
> - Exception handler
>
> - Syscall handler
>
> - krtld
All the above are quite a lot of work, but if we get help from the
SunLabs with the 2.5.1 sources we may march through this quite quickly.
>
> - minimal drivers
That is the part where we need _official_ documentation from Marvell.
Their chip is in the middle of the Pegasos and a lot of things require
exact knowledge of the chip to drive it correctly.
>
> User Space:
>
> - ld.so
Yeah, may be common in part with krtld.
>
> - mdb
Very important thing. In fact having a reliable debugger is
a most important thing, IMHO.
>
>
> I propose the following way:
>
> - Start with GRUB installed on Linux - Grub should support
> the needed filesystems
>
> - Write multiboot for PPC ----> What is needed here?
Dig GRUB2 ML archive - they have something.
>
> - Do not use a network boot (except for e.g. loading the boot archive)
> as this would create the need for a MAC driver.
We are in somewhat good shape here since one of the Ethernet interfaces
on Pegasos II is Realtek. So driver shouldn't be a problem. And, frankly
speaking, I am a big fun of network boot :)
>
> - For everything that needs HW access in the first attempt, use
> callbacks to the Openboot drivers. This is e.g. /dev/console
> and the HD driver.
console IO - yes, definitely. As for HD - I am not sure. As I said
I prefer to netboot until the HD driver chain is ready.
>
> - Use statically linked user space programs first
Looks like we'll simply _have_ to do it initially, until
ld.so.1 is here to take care of dynamic linking.
>
> Questions:
>
> - who has skills in what?
I can make pizzas. On the second thought it doesn't seem to
be relevant here ;) Kernel coding - that's where I can help
most.
Regards,
Cyril