[U-Boot] exports.h and the GPL
Michael Walle
michael at walle.cc
Fri Feb 24 20:48:51 CET 2012
Am Freitag 24 Februar 2012, 20:17:19 schrieb Mike Frysinger:
> On Friday 24 February 2012 13:10:36 Michael Walle wrote:
> > As far as i know applications can use functions defined in exports.h
> > without being licensed under the GPL.
>
> correct, that is what the COPYING file states
>
> > Who is responsible to define which functions are exported? Are the
> > currently exported functions the only ones available to closed source
> > applications or is it possible to add further ones which are needed.
>
> someone posts a request and the maintainers evaluate it. typically the
> exported funcs should be "high level" and not hooks into u-boot internals.
>
> > Functions may need arguments which are pointers to some structures. These
> > structures are likely be defined in some GPL'ed header file and must not
> > be used, i guess? So the exported functions must only use integral data
> > types, opaque pointers and structures which are not defined in a GPL'ed
> > header file.
>
> which is why the exported funcs are "high level" and not ones that get into
> low level stuff that would necessitate passing structs. the other problem
> with struct passing is that they tend to break the ABI layer.
> -mike
Then i guess there is no way to support a board which has only evil closed
source drivers for its networking card. That is, i can't export eth_register()
to register my ops defined in the blob without violating the GPL.
Even if the headers for the "struct eth_device" were public domain, this
mechanism would be sth like 'linking' against the uboot, wouldn't it?
--
Michael
More information about the U-Boot
mailing list