grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC] Multiboot2 drafting


From: Nathan Whitehorn
Subject: Re: [RFC] Multiboot2 drafting
Date: Wed, 02 Jun 2010 14:02:21 -0500
User-agent: Thunderbird 2.0.0.24 (X11/20100504)

Vladimir 'φ-coder/phcoder' Serbinenko wrote:
Vladimir 'φ-coder/phcoder' Serbinenko wrote:
Andrew Reilly wrote:
Hi there,

I know next to nothing about GRUB, and have not yet read the
multiboot spec, but I wonder if you could comment on how or
whether this is related to either the Open Firmware Device Tree
or the Flattened Device Tree used in various embedded OS ports.
It would be cool if there were some convergence going on...

I've looked into it and found good and bad things.
Good:
-represents the info needed to OS. It's something definitely good and
goes in direction we need
Bad:
-it basically has all the history ballast of OpenFirmware. OFW is
supposed to be system-independent but in fact there is a multitude of
implementation with various degrees of compatibility. Same goes for
device trees. The same information is present in different places with
lots of special cases. Many of fields are actually useless variant selectors
-it uses string identifiers instead of magic numbers. This makes it more
difficult to parse
-the most useful information is coming at the leaves and interpretation
depends on whole path.
And traditional OpenFirmware has too much info which is probably
useless. E.g. once you know where PCI controller is and you support PCI
you can probe devices which are on it. If you don't support PCI
controller the info about devices on it is probably useless too.
Only exception is "early" info which is needed to e.g. setup console
before normal drivers are up
This isn't quite true. The FDT standard does not require you to add discoverable devices to the tree, for one, and it actually can be useful to have them in many circumstances, as well. For instance, suppose you have some kind of complicated object on the PCI bus (a GPIO controller, or an I2C bus). The children of the I2C bus need to be enumerated in the tree, since there is no other way to discover them, and it is also necessary to identify the I2C controller with a PCI device.
-Nathan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]