Status of firmware distributed with the Linux kernel source
Contents
-
Status of firmware distributed with the Linux kernel source
- Inventory
-
Specific drivers
- acenic (drivers/net)
- dabusb (drivers/usb/media)
- dgrs (drivers/net)
- e100 (drivers/net)
- emi62 (drivers/usb/misc)
- keyspan (drivers/usb/serial)
- qla2xxx (drivers/scsi)
- smctr (drivers/net/tokenring)
- tg3 (drivers/net)
- advansys (drivers/scsi)
- ip2main.c (drivers/char)
- dsp56k.c (drivers/char)
- mga (drivers/char/drm)
- pcxx (drivers/char)
- r128 (drivers/char/drm)
- radeon (drivers/char/drm)
- ser_a2232 (drivers/char)
- pca200e.data, pca200e_ecd.data, sba200e_ecd.data (drivers/atm)
- cs46xx_image.h (sound/pci/cs46xx)
- References
- Kernel team position statement
Inventory
This inventory is for 2.6.32 by Ben Hutchings. It is based on work by Bill Allombert, Larry Doolittle and Nathanael Nerode (neroden).
In cases where the file itself has no copyright or license notice, it is assumed to follow the driver file that includes it or links to it. Note that this makes very generous assumptions that the people who put the firmware into the kernel had the rights to do so. There are many cases that look suspiciously like the firmware image was grabbed without permission, but we don't try to categorize and second-guess such cases here. Ownership and permission for these blobs should be researched and documented as they are submitted for firmware-nonfree.
Files in the firmware subdirectory of the kernel are excluded; they are generally removed from Debian kernel sources and their licences are documented in firmware/WHENCE.
Source files containing firmware image |
Other source files using image |
Apparent license |
Source files for firmware |
Resulting status |
Notes |
arch/powerpc/platforms/cell/spufs/spu_save_dump.h_shipped |
switch.c |
GPLv2 |
spu_save.c, spu_save_crt0.S |
free |
|
arch/powerpc/platforms/cell/spufs/spu_restore_dump.h_shipped |
switch.c |
GPLv2 |
spu_restore.c, spu_restore_crt0.S |
free |
|
arch/powerpc/sysdev/micropatch.c |
|
GPLv2 |
|
nondistributable; removed |
|
drivers/char/ser_a2232fw.h |
ser_a2232.c |
BSD-ish |
ser_a2232fw.ax |
free |
|
drivers/gpu/drm/mga/mga_ucode.h |
mga_warp.c |
BSD-ish |
|
non-free; removed |
3 |
drivers/gpu/drm/r128/r128_cce.c |
|
BSD-ish |
|
non-free; removed |
3 |
drivers/gpu/drm/radeon/r600_firmware.h |
r600_cp.c |
BSD-ish |
|
non-free; removed |
3 |
drivers/gpu/drm/radeon/radeon_firmware.h |
radeon_cp.c |
BSD-ish |
|
non-free; removed |
3 |
drivers/infiniband/hw/ipath/ipath_sd7220_img.c |
ipath_sd7220.c |
BSD-ish/GPLv2 |
|
non-free; removed |
4 |
drivers/media/dvb/dvb-usb/af9005-script.h |
af9005-fe.c |
? |
|
nondistributable; removed |
5 |
drivers/media/dvb/frontends/lgs8gxx.c |
|
GPLv2 |
|
nondistributable; removed |
|
drivers/net/appletalk/cops_ffdrv.h |
cops.c |
use-only |
|
nondistributable; removed |
|
drivers/net/appletalk/cops_ltdrv.h |
cops.c |
use-only |
|
nondistributable; removed |
|
drivers/net/ixp2000/ixp2400_rx.ucode |
ixpdev.c |
GPLv2 |
ixp2400_rx.uc |
free |
1 |
drivers/net/ixp2000/ixp2400_tx.ucode |
ixpdev.c |
GPLv2 |
ixp2400_tx.uc |
free |
1 |
drivers/net/r8169.c |
|
GPLv2 |
|
nondistributable; removed |
|
drivers/net/wan/wanxlfw.inc_shipped |
wanxl.c |
GPLv2 |
wanxlfw.S |
free |
|
drivers/net/wireless/atmel.c |
|
GPLv2 |
atmel.c |
free |
|
drivers/scsi/53c700_d.h_shipped |
53c700.c |
GPLv2 |
53c700.scr |
free |
|
drivers/scsi/53c7xx_d.h_shipped |
53c7xx.c |
GPLv2 |
53c7xx.scr |
free |
|
drivers/scsi/aic7xxx/aic79xx_seq.h_shipped |
aic79xx_core.c |
BSD-ish |
aic79xx.seq |
free |
|
drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped |
aic7xxx_core.c |
BSD-ish |
aic7xxx.seq |
free |
|
drivers/scsi/aic7xxx_old/aic7xxx_seq.c |
aic7xxx_old.c |
BSD-ish |
aic7xxx.seq |
free |
1 |
drivers/scsi/sym53c8xx_2/sym_fw1.h |
sym_fw.c |
GPLv2 |
sym_fw1.h |
free |
2 |
drivers/scsi/sym53c8xx_2/sym_fw2.h |
sym_fw.c |
GPLv2 |
sym_fw2.h |
free |
2 |
drivers/staging/otus/hal/hp*fw*.c* |
hpmain.c |
BSD-ish |
|
non-free; removed |
|
drivers/staging/rt2860/common/firmware.h |
rtmp_init.c |
BSD-ish |
|
non-free; removed |
6 |
drivers/staging/rt3070/firmware.h |
rtmp_init.c |
BSD-ish |
|
non-free; removed |
6 |
drivers/staging/rt3090/firmware.h |
rtmp_init.c |
BSD-ish |
|
non-free; removed |
6 |
drivers/staging/rtl8192su/r8192S_FwImgDTM.h |
? |
GPLv2 |
|
nondistributable; removed |
7 |
drivers/staging/rtl8192su/r8192SU_HWImg.c |
? |
GPLv2 |
|
nondistributable; removed |
7 |
drivers/staging/rtl8192su/r819xU_firmware_img.c |
? |
GPLv2 |
|
nondistributable; removed |
7 |
drivers/staging/sxg/sxgphycode-1.2.h |
sxg.c |
GPLv2 |
|
nondistributable; removed |
|
drivers/staging/vt6656/firmware.c |
? |
GPLv2 |
|
nondistributable; removed |
|
sound/pci/cs46xx/cs46xx_image.h |
cs46xx_lib.c |
GPLv2 |
|
nondistributable; removed |
|
sound/pci/cs46xx/imgs/*.h |
cs46xx_lib.c |
GPLv2 |
|
nondistributable; removed |
|
Notes:
- Larry Doolittle was unable to regenerate this file from the claimed source
- Firmware provided as CPP macros implementing an asm
- Driver is patched to load firmware from the firmware-linux-nonfree package
- Driver is patched to load firmware from the firmware-qlogic package
- Driver is patched to load firmware from the Windows driver
- Driver is patched to load firmware from the firmware-ralink package
- Driver is patched to load firmware from the firmware-realtek package, which contains a properly-licenced version
In summary, Debian packages of Linux 2.6.32 should now be DFSG-free.
Specific drivers
acenic (drivers/net)
Copyright 1998-2002 by Jes Sorensen, < jes@trained-monkey.org >. Generated by genfw.c
ACENIC DRIVER P: Jes Sorensen M: jes@trained-monkey.org L: linux-acenic@sunsite.dk S: Maintained
according to freebsd's if_ti.c:
* Alteon Networks Tigon PCI gigabit ethernet driver for ["FreeBSD"]. * Manuals, sample driver and firmware source kits are available * from http://www.alteon.com/support/openkits. * Written by Bill Paul <wpaul@ctr.columbia.edu> * The firmware for the Tigon 1 and 2 ["NICs"] is compiled directly into * this driver by #including it as a C header file. This bloats the * driver somewhat, but it's the easiest method considering that the * driver code and firmware code need to be kept in sync. The source * for the firmware is not provided with the ["FreeBSD"] distribution since * compiling it requires a GNU toolchain targeted for mips-sgi-irix5.3.
wpaul@ctr.columbia.edu - bounced
wpaul@?FreeBSD.org - awaiting response (apr 5)
william.paul@windriver.com - awaiting response (apr 5)
acenic firmware source is here: https://web.archive.org/web/20100819030046/http://alteon.shareable.org/
- Quoth the page:
"Look at the source files yourself to understand any licensing restrictions on their use. Alteon's license may be summarised like this: you may share and develop the firmware, but it is only for use with Alteon NIC products."
More useful acenic info:
acenic firmware 'license': https://web.archive.org/web/20000711071330/sanjose.alteon.com/license-agree.shtml
Definitely not DFSG-free, but it appears distributable at least.. comments?
- -dil
Jes Sorensen, the arcenic driver author, wrote :
As I stated, I got it from Alteon with a written permission to distribute it as part of the GPL driver.
- -- svenl
What is the status of this? Does Jes have written permission to distribute the source as GPL? The source is online, but incorrectly licensed. If possible, I'd like to get a valid license on that, so we can possibly include this driver in main. -dil
"Alteon sold the rights to their NIC design to Nortel years ago; Nortel then sold off some rights to 3Com and/or Broadcom, and 3Com possibly sold off some of these rights to Broadcom as well."
Tracking down these people will be a pain. I've asked Broadcom about whether they own the rights to this firmware; their response:
"Acenic is not supported by us, this was the Alteon's product."
- -dil
dabusb (drivers/usb/media)
* Copyright (C) 1999 Deti Fliegl (deti@fliegl.de) deti@fliegl.de - awaiting response (apr 4, apr 13) -dil
relicensed to BSD 12/2007 -maks
dgrs (drivers/net)
* Author: Rick Richardson, rick@remotepoint.com * Derived from the ["SVR4"].2 (UnixWare) driver for the same card. * Copyright 1995-1996 Digi International Inc. * For information on purchasing a RightSwitch SE-4 or SE-6 * board, please contact Digi's sales department at 1-612-912-3444 * or 1-800-DIGIBRD. Outside the U.S., please check our Web page * at http://www.dgii.com for sales offices worldwide. DIGI RIGHTSWITCH NETWORK DRIVER P: Rick Richardson L: linux-net@vger.kernel.org W: http://www.digi.com S: Orphaned
rick@remotepoint.com - bounced
rickr@mn.rr.com - response received (apr 5); firmware license is proprietary. awaiting specific license redistribution rights.
- digi.com - attempted to contact their support (the web form leaves a lot to be desired)
- (apr 13) - awaiting a response
- digi.com - repinged (may 11). response received; case #1197247. From the email:
I apologize for the delay. We have been trying to track down information about this firmware image. Apparently, the RightSwitch product has been obsolete for several years (approximately 8+ years).
The Manager of the firmware Engineering Department has been made aware and is currently researching this.
may 20:
Dear Andres: After further research, we found that this product was killed in place and never reached the market. We would like to request that this not be included.
There will be no users impacted by pulling support.
- -dil
driver gone upstream 2.6.24 -maks
e100 (drivers/net)
Microcode turns out to be under 3-clause BSD license (so, distributable). Unfortunately this license is not listed in the Linux kernel sources, but it can be seen at http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/dev/microcode/fxp/.
- -neroden
emi62 (drivers/usb/misc)
* Copyright (C) 2002 * Tapio Laxstr\uffffm (tapio.laxstrom@iptime.fi) * This file is generated from three different files, provided by Emagic.
So, undistributable. asuffield pointed out this: https://www.apple.com/newsroom/2002/07/01Apple-Acquires-Emagic/
copyright@apple.com - awaiting response (apr 13)
- -dil
keyspan (drivers/usb/serial)
(C) Copyright (C) 2000-2001 Hugh Blemings <hugh@blemings.org> (C) Copyright (C) 2002 Greg Kroah-Hartman <greg@kroah.com> See http://misc.nu/hugh/keyspan.html for more information. The firmware contained herein as keyspan_*.h is Copyright (C) 1999-2001 Keyspan, A division of InnoSys Incorporated ("Keyspan") as an unpublished work. This notice does not imply unrestricted or public access to the source code from which this firmware image is derived. Except as noted below this firmware image may not be reproduced, used, sold or transferred to any third party without Keyspan's prior written consent. All Rights Reserved. Permission is hereby granted for the distribution of this firmware image as part of a Linux or other Open Source operating system kernel in text or binary form as required. This firmware may not be modified and may only be used with Keyspan hardware. Distribution and/or Modification of the keyspan.c driver which includes this firmware, in whole or in part, requires the inclusion of this statement."
This looks good; the only potentially hairy bit is the part about being distributed as part of a Linux or other Free OS kernel. Is shipping it as a separate driver, with other Linux drivers (ie, shipping a part of an OS kernel) permitted?
- -dil
qla2xxx (drivers/scsi)
* Copyright (C) 2003 Christoph Hellwig. * Copyright (C) 2003-2004 ["QLogic"] Corporation * (www.qlogic.com) QLOGIC ["QLA2XXX"] FC-SCSI DRIVER P: Andrew Vasquez M: andrew.vasquez@qlogic.com L: linux-scsi@vger.kernel.org S: Supported
freebsd has firmware for qla separated out and marked under BSD license; is this valid? can we just say the firmware blobs are BSD licensed?
https://svnweb.freebsd.org/base/head/sys/dev/ispfw/
- -dil
andrew.vasquez@qlogic.com - awaiting response (may 11)
support@qlogic.com - response received (may 11) -dil
Bits quoted from the response from David Wagner, and my response to him:
> Can you tell me what the issue is as far as Debian is concerned? Do The GPL specifies that when binaries are distributed, source must be made available by some means. Currently, if someone were to ask us (Debian) for the source to the firmware image, we would be unable to provide it. That would mean we (Debian) are in violation of the license. It is irrelevant what device the firmware code actually executes on. Quoting the ["GPLv2"], "The source code for a work means the preferred form of the work for making modifications to it." Unless ["QLogic"] is creating the binary image with a hex editor, I don't think it could be argued that the firmware image itself is the source code. > you have suggestions as to the exact license agreement wording that > you would recommend? >
Any Free license that's compatible with the GPL would be just fine. I have been recommending the BSD license to hardware vendors. For example: ...
David then responded, saying he'd forward my input to his boss.
I've talked w/ ["QLogic"]'s lawyers; their main concern with changing the firmware license is having to re-qualify with ["OEMs"]. I suggested dual-licensing, which they're ok with. As of June 15, they were working on the language of the new license. -dil
smctr (drivers/net/tokenring)
* The firmware this driver downloads into the tokenring card is a * separate program and is not GPL'd source code, even though the Linux * side driver and the routine that loads this data into the card are. * * This firmware is licensed to you strictly for use in conjunction * with the use of SMC TokenRing adapters. There is no waranty * expressed or implied about its fitness for any purpose. * - This is an 8K binary image. (MCT.BIN v6.3C1 03/01/95) * - Jay Schulist <jschlst@samba.org>
Bad license since redistribution is not explicitly permitted.. plus it rescricts usage of the firmware on any box without smctr hardware.
jschlst@samba.org - awaiting response (apr 13)
Jay Schulist < jschlst@turbolinux.com > - bounced
Jay Schulist ( jschlst@spacs.k12.wi.us ) - awaiting response (apr 14)
Jay Schulist ( jschlst@coredcs.com ) - bounced
Jay Schulist < jschlst@linux-sna.org > - bounced -dil
tg3 (drivers/net)
* Copyright (C) 2001, 2002, 2003, 2004 David S. Miller (davem@redhat.com) * Copyright (C) 2001 Jeff Garzik (jgarzik@pobox.com) * Copyright (C) 2004 Sun Microsystems Inc. * Firmware is: * Copyright (C) 2000-2003 Broadcom Corporation.
Before contacting broadcom, i went to the driver download web page: http://www.broadcom.com/drivers/driver-sla.php?driver=570x-Linux which says:
The Broadcom Linux Ethernet drivers are licensed under the GNU GPL. The full text of the license is available in the driver archive.
downloading the driver now, but don't know what their relationship to the mainline kernel version is.
Also, Jeff Garzik was the one doing the initial checkin, but didn't respond to a direct question asking where the firmware came from, and under which licence.
Mail sent to broadcom driver support channel, and response received:
Response from Broadcom:
. I have forwarded this request to our development team as well as our line product manager. I will inform you, once a decision is made
Comment from Eric W. Biederman < ebiederm@xmission.com >:
> So, where is the source for it ?
The GPL'd driver that broadcom distributes. The history of tg3.c is that broadcom's bcm57xx driver drove the hardware correctly but not linux so it was rewritten from scratch.
The ball is definitively in Broadcom's camp.
* 2005.05.25: Broadcom made a licencing proposal, shown below :
/* xxx.h: Broadcom tg3 network driver. * * Copyright (c) 2004, 2005 Broadcom Corporation * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, except as noted below. * * This file contains firmware data derived from proprietary unpublished * source code, Copyright (c) 2004, 2005 Broadcom Corporation. * * Permission is hereby granted for the distribution of this firmware data * in hexadecimal or equivalent format, provided this copyright notice is * accompanying it. */
This is rather encouraging, and sounds ok to me to make the driver distributable in non-free. I have posted to debian-legal, so let's see what will come of it
- -- SvenL
Case information:
> Below is a response to your case number ["CS00003271"] submitted to Broadcom NIC Technology Support. > > Case Title: ["GPLed"] driver and binary-only firmware blobs.
The ball may be in Broadcom's court, but if we want this resolved in a timely fashion, we'll probably need to pester them regularly.
- -dil
- FYI: Broadcom's bcm57xx driver contains the firmware, in hex blobs only, in files which claim to be licensed under the GPL -- just like the Linux driver. This of course means that Broadcom didn't know what they were doing when they released it. If they could explain what they actually intended to do, we could probably convince them to actually do it, whatever it is. -neroden
This has been resolved, and the new license has been included in 2.6.12.
Here's the commit: http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=49cabf49abd7676d026a61baabf5aae9337a82be;hp=9beb1d587f690d5b2f9087f8f10c0ff9f6b66886
- -dil
advansys (drivers/scsi)
* Copyright (c) 1995-2000 Advanced System Products, Inc. * Copyright (c) 2000-2001 ConnectCom Solutions, Inc. * All Rights Reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that redistributions of source * code retain the above copyright notice and this comment without * modification. * * As of March 8, 2000 Advanced System Products, Inc. (AdvanSys) * changed its name to ConnectCom Solutions, Inc.
not contacted yet
This looks fine; the driver and firmware appears to be BSD-licensed.
- -dil
ip2main.c (drivers/char)
* (c) 1999 by Computone Corporation
loads ip2/fip_firm.h
no license information anywhere
COMPUTONE INTELLIPORT MULTIPORT CARD P: Michael H. Warfield M: Michael H. Warfield <mhw@wittsend.com> W: http://www.wittsend.com/computone.html L: linux-computone@lazuli.wittsend.com S: Orphaned
http://www.wittsend.com/computone.html contains a link to a slightly different driver: http://www.wittsend.com/computone/linux-2.2-ctone-1.2.4.patch.gz This patch includes additional author and contact information.
Michael H. Warfield < mhw@wittsend.com > - awaiting response (apr 14)
support@computone.com - bounced
Andrew Manison < amanison@america.net > - bounced
linux-computone@lazuli.wittsend.com - bounced -dil
dsp56k.c (drivers/char)
* The ["DSP56001"] Device Driver, saviour of the Free World(tm) * * Authors: Fredrik Noring <noring@nocrew.org> * lars brinkhoff <lars@nocrew.org> * Tomas Berndtsson <tomas@nocrew.org> * * First version May 1996 * * History: * 97-01-29 Tomas Berndtsson, * Integrated with Linux 2.1.21 kernel sources. * 97-02-15 Tomas Berndtsson, * Fixed for kernel 2.1.26 * * Copyright (C) 1996,1997 Fredrik Noring, lars brinkhoff & Tomas Berndtsson * * This file is subject to the terms and conditions of the GNU General Public * License. See the file COPYING in the main directory of this archive * for more details.
Source is now available; see [javascript:void(0);/*1223839421065*/ http://git.infradead.org/users/dwmw2/firmware-2.6.git?a=commitdiff;h=7f127d5ed0da66053482a3e18014c439da3c41d1]
mga (drivers/char/drm)
/''' mga_ucode.h -- Matrox G200/G400 WARP engine microcode -'''- linux-c -*- * Created: Thu Jan 11 21:20:43 2001 by gareth@valinux.com * * Copyright 1999 Matrox Graphics Inc. * All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * MATROX GRAPHICS INC., OR ANY OTHER CONTRIBUTORS BE LIABLE FOR ANY CLAIM, * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Kernel-based WARP engine management: * Gareth Hughes <gareth@valinux.com>
Not contacted yet
Another BSD licensed driver; is this not ok?
- -dil
X11, not BSD, but about as permissive.
- -lxoliva
Looks distributable, since the microcode does appear to be subject to the same copyright and license as the driver (contrast r128 and radeon)
- -neroden
pcxx (drivers/char)
* linux/drivers/char/pcxx.c * * Written by Troy De Jongh, November, 1994 * * Copyright (C) 1994,1995 Troy De Jongh * This software may be used and distributed according to the terms * of the GNU General Public License. * * This driver is for the DigiBoard PC/Xe and PC/Xi line of products. * * This driver does NOT support DigiBoard's fastcook FEP option and * does not support the transparent print (i.e. digiprint) option. * * This Driver is currently maintained by Christoph Lameter (christoph@lameter.com) * * Please contact digi for support issues at digilnux@dgii.com. * Some more information can be found at * http://lameter.com/digi.
includes digi_fep.h digi_bios.h which just contain hexdumps, and no copyright header
Not contacted yet
r128 (drivers/char/drm)
/''' r128_cce.c -- ATI Rage 128 driver -'''- linux-c -*- * Created: Wed Apr 5 19:24:19 2000 by kevin@precisioninsight.com * * Copyright 2000 Precision Insight, Inc., Cedar Park, Texas. * Copyright 2000 VA Linux Systems, Inc., Sunnyvale, California. * All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice (including the next * paragraph) shall be included in all copies or substantial portions of the * Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * * Authors: * Gareth Hughes <gareth@valinux.com>
contains "CCE microcode (from ATI)"
Not contacted yet
BSD licensed, firmware ok?
- -dil
s/BSD/X11/
- -lxoliva
The problem here is that we don't have a copyright notice or license from ATI to go with the microcode "from ATI". (If ATI has transferred the copyright to Precision Insight or VA Linux, all would be well, but there's no reason to believe that they did, and plenty of reason to believe that they didn't.)
- -neroden
Dave Airlie told me "the original table was just released under NDA, with permission to reuse in open source". So the code is copyright ATI/AMD but under a permissive licence. I think labelling it with the licence from this file should be fine.
radeon (drivers/char/drm)
/''' radeon_cp.c -- CP support for Radeon -'''- linux-c -*- * * Copyright 2000 Precision Insight, Inc., Cedar Park, Texas. * Copyright 2000 VA Linux Systems, Inc., Fremont, California. * All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice (including the next * paragraph) shall be included in all copies or substantial portions of the * Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * * Authors: * Kevin E. Martin <martin@valinux.com> * Gareth Hughes <gareth@valinux.com>
contains "CP microcode (from ATI)"
not contacted yet
Another BSD license?
Exactly like r128
- -neroden
The microcode is now separated out into radeon_firmware.h, which is copyright ATI and has the same BSD-ish licence. So this should be separately distributable now.
s/BSD/X11/
- -lxoliva
ser_a2232 (drivers/char)
* Copyright (c) 1995 Jukka Marin <jmarin@jmp.fi>. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, and the entire permission notice in its entirety, * including the disclaimer of warranties. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. The name of the author may not be used to endorse or promote * products derived from this software without specific prior * written permission. * * ALTERNATIVELY, this product may be distributed under the terms of * the GNU Public License, in which case the provisions of the GPL are * required INSTEAD OF the above restrictions. (This clause is * necessary due to a potential bad interaction between the GPL and * the restrictions contained in a BSD-style copyright.)
copyright from included file ser_a2232fw.h
Not yet contacted
Dual licensed BSD/GPL, we can choose BSD for the firmware. If there's some sort of bad interaction between the GPL and BSD license (as the above seems to imply), we've got larger problems. :p
- -dil
Definitely distributable
- -neroden
pca200e.data, pca200e_ecd.data, sba200e_ecd.data (drivers/atm)
Firmware files accompanying the FORE Systems 200E-series driver for ATM on Linux (fore200e.c). Distributed under the terms presented in drivers/atm/fore200e_firmware_copyright:
These microcode data are placed under the terms of the GNU General Public License. We would prefer you not to distribute modified versions of it and not to ask for assembly or other microcode source. Copyright (c) 1995-2000 FORE Systems, Inc., as an unpublished work. This notice does not imply unrestricted or public access to these materials which are a trade secret of FORE Systems, Inc. or its subsidiaries or affiliates (together referred to as "FORE"), and which may not be reproduced, used, sold or transferred to any third party without FORE's prior written consent. All rights reserved. U.S. Government Restricted Rights. If you are licensing the Software on behalf of the U.S. Government ("Government"), the following provisions apply to you. If the software is supplied to the Department of Defense ("DoD"), it is classified as "Commercial Computer Software" under paragraph 252.227-7014 of the DoD Supplement to the Federal Acquisition Regulations ("DFARS") (or any successor regulations) and the Government is acquiring only the license rights granted herein (the license rights customarily provided to non-Government users). If the Software is supplied to any unit or agency of the Government other than the DoD, it is classified as "Restricted Computer Software" and the Government's rights in the Software are defined in paragraph 52.227-19 of the Federal Acquisition Regulations ("FAR") (or any successor regulations) or, in the cases of NASA, in paragraph 18.52.227-86 of the NASA Supplement to the FAR (or any successor regulations). FORE Systems is a registered trademark, and ForeRunner, ["ForeRunnerLE"], and ForeThought are trademarks of FORE Systems, Inc. All other brands or product names are trademarks or registered trademarks of their respective holders.
cs46xx_image.h (sound/pci/cs46xx)
This file, as of 2.6.24, contains no license or copyright information. Research about the history of this file can be found in #464197. DannFrazier sent a request for a free redistribution license to ?CirrusLogic on 2008.04.10 (via the Design Support Request form on their web page).
References
Bill Allombert's study of the problem in the 2.4.25 kernel : https://lists.debian.org/debian-legal/2004/04/msg00074.html
A more formal analysis of the steps to take, from Humberto Massa : https://lists.debian.org/debian-legal/2005/04/msg00192.html
Some links to bugs (past & present) relating to this issue: 183557 RFP for stripped out non-free kernel "bits" (fimware and anything else) 150052 requested (by manoj), and got non-free kernel bits removed (by Herbert Xu) (triggering 183557 by DrewDaniels) TODO: there are at least three other bugs relating to "non-free" related kernel stuff
Kernel team position statement
This statement applied to the 'etch' and 'lenny' releases.
Debian kernel team identifies the following three types of firmware, currently found in the Linux kernel: 1. Sourceless binary blobs with no license, no explicit permission to redistribute, or an explicit prohibition to redistribute. This category currently includes the emi62, keyspan, smctr, cops, emi26, and 3c359 drivers. Removal of these drivers will have minimal impact on the users, as they are believed to be unpopular and not likely to be required during the installation. 2. Sourceless binary blobs distributed under GPL. This situation has been interpreted as a violation of the terms of GPL, which requires the distribution to be accompanied by the source code. Removal of firmware in this category will cause effective removal of a large number of important drivers, resulting in a severe negative impact on our users. 3. Binary blobs violating DFSG for other reasons. This category includes firmware which contains obfuscated source, or is not allowed to be modified. While less numerous than category 2, removal of drivers in this category will also have a significant negative impact on our users. It has been agreed within Debian kernel team, that the firmware in category 1 is not acceptable in Debian. It is the intention of the kernel team to prune the affected drivers from the upstream tarball. While we continuosly strive to improve the situation with DFSG-compliance of kernel packages, and there has been progress on it since Sarge release, we recognize that fixing all the problems with drivers falling into categories 2 and 3 is not feasible in the etch release time frame. Alternative solutions, like removal of the affected drivers would have a severe negative impact on our users, and would be detrimentary to the Debian's goal of advancement of free software. Therefore, we propose to accept the drivers from categories 2 and 3 in the kernel packages for etch, given that an agreement can be achieved with release and ftp-master teams, or the issue is resolved by way of General Resolution.