Device Tree Blob (DTB) licence
Yann Droneaud
ydroneaud at opteya.com
Fri May 22 03:05:48 PDT 2015
Hi,
Le mardi 05 mai 2015 à 11:41 -0500, Rob Herring a écrit :
> On Tue, May 5, 2015 at 5:05 AM, Yann Droneaud <ydroneaud at opteya.com>
> wrote:
> >
> > I believe Device Tree Blob (.dtb file) built from kernel's Device
> > Tree
> > Sources (.dts, which #include .dtsi, which #include .h) using
> > Device
> > Tree Compiler (dtc) are covered by GNU General Public Licence v2
> > (GPLv2), but cannot find any reference.
>
> By default yes, but we've been steering people to dual license them
> GPL/BSD.
>
Can you give me the rationale behind such dual licenses requirement ?
If a BSD .dts includes GPLv2 .h, the whole is covered by GPLv2,
so I cannot find a case where a BSD covered .dts file could be used
alone within BSD license rights.
> > As most .dtsi in arch/arm/boot/dts/ are covered by GPLv2, and,
> > as most .h in include/dt-bindings/ are also covered by GPLv2,
> > the source code is likely covered by GPLv2.
> >
> > Then this source code is translated in a different language
> > (flattened
> > device tree), so the resulting translation is also likely covered
> > by
> > GPLv2.
> >
> > So, when I'm proposed to download a .dtb file from a random vendor,
> > can I require to get the associated source code ?
>
> I believe so yes. However, you already have the "source" for the most
> part. Just run "dtc -I dtb -O dts <dtb file>". You loose the
> preprocessing and include structure though (not necessarily a bad
> thing IMO).
>
> Then the question is what is the license on that generated dts!
>
That's also a good question.
Is this a form a "reverse engineering" with all the legalese burden ?
Anyway without a clear information attached to the DTB, it's difficult
to tell which licence cover the "decompiled" version.
> > Anyway, for a .dtb file generated from kernel sources, it's rather
> > painful to look after all .dts, .dtsi, .h, to find what kind of
> > licences are applicables, as some are covered by BSD, dual licensed
> > (any combination of X11, MIT, BSD, GPLv2).
>
> I imagine the includes cause some licensing discrepancies if you dug
> into it.
>
It's a pity, and it's probably something to sort out.
DTB files produced as part of kernel compilation should have a well
known license attached by default.
Regards.
--
Yann Droneaud
OPTEYA
More information about the linux-arm-kernel
mailing list