From owner-freebsd-arch@FreeBSD.ORG Wed Jun 2 19:30:32 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C622F106566B for ; Wed, 2 Jun 2010 19:30:32 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from mail.icecube.wisc.edu (trout.icecube.wisc.edu [128.104.255.119]) by mx1.freebsd.org (Postfix) with ESMTP id 81E048FC1B for ; Wed, 2 Jun 2010 19:30:32 +0000 (UTC) Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.icecube.wisc.edu (Postfix) with ESMTP id 801CB582C0; Wed, 2 Jun 2010 14:02:21 -0500 (CDT) X-Virus-Scanned: amavisd-new at icecube.wisc.edu Received: from mail.icecube.wisc.edu ([127.0.0.1]) by localhost (trout.icecube.wisc.edu [127.0.0.1]) (amavisd-new, port 10030) with ESMTP id kWuHyA0ouxeK; Wed, 2 Jun 2010 14:02:21 -0500 (CDT) Received: from wanderer.tachypleus.net (i3-dhcp-172-16-223-145.icecube.wisc.edu [172.16.223.145]) by mail.icecube.wisc.edu (Postfix) with ESMTP id 515BB582BE; Wed, 2 Jun 2010 14:02:21 -0500 (CDT) Message-ID: <4C06AABD.1000004@freebsd.org> Date: Wed, 02 Jun 2010 14:02:21 -0500 From: Nathan Whitehorn User-Agent: Thunderbird 2.0.0.24 (X11/20100504) MIME-Version: 1.0 To: =?UTF-8?B?VmxhZGltaXIgJ8+GLWNvZGVyL3BoY29kZXInIFNlcmJpbmVua28=?= References: <4BE98FB5.3060906@gmail.com> <20100514020055.GB89230@duncan.reilly.home> <4BFAC322.7070905@gmail.com> <4BFAEA79.4020901@gmail.com> In-Reply-To: <4BFAEA79.4020901@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Cc: The development of GRUB 2 , freebsd-arch@freebsd.org Subject: Re: [RFC] Multiboot2 drafting X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Jun 2010 19:30:32 -0000 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