[dtc] breaking out libfdt from dtc so other progs can use it

Jerone Young jyoung5 at us.ibm.com
Fri Feb 29 03:30:44 EST 2008


On Thu, 2008-02-28 at 12:41 +1100, David Gibson wrote:
> On Wed, Feb 27, 2008 at 01:40:43PM -0600, Jerone Young wrote:
> > Currently the dtc source code has libfdt integrated in it. This seems to
> > have become place for upstream libfdt changes. Now we all know everyone
> > (linux kernel, cuboot) also have their own versions over libfdt. But if
> > another userspace app wants to use libfdt , it has to copy it from the
> > dtc source and try to maintain it's own copy.
> > 
> > The question I have is can libfdt be split out from dtc source, and
> > become it's own thing. This way other userspace apps can easily download
> > it and link with it?
> > 
> > The reason I ask is I have added dynamic manipulation support of device
> > trees in memory into qemu for KVM. But the issue is keeping a copy of
> > libfdt in the KVM userspace repository, which is getting some opposition
> > (understandably). But this would be much easier if there was a libfdt
> > repo for the library so that we wouldn't need to keep our own copy.
> 
> Um.. libfdt was moved into the dtc repo for convenience, both for us
> writing it (they help to test each other), and for those using it -
> don't have to have separate pulls for these closely related tools.
> 
> I don't understand why you're finding the merged libfdt inconvenient.
> "make" will build both dtc and libfdt, and libfdt can be easily taken
> out and embedded on other projects.

The reason for all the contention is that libfdt is more of a shared
userspace library. Even though dtc really has been the only user of it
in userspace at the moment, now I want to add it's use to qemu. What
many are thinking about is the maintenance of the library. There are
still fixes going in the libfdt in dtc. 

If it where broken out of dtc it would be easier to pickup and pull
fixes from it. Even package it so programs can easily build it
standalone.

It's not often any userspace app needs libfdt. But now with
virtualization userspace apps actually can see the device tree in guest
memory and do have all sort of fun with it easily because of libfdt. 

> 




More information about the Linuxppc-dev mailing list