Re: GPL vs non-GPL device drivers

From: Neil Brown
Date: Thu Feb 15 2007 - 02:44:25 EST


On Wednesday February 14, vj.linux@xxxxxxxxx wrote:
> On 2/14/07, Randy Dunlap <rdunlap@xxxxxxxxxxxx> wrote:
> > We seem to have different definitions of open and closed.
>
> Open = 3rd party Linux drivers can be loaded. Closed = No third party
> Linux drivers can be loaded.

Loading a driver is not at issue. Anyone may load a driver.

The issue is when you *distribute* a driver.
If that driver is a derived work or the Linux kernel, then you may
only distribute it under the terms of the GPLv2, which essentially
means that you make the source code available - under the GPLv2 - to
everyone you give the driver to.

How do you know if the driver is a derived work?
Well, if it uses POSIX syscalls only, it isn't. (You can write USB
drivers in user-space which do this).

If it uses symbols exported with EXPORT_SYMBOL_GPL, then the author of the
code which provides those symbols thinks that the driver is a derived
work.

If it uses EXPORT_SYMBOL symbols, then it is less clear what people
believe, though there are certainly some who believe it will still
be a derived work.

But of course the person who's opinion really counts is the judge. So
you need to get legal advice.

NeilBrown
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/