Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 02 Jun 2010 14:02:21 -0500
From:      Nathan Whitehorn <nwhitehorn@freebsd.org>
To:        =?UTF-8?B?VmxhZGltaXIgJ8+GLWNvZGVyL3BoY29kZXInIFNlcmJpbmVua28=?= <phcoder@gmail.com>
Cc:        The development of GRUB 2 <grub-devel@gnu.org>, freebsd-arch@freebsd.org
Subject:   Re: [RFC] Multiboot2 drafting
Message-ID:  <4C06AABD.1000004@freebsd.org>
In-Reply-To: <4BFAEA79.4020901@gmail.com>
References:  <4BE98FB5.3060906@gmail.com>	<20100514020055.GB89230@duncan.reilly.home>	<4BFAC322.7070905@gmail.com> <4BFAEA79.4020901@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C06AABD.1000004>