Messages in this thread | | | Subject | Re: [RFC] Device Tree Overlays Proposal (Was Re: capebus moving omap_devices to mach-omap2) | From | Pantelis Antoniou <> | Date | Mon, 12 Nov 2012 13:29:28 +0200 |
| |
Hi Grant,
On Nov 9, 2012, at 7:02 PM, Grant Likely wrote:
> On Wed, Nov 7, 2012 at 12:54 AM, Mitch Bradley <wmb@firmworks.com> wrote: >> On 11/6/2012 12:37 PM, Stephen Warren wrote: >>> This proposal is very oriented at an overlay-based approach. I'm not >>> totally convinced that a pure overlay approach (as in how dtc does >>> overlayed DT nodes) will be flexible enough, but would love to be >>> persuaded. Again see below. >> >> >> An overlay approach will not be powerful enough to solve the sorts of >> problems that occur when a product goes into full production, becomes a >> family, and starts to evolve. Issues like second-source parts that >> aren't quite compatible and need to be detected and reported, >> board-stuff options for different customer profiles, speed grades of >> parts that aren't properly probeable but instead need to be identified >> by some subterfuge, the list of tedious issues goes on and on. >> >> It's nice to pretend that the world fits into a few coherent simple >> use cases, but 30 years of experience shipping computer product families >> proves otherwise. You need a programming language to solve the full >> set of problems - which I why the device tree is designed so it can >> be generated and modified by a program. > > I'm not going to argue with that. There is nothing saying that the > overlay wouldn't be generated or applied by a script. However, I do > strongly think that the data model needs to be independent of any tool > or execution environment used to manipulate it. I certainly am not > interested in encoding scripts or bytecode into the tree - the > opposite of the approach used by ACPI which must execute AML to even > retrieve the device tree. I like the overlay approach because it is > conceptually straightforward and provides a working model of how > changes could be made from userspace while still being usable by > firmware. > > An alternate approach from userspace would be to use a live virtual > filesystem to manipulate the device tree, though that approach only > applies to Linux userspace. Firmware would still need its own > approach. > > g.
I completely agree here.
I certainly wouldn't want to introduce any kind of bytecode or a programming model for manipulating DT. I know OF has a full blown forth interpreter, but that's not what modern DT should be (IMHO).
Having DT provide such a programming model will preclude a number of users of accessing it, and on top of that, complexity will increase considerably.
When faced with a new problem, vendors will just code a workaround, never bothering fixing it properly.
In a nutshell, let's not turn DT into ACPI, please.
Regards
-- Pantelis
| |