On Fri, Jan 06, 2006 at 03:28:21PM +0200, Cyril Plisko wrote:
> >
> > What is important is that the OF client interface is still active and can be
> > used from the client program (namely OpenSolaris here). This is the way the
> > linux kernel early startup does it, in his prom.c code, and the way both
> > yaboot and grub2 access the disk underneath.
> >
> > grub2 really only provides OF-like capabilities to hardware lacking such, 
> > and
> > in the OF implementation case, it mostly just passes down his read accesses 
> > to
> > the lower level.
> 
> What makes the GRUB2 so attractive is that it makes us independent from 
> ufsboot.

Indeed, i understand that. But if the pegasos OF had an ufs driver of the
level of the ufsboot one, this would also free you from the ufsboot thingy, no ?

> It fetches the ramdisk image into the memory and runs from there. Which let us

The OF has also the ability to load and execute elf binaries.

> have a working system even without ATA disk driver. the GRUB2  itself, indeed,
> uses the OF-client interface to access disk (or network [coming soon]).

Ah, grub2 has no network support yet.

> So I am not sure we need to invest in making ufsboot work on Peg.

Nope, probably not, but it would be interesting to have good quality ufs
drivers in the pegasos OF implementation, of the same level of those found in
usfboot.

> What IS important (IMHO) is to support Solaris disk label natively in
> SmartFirmware.

Indeed.

> Solaris  today groks two (three ?)types of labels - on SPARC it is Sun' VTOC,
> on x86 it is FDISK partitions with VTOC encapsulated inside SOLARIS FDISK
> partition. And another universally applicable partition type is  EFI (aka 
> GPT).
> It  (EFI) works on both SPARC and x86 and looks like a good choice for future
> development. I am not sure who's responsibility it is to support EFI
> label - OF or
> GRUB2 (or both ?) if one want to stick to it.
> Today Pegasos firmware supports Amiga and FDISK types, right ?

There is support for amiga RDBs, msdos FDISK, and bsd disklabels, and
filesystem support for (v)fat, ext2/3, bsd ufs, and amiga ffs, pfs and sfs.

Currently all pegasos favour the amiga RDB partition table (basically a linked
list of partition, each partition can be upto 32bit of cylinder value size,
and each cylinder size being defined by the multiplication of two 32bit values
(sectors and heads they are traditionally called), and one 32bit value for
sector size i believe, and you can have any number of partitions in the linked
list. Also, of interest to you, there is a 32bit value usable as partition
type marker, which you would use for zfs, which is something similar to
linux's raid/md/lvm thingy. The RDB disklabel also has support for carying
filesystem drivers, a bit like Solaris uses, and now also incorporates space
for a boot program. The RDB itself can be an arbitrary number in size, upto
32bit of sectors i think.

Either a OpenSolaris driver can be written for this, which makes cohabitation
with other operating systems easier, and yes, i am ready to write and maintain
said code, having implemented it for both libparted and yaboot. The other
solution would be for the OF to implement whatever partition table is chosen
and prefered, provided you provide us with a clear specification of the format
in question.

Friendly,

Sven Luther


Reply via email to