Legal Issues using Linux in embedded projects
The intricacies of using the GPL license have been hashed out repeatedly in many other forums. [references would be nice for major issues]
Here are some highlights:
Kernel is licensed GPL v2 only
The Linux kernel is licensed under the GNU General Public License, version 2.0 ONLY!
This is different from many other projects, which use the default wording in the license to allow GPL v2 or any later version.
This means it is unlikely that the kernel will switch to GPL version 3.0.
In September of 2006, a group of Linux kernel developers signed a position statement indicating that they objected to GPL version 3.0 (as then drafted). This further indicates the unlikelyhood of any change of the kernel to the GPL v3 license.
Signed-off-by lines and the DCO
When developers contribute to the kernel, they must provide a "Signed-off-by" line, indicating that they acknowledge the licensing and declare the work (to the best of their knowledge) to be either original, or derivative of something compatible with GPL v2.
This page has a few specific issues relating to embedded use of Linux.
EXPORT_SYMBOL_GPL for kernel USB API
In January of 2008, Greg Kroah Hartman submitted a patch to change the core USB API to EXPORT_SYMBOL_GPL. Here is some information about that change:
- USB: mark USB drivers as being GPL only (LWN.net)
- Linux 2.6.25 without Closed Source USB Drivers (Linux Magazine)
- USB drivers going GPL-only in 2.6.25 (LinuxWorld)
- the actual git commit
Binary proprietary kernel modules
One outstanding legal question with Linux, that is of particular importance in embedded, is whether or not binary (non-GPL) kernel modules violate the GPL license of the Linux kernel.
Opinions on this topic differ.
Here is an article with some interesting information:
- Encouraging closed source modules part 1: copyright and software
- Encouraging closed source modules part 2: law and the module interface
- Encouraging closed source modules part 3: elimating the "API update tax"
- http://gpl-violations.org/ - The gpl-violations.org project tries to resolve GPL violations and raises public awareness about GPL compliance.
- http://www.softwarefreedom.org/ - The Software Freedom Law Center provides legal representation for open source projects and publishes information on legal issues around open source.
- http://www.linuxfoundation.org/programs/legal/compliance - Linux Foundation's Open Compliance Program
- http://www.binaryanalysis.org/ - A binary analysis tool for GPL compliance investigations
- http://lwn.net/Articles/386280/ - LWN.net article about the binary analysis tool (published on 2010/05/06)
- http://fossology.org/ - FOSSology is a framework to scan open source code: it currently scans for copyright and license information and can easily be extended.