3 # Copyright (C) 2008 Jeff Moe
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19 # deblob - remove non-free blobs from the vanilla linux kernel
21 # http://www.blagblagblag.org/pub/BLAG/linux/kernel/v2.6
22 # ftp://ftp.blagblagblag.org/pub/BLAG/linux/kernel/v2.6
25 # http://wiki.debian.org/KernelFirmwareLicensing
26 # svn://svn.debian.org/kernel/dists/trunk/linux-2.6/debian/patches/debian/dfsg/files-1
27 # http://svn.gnewsense.svnhopper.net/gnewsense/builder/trunk/firmware/firmware-removed
28 # http://svn.gnewsense.svnhopper.net/gnewsense/builder/trunk/gen-kernel
30 # Thanks to Brian Brazil @ gnewsense
35 # drivers/net/tokenring/Kconfig needs as last line:
37 # drivers/media/Kconfig needs before endmenu
40 if [ ! -f `which unifdef` ] ; then echo "requires unifdef" ; exit ; fi
42 function clean_kconfig {
43 #$1 = filename $2 = things to remove
44 perl -i -ne 'BEGIN{$p=1} if(/^config ('$2')$/){$p=0}elsif(/^(config|endmenu|source|endif)/){$p=1}; print if $p' $1
48 #######################
49 # Removed ATM Drivers #
50 #######################
52 # ATM_AMBASSADOR - Madge Ambassador (Collage PCI 155 Server)
53 rm -v drivers/atm/atmsar11.data
54 rm -v drivers/atm/atmsar11.regions
55 rm -v drivers/atm/atmsar11.start
58 # ATM_FORE200E_SBA - SBA-200E
59 # it appears by placing these files under the GPL this company
60 # now has to release the source
61 rm -v drivers/atm/fore200e_firmware_copyright
62 rm -v drivers/atm/fore200e_mkfirm.c
63 clean_kconfig ./drivers/atm/Kconfig 'ATM_(FORE).*'
64 sed -i '/(CONFIG_ATM_FORE200E)/d' ./drivers/atm/Makefile
66 rm -v drivers/atm/pca200e.data
67 rm -v drivers/atm/pca200e_ecd.data
68 rm -v drivers/atm/sba200e_ecd.data
69 clean_kconfig ./drivers/atm/Kconfig 'ATM_AMBASSADOR'
70 sed -i '/(CONFIG_ATM_AMBASSADOR)/d' ./drivers/atm/Makefile
73 ########################
74 # Removed char Drivers #
75 ########################
77 # COMPUTONE - Computone IntelliPort Plus serial
78 rm -v drivers/char/ip2/fip_firm.h
79 clean_kconfig ./drivers/char/Kconfig 'COMPUTONE'
80 sed -i '/(CONFIG_COMPUTONE)/d' ./drivers/char/Makefile
82 # DSP56001 Device Driver
83 rm -v drivers/char/dsp56k.c
84 clean_kconfig ./arch/m68k/Kconfig 'ATARI_DSP56K'
85 sed -i '/(CONFIG_ATARI_DSP56K)/d' ./drivers/char/Makefile
89 # DRM_MGA - Matrox g200/g400
90 rm -v drivers/char/drm/mga_ucode.h
91 clean_kconfig ./drivers/char/drm/Kconfig 'DRM_MGA'
92 sed -i '/(CONFIG_DRM_MGA)/d' ./drivers/char/drm/Makefile
94 # DRM_R128 - ATI Rage 128
95 rm -v drivers/char/drm/r128_cce.c
96 clean_kconfig ./drivers/char/drm/Kconfig 'DRM_R128'
97 sed -i '/(CONFIG_DRM_R128)/d' ./drivers/char/drm/Makefile
99 # DRM_RADEON - ATI Radeon
100 rm -v drivers/char/drm/radeon_cp.c
101 clean_kconfig ./drivers/char/drm/Kconfig 'DRM_RADEON'
102 sed -i '/(CONFIG_DRM_RADEON)/d' ./drivers/char/drm/Makefile
105 #########################
106 # Removed Media Drivers #
107 #########################
111 rm -v drivers/media/dvb/dvb-usb/af9005-script.h
112 clean_kconfig ./drivers/media/dvb/dvb-usb/Kconfig 'DVB_USB_AF9005'
113 sed -i '/CONFIG_DVB_USB_AF9005/d' ./drivers/media/dvb/dvb-usb/Makefile
117 # DVB_TDA10021 - Philips TDA10021 based
118 rm -v drivers/media/dvb/frontends/tda10021.c
119 clean_kconfig ./drivers/media/dvb/frontends/Kconfig 'DVB_TDA10021'
120 sed -i '/(CONFIG_DVB_TDA10021)/d' ./drivers/media/dvb/frontends/Makefile
122 # DVB_TDA8083 - Philips TDA8083 based
123 rm -v drivers/media/dvb/frontends/tda8083.c
124 clean_kconfig ./drivers/media/dvb/frontends/Kconfig 'DVB_TDA8083'
125 sed -i '/(CONFIG_DVB_TDA8083)/d' ./drivers/media/dvb/frontends/Makefile
127 # DVB_VES1820 - VLSI VES1820 based
128 rm -v drivers/media/dvb/frontends/ves1820.c
129 clean_kconfig ./drivers/media/dvb/frontends/Kconfig 'DVB_VES1820'
130 sed -i '/(CONFIG_DVB_VES1820)/d' ./drivers/media/dvb/frontends/Makefile
132 # DVB_VES1X93 - VLSI VES1893 or VES1993 based
133 rm -v drivers/media/dvb/frontends/ves1x93.c
134 clean_kconfig ./drivers/media/dvb/frontends/Kconfig 'DVB_VES1X93'
135 sed -i '/(CONFIG_DVB_VES1X93)/d' ./drivers/media/dvb/frontends/Makefile
139 # DVB_AV7110 - AV7110 cards
140 rm -v drivers/media/dvb/ttpci/av7110_hw.c
141 rm -v drivers/media/dvb/ttpci/av7110.c
142 clean_kconfig ./drivers/media/dvb/ttpci/Kconfig 'DVB_AV7110'
143 sed -i '/(CONFIG_DVB_AV7110)/d' ./drivers/media/dvb/ttpci/Makefile
145 # DVB_BUDGET_AV - Budget cards with analog video inputs
146 rm -v drivers/media/dvb/ttpci/budget-av.c
147 clean_kconfig ./drivers/media/dvb/ttpci/Kconfig 'DVB_BUDGET_AV'
148 clean_kconfig ./drivers/media/dvb/ttpci/Kconfig 'DVB_BUDGET_PATCH'
149 clean_kconfig ./drivers/media/dvb/ttpci/Kconfig 'DVB_BUDGET'
150 sed -i '/(CONFIG_DVB_BUDGET_AV)/d' ./drivers/media/dvb/ttpci/Makefile
151 sed -i '/(CONFIG_DVB_BUDGET_PATCH)/d' ./drivers/media/dvb/ttpci/Makefile
152 sed -i '/(CONFIG_DVB_BUDGET)/d' ./drivers/media/dvb/ttpci/Makefile
154 # DVB_BUDGET_CI - Budget cards with onboard CI connector
155 rm -v drivers/media/dvb/ttpci/budget-ci.c
156 clean_kconfig ./drivers/media/dvb/ttpci/Kconfig 'DVB_BUDGET_CI'
157 sed -i '/(CONFIG_DVB_BUDGET_CI)/d' ./drivers/media/dvb/ttpci/Makefile
161 # DVB_TTUSB_BUDGET - Technotrend/Hauppauge Nova-USB devices
162 rm -v drivers/media/dvb/ttusb-budget/dvb-ttusb-dspbootcode.h
163 rm -v drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c
164 clean_kconfig ./drivers/media/dvb/ttusb-budget/Kconfig 'DVB_TTUSB_BUDGET'
165 sed -i '/(CONFIG_DVB_TTUSB_BUDGET)/d' ./drivers/media/dvb/ttusb-budget/Makefile
169 # USB_PWC - USB Philips Cameras
170 rm -v drivers/media/video/pwc/pwc-kiara.c
171 rm -v drivers/media/video/pwc/pwc-timon.c
172 clean_kconfig ./drivers/media/video/pwc/Kconfig 'USB_PWC'
173 sed -i '/(CONFIG_USB_PWC)/d' ./drivers/media/video/Makefile
175 # VIDEO_CPIA - CPiA Video For Linux
176 rm -v drivers/media/video/cpia2/cpia2patch.h
177 clean_kconfig ./drivers/media/video/Kconfig 'VIDEO_CPIA'
178 clean_kconfig ./drivers/media/video/Kconfig 'VIDEO_CPIA_PP'
179 clean_kconfig ./drivers/media/video/Kconfig 'VIDEO_CPIA_USB'
180 clean_kconfig ./drivers/media/video/cpia2/Kconfig 'VIDEO_CPIA2'
181 sed -i '/(CONFIG_VIDEO_CPIA)/d' ./drivers/media/video/Makefile
182 sed -i '/(CONFIG_VIDEO_CPIA_PP)/d' ./drivers/media/video/Makefile
183 sed -i '/(CONFIG_VIDEO_CPIA_USB)/d' ./drivers/media/video/Makefile
184 sed -i '/(CONFIG_VIDEO_CPIA2)/d' ./drivers/media/video/Makefile
186 # USB_DABUSB - DABUSB driver
187 rm -v drivers/media/video/dabfirmware.h
188 clean_kconfig ./drivers/media/Kconfig 'USB_DABUSB'
189 sed -i '/(CONFIG_USB_DABUSB)/d' ./drivers/media/video/Makefile
193 # USB_IBMCAM - USB IBM (Xirlink) C-it Camera support
194 rm -v drivers/media/video/usbvideo/ibmcam.c
195 clean_kconfig ./drivers/media/video/usbvideo/Kconfig 'USB_IBMCAM'
196 sed -i '/(CONFIG_USB_IBMCAM)/d' ./drivers/media/video/usbvideo/Makefile
198 # USB_VICAM - USB 3com HomeConnect (aka vicam)
199 rm -v drivers/media/video/usbvideo/vicam.c
200 clean_kconfig ./drivers/media/video/usbvideo/Kconfig 'USB_VICAM'
201 sed -i '/(CONFIG_USB_VICAM)/d' ./drivers/media/video/usbvideo/Makefile
205 # disable -- appears to neeed other DVB bits
206 sed -i '/CONFIG_DVB_CORE/d' ./drivers/media/Makefile
207 sed -i '/CONFIG_VIDEOBUF_DVB/d' ./drivers/media/video/Makefile
208 sed -i '/CONFIG_VIDEO_SAA7134/d' ./drivers/media/video/Makefile
209 sed -i '/CONFIG_VIDEO_CX88/d' ./drivers/media/video/Makefile
210 clean_kconfig ./drivers/media/Kconfig 'VIDEOBUF_DVB'
212 #######################
213 # Removed net Drivers #
214 #######################
217 # ACENIC - Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit
218 rm -v drivers/net/acenic_firmware.h
219 clean_kconfig ./drivers/net/Kconfig 'ACENIC'
220 sed -i '/(CONFIG_ACENIC)/d' ./drivers/net/Makefile
222 # ADAPTEC_STARFIRE - Adaptec Starfire/DuraLAN support
223 rm -v drivers/net/starfire_firmware.h
224 clean_kconfig ./drivers/net/Kconfig 'ADAPTEC_STARFIRE'
225 sed -i '/(CONFIG_ADAPTEC_STARFIRE)/d' ./drivers/net/Makefile
227 # BNX2 - Broadcom NetXtremeII
228 rm -v drivers/net/bnx2_fw.h
229 rm -v drivers/net/bnx2_fw2.h
230 clean_kconfig ./drivers/net/Kconfig 'BNX2'
231 sed -i '/(CONFIG_BNX2)/d' ./drivers/net/Makefile
233 # CASSINI - Sun Cassini
234 rm -v drivers/net/cassini.h
235 clean_kconfig ./drivers/net/Kconfig 'CASSINI'
236 sed -i '/(CONFIG_CASSINI)/d' ./drivers/net/Makefile
238 # E100 - Intel(R) PRO/100+
239 rm -v drivers/net/e100.c
240 clean_kconfig ./drivers/net/Kconfig 'E100'
241 sed -i '/(CONFIG_E100)/d' ./drivers/net/Makefile
243 # MYRI_SBUS - MyriCOM Gigabit Ethernet
244 rm -v drivers/net/myri_code.h
245 clean_kconfig ./drivers/net/Kconfig 'MYRI_SBUS'
246 sed -i '/(CONFIG_MYRI_SBUS)/d' ./drivers/net/Makefile
248 # TEHUTI - Tehuti Networks 10G Ethernet
249 rm -v drivers/net/tehuti_fw.h
250 clean_kconfig ./drivers/net/Kconfig 'TYPHOON'
251 sed -i '/(CONFIG_TEHUTI)/d' ./drivers/net/Makefile
253 # TIGON3 - Broadcom Tigon3
254 patch -p1 <<\EOF # patches/linux-2.6-tg3-clean.patch
255 --- linux-2.6.24/drivers/net/tg3.c 2008-01-24 15:58:37.000000000 -0700
256 +++ linux-libre-2.6.24/drivers/net/tg3.c 2008-01-26 12:30:41.000000000 -0700
258 * Copyright (C) 2001, 2002, 2003 Jeff Garzik (jgarzik@pobox.com)
259 * Copyright (C) 2004 Sun Microsystems Inc.
260 * Copyright (C) 2005-2007 Broadcom Corporation.
263 - * Derived from proprietary unpublished source code,
264 - * Copyright (C) 2000-2003 Broadcom Corporation.
266 - * Permission is hereby granted for the distribution of this firmware
267 - * data in hexadecimal or equivalent format, provided this copyright
268 - * notice is accompanying it.
272 @@ -5371,6 +5363,7 @@
277 #define TG3_FW_RELEASE_MAJOR 0x0
278 #define TG3_FW_RELASE_MINOR 0x0
279 #define TG3_FW_RELEASE_FIX 0x0
280 @@ -5494,6 +5487,7 @@
281 0x00000000, 0x00000000, 0x00000000, 0x00000000
284 +#endif /* REMOVE_FW */
286 #define RX_CPU_SCRATCH_BASE 0x30000
287 #define RX_CPU_SCRATCH_SIZE 0x04000
288 @@ -5673,6 +5667,7 @@
293 #define TG3_TSO_FW_RELEASE_MAJOR 0x1
294 #define TG3_TSO_FW_RELASE_MINOR 0x6
295 #define TG3_TSO_FW_RELEASE_FIX 0x0
296 @@ -6175,6 +6170,7 @@
297 0x00000000, 0x73746b6f, 0x66666c64, 0x5f76312e, 0x322e3000, 0x00000000,
298 0x00000000, 0x00000000, 0x00000000,
300 +#endif /* REMOVE_FW */
302 /* tp->lock is held. */
303 static int tg3_load_tso_firmware(struct tg3 *tp)
305 #sed -i -e '/^#ifdef REMOVE_FW/,/^#endif.*REMOVE_FW/d' drivers/net/tg3.c
306 unifdef drivers/net/tg3.c -UREMOVE_FW > drivers/net/tg3.c-unifdef
307 mv drivers/net/tg3.c-unifdef drivers/net/tg3.c
309 # TYPHOON - 3cr990 series Typhoon
310 rm -v drivers/net/typhoon-firmware.h
311 clean_kconfig ./drivers/net/Kconfig 'TYPHOON'
312 sed -i '/(CONFIG_TYPHOON)/d' ./drivers/net/Makefile
316 # COPS - COPS LocalTalk PC
317 rm -v drivers/net/appletalk/cops.c
318 rm -v drivers/net/appletalk/cops.h
319 rm -v drivers/net/appletalk/cops_ffdrv.h
320 rm -v drivers/net/appletalk/cops_ltdrv.h
321 clean_kconfig ./drivers/net/appletalk/Kconfig 'COPS|COPS_DAYNA|COPS_TANGENT'
322 sed -i '/(CONFIG_COPS)/d' ./drivers/net/appletalk/Makefile
326 # YAM - YAM driver for AX.25
327 rm -v drivers/net/hamradio/yam1200.h
328 rm -v drivers/net/hamradio/yam9600.h
329 clean_kconfig ./drivers/net/hamradio/Kconfig 'YAM'
330 sed -i '/(CONFIG_YAM)/d' ./drivers/net/hamradio/Makefile
334 # PCMCIA_SMC91C92 - SMC 91Cxx PCMCIA
335 rm -v drivers/net/pcmcia/ositech.h
336 clean_kconfig ./drivers/net/pcmcia/Kconfig 'PCMCIA_SMC91C92'
337 sed -i '/(CONFIG_PCMCIA_SMC91C92)/d' ./drivers/net/pcmcia/Makefile
342 # 3C359 - 3Com 3C359 Token Link Velocity XL adapter
343 rm -v drivers/net/tokenring/3c359.c
344 rm -v drivers/net/tokenring/3c359.h
345 rm -v drivers/net/tokenring/3c359_microcode.h
346 clean_kconfig ./drivers/net/tokenring/Kconfig '3C359'
347 sed -i '/(CONFIG_3C359)/d' ./drivers/net/tokenring/Makefile
349 # SMCTR - SMC ISA/MCA adapter
350 rm -v drivers/net/tokenring/smctr.c
351 rm -v drivers/net/tokenring/smctr.h
352 rm -v drivers/net/tokenring/smctr_firmware.h
353 clean_kconfig ./drivers/net/tokenring/Kconfig 'SMCTR'
354 sed -i '/(CONFIG_SMCTR)/d' ./drivers/net/tokenring/Makefile
358 # USB_KAWETH - USB KLSI KL5USB101-based ethernet device support
359 rm -v drivers/net/usb/kawethfw.h
360 clean_kconfig ./drivers/net/usb/Kconfig 'USB_KAWETH'
361 sed -i '/(CONFIG_USB_KAWETH)/d' ./drivers/net/usb/Makefile
364 ########################
365 # Removed s390 Drivers #
366 ########################
368 # QETH - Gigabit Ethernet device support
369 rm -v drivers/s390/net/qeth_mpc.c
370 clean_kconfig ./drivers/s390/net/Kconfig 'QETH'
371 sed -i '/(CONFIG_QETH)/d' ./drivers/s390/net/Makefile
373 ########################
374 # Removed SCSI Drivers #
375 ########################
377 # SCSI_QLOGICPTI - PTI Qlogic, ISP Driver
378 rm -v drivers/scsi/qlogicpti_asm.c
379 clean_kconfig ./drivers/scsi/Kconfig 'SCSI_QLOGICPTI'
380 sed -i '/(CONFIG_SCSI_QLOGICPTI)/d' ./drivers/scsi/Makefile
382 # SCSI_ADVANSYS - AdvanSys SCSI
383 rm -v drivers/scsi/advansys.c
384 clean_kconfig ./drivers/scsi/Kconfig 'SCSI_ADVANSYS'
385 sed -i '/(CONFIG_SCSI_ADVANSYS)/d' ./drivers/scsi/Makefile
387 # SCSI_QLOGIC_1280 - Qlogic QLA 1240/1x80/1x160 SCSI
388 rm -v drivers/scsi/ql1280_fw.h
389 rm -v drivers/scsi/ql1040_fw.h
390 rm -v drivers/scsi/ql12160_fw.h
391 clean_kconfig ./drivers/scsi/Kconfig 'SCSI_QLOGIC_1280'
392 sed -i '/(CONFIG_SCSI_QLOGIC_1280)/d' ./drivers/scsi/Makefile
395 #######################
396 # Removed USB Drivers #
397 #######################
401 # USB_EMI26 - EMI 2|6 USB Audio interface
402 rm -v drivers/usb/misc/emi26.c
403 rm -v drivers/usb/misc/emi26_fw.h
404 clean_kconfig ./drivers/usb/misc/Kconfig 'USB_EMI26'
405 sed -i '/(CONFIG_USB_EMI26)/d' ./drivers/usb/misc/Makefile
407 # USB_EMI62 - EMI 6|2m USB Audio interface
408 rm -v drivers/usb/misc/emi62.c
409 rm -v drivers/usb/misc/emi62_fw_m.h
410 rm -v drivers/usb/misc/emi62_fw_s.h
411 clean_kconfig ./drivers/usb/misc/Kconfig 'USB_EMI62'
412 sed -i '/(CONFIG_USB_EMI62)/d' ./drivers/usb/misc/Makefile
414 # USB_SISUSBVGA - USB 2.0 SVGA dongle support (Net2280/SiS315)
415 rm -v drivers/usb/misc/sisusbvga/sisusb_init.h
416 clean_kconfig ./drivers/usb/misc/sisusbvga/Kconfig 'USB_SISUSBVGA'
417 sed -i '/(CONFIG_USB_SISUSBVGA)/d' ./drivers/usb/misc/sisusbvga/Makefile
421 # USB_SERIAL_KEYSPAN_MPR - USB Keyspan MPR Firmware
422 rm -v drivers/usb/serial/keyspan_mpr_fw.h
423 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_MPR'
424 # USB_SERIAL_KEYSPAN_USA18X - USB Keyspan USA-18X Firmware
425 rm -v drivers/usb/serial/keyspan_usa18x_fw.h
426 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA18X'
427 # USB_SERIAL_KEYSPAN_USA19 - USB Keyspan USA-19 Firmware
428 rm -v drivers/usb/serial/keyspan_usa19_fw.h
429 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA19'
430 # USB_SERIAL_KEYSPAN_USA19QI - USB Keyspan USA-19QI Firmware
431 rm -v drivers/usb/serial/keyspan_usa19qi_fw.h
432 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA19QI'
433 # USB_SERIAL_KEYSPAN_USA19QW - USB Keyspan USA-19QW Firmware
434 rm -v drivers/usb/serial/keyspan_usa19qw_fw.h
435 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA19QW'
436 # USB_SERIAL_KEYSPAN_USA19W - USB Keyspan USA-19W Firmware
437 rm -v drivers/usb/serial/keyspan_usa19w_fw.h
438 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA19W'
439 # USB_SERIAL_KEYSPAN_USA28 - USB Keyspan USA-28 Firmware
440 rm -v drivers/usb/serial/keyspan_usa28_fw.h
441 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA28'
442 # USB_SERIAL_KEYSPAN_USA28XA - USB Keyspan USA-28XA Firmware
443 rm -v drivers/usb/serial/keyspan_usa28xa_fw.h
444 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA28XA'
445 # USB_SERIAL_KEYSPAN_USA28XB - USB Keyspan USA-28XB Firmware
446 rm -v drivers/usb/serial/keyspan_usa28xb_fw.h
447 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA28XB'
448 # USB_SERIAL_KEYSPAN_USA28X - USB Keyspan USA-28X Firmware
449 rm -v drivers/usb/serial/keyspan_usa28x_fw.h
450 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA28X'
451 # USB_SERIAL_KEYSPAN_USA49W - USB Keyspan USA-49W Firmware
452 rm -v drivers/usb/serial/keyspan_usa49w_fw.h
453 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA49W'
454 # USB_SERIAL_KEYSPAN_USA49WLC - USB Keyspan USA-49WLC Firmware
455 rm -v drivers/usb/serial/keyspan_usa49wlc_fw.h
456 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA49WLC'
457 sed -i '/(CONFIG_USB_SERIAL_KEYSPAN)/d' ./drivers/usb/serial/Makefile
459 # USB_SERIAL_EDGEPORT - USB Inside Out Edgeport Serial Driver
460 rm -v drivers/usb/serial/io_fw_boot.h
461 rm -v drivers/usb/serial/io_fw_down.h
462 rm -v drivers/usb/serial/io_fw_down2.h
463 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_EDGEPORT'
464 sed -i '/(CONFIG_USB_SERIAL_EDGEPORT)/d' ./drivers/usb/serial/Makefile
466 # USB_SERIAL_EDGEPORT_TI - USB Inside Out Edgeport Serial Driver (TI devices)
467 rm -v drivers/usb/serial/io_fw_boot2.h
468 rm -v drivers/usb/serial/io_fw_down3.h
469 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_EDGEPORT_TI'
470 sed -i '/(CONFIG_USB_SERIAL_EDGEPORT_TI)/d' ./drivers/usb/serial/Makefile
472 # USB_SERIAL_TI - USB TI 3410/5052 Serial Driver
473 rm -v drivers/usb/serial/ti_fw_3410.h
474 rm -v drivers/usb/serial/ti_fw_5052.h
475 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_TI'
476 sed -i '/(CONFIG_USB_SERIAL_TI)/d' ./drivers/usb/serial/Makefile
478 # USB_SERIAL_WHITEHEAT - USB ConnectTech WhiteHEAT Serial Driver
479 rm -v drivers/usb/serial/whiteheat_fw.h
480 clean_kconfig ./drivers/usb/serial/Kconfig 'USB_SERIAL_WHITEHEAT'
481 sed -i '/(CONFIG_USB_SERIAL_WHITEHEAT)/d' ./drivers/usb/serial/Makefile
484 #########################
485 # Removed video Drivers #
486 #########################
488 # FB_ASILIANT - Asiliant (Chips) 69000 display support
489 rm -v drivers/video/asiliantfb.c
490 clean_kconfig ./drivers/video/Kconfig 'FB_ASILIANT'
491 sed -i '/(CONFIG_FB_ASILIANT)/d' ./drivers/video/Makefile
493 # FB_CT65550 - Chips 65550 display support
494 rm -v drivers/video/chipsfb.c
495 clean_kconfig ./drivers/video/Kconfig 'FB_CT65550'
496 sed -i '/(CONFIG_FB_CT65550)/d' ./drivers/video/Makefile
499 #########################
500 # Removed Sound Drivers #
501 #########################
503 # SND_CS46XX - Cirrus Logic (Sound Fusion) CS4280/CS461x/CS462x/CS463x
504 rm -v sound/pci/cs46xx/cs46xx_image.h
505 rm -v sound/pci/cs46xx/imgs/cwc4630.h
506 rm -v sound/pci/cs46xx/imgs/cwcasync.h
507 rm -v sound/pci/cs46xx/imgs/cwcdma.h
508 rm -v sound/pci/cs46xx/imgs/cwcsnoop.h
509 clean_kconfig ./sound/pci/Kconfig 'SND_CS46XX'
510 sed -i '/cs46xx\/ \\/d' ./sound/pci/Makefile
512 # SND_KORG1212 - Korg 1212 IO
513 unifdef sound/pci/korg1212/korg1212.c -UCONFIG_SND_KORG1212_FIRMWARE_IN_KERNEL > sound/pci/korg1212/korg1212.c-unifdef
514 mv sound/pci/korg1212/korg1212.c-unifdef sound/pci/korg1212/korg1212.c
515 rm -v sound/pci/korg1212/korg1212-firmware.h
517 # SND_MAESTRO3 - ESS Allegro/Maestro3
518 unifdef sound/pci/maestro3.c -UCONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL > sound/pci/maestro3.c-unifdef
519 mv sound/pci/maestro3.c-unifdef sound/pci/maestro3.c
521 # SND_YMFPCI - Yamaha YMF724/740/744/754
522 rm -v sound/pci/ymfpci/ymfpci_image.h
523 unifdef sound/pci/ymfpci/ymfpci_main.c -UCONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL > sound/pci/ymfpci/ymfpci_main.c-unifdef
524 mv sound/pci/ymfpci/ymfpci_main.c-unifdef sound/pci/ymfpci/ymfpci_main.c
531 # This is not removed in debian nor gnewsense nor do I think
532 # it should be removed. It's on debian's list to check out
533 # I think it points at firmware, but doesn't contain any
534 # (e.g. if you add the file yss225_registers.bin it will use it)
535 # rm -v sound/isa/wavefront/wavefront_fx.c
537 # VIDEO_STRADIS - Stradis 4:2:2 MPEG-2 video driver
538 # This just sets a few values and a bunch of zeros. It doesn't look like
539 # it was done by anything that would have upstream source code. This should
540 # probably be kept. It's removed in gnewsense, but not even mentioned
541 # by debian as potential candidate. It is used by stratis.c
542 # rm -v drivers/media/video/cs8420.h
544 # gnewsense removes drivers/serial/jsm/jsm_neo.c but vanilla version looks ok
546 # Not in kernel 2.6.23
547 # drivers/scsi/qla2xxx/ql2100_fw.c
548 # drivers/scsi/qla2xxx/ql2200_fw.c
549 # drivers/scsi/qla2xxx/ql2300_fw.c
550 # drivers/scsi/qla2xxx/ql2322_fw.c
551 # drivers/scsi/qla2xxx/ql2400_fw.c
552 # drivers/usb/net/kawethfw.h
553 # sound/isa/sb/sb16/sb16_csp_codecs.h
555 # drivers/scsi/53c7xx_d.h_shipped 53c7xx.scr
556 # sound/pci/cs46xx/imgs/cwcemb80.h
558 # Not in kernel 2.6.24
559 # drivers/net/dgrs_firmware.c
561 # blobs but free source available (source listed 2nd)
562 # drivers/char/ser_a2232fw.h ser_a2232fw.ax
563 # drivers/net/ixp2000/ixp2400_rx.ucode ixp2400_rx.uc
564 # drivers/net/ixp2000/ixp2400_tx.ucode ixp2400_rx.uc
565 # drivers/net/wan/wanxlfw.inc_shipped wanxlfw.S
566 # drivers/net/wireless/atmel.c atmel.c
567 # drivers/scsi/53c700_d.h_shipped 53c700.scr
568 # drivers/scsi/aic7xxx/aic79xx_seq.h_shipped aic79xx.seq
569 # drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped aic7xxx.seq
570 # drivers/scsi/aic7xxx_old/aic7xxx_seq.c aic7xxx.seq
571 # drivers/scsi/sym53c8xx_2/sym_fw1.h sym_fw1.h
572 # drivers/scsi/sym53c8xx_2/sym_fw2.h sym_fw2.h
573 # drivers/usb/serial/keyspan_pda_fw.h keyspan_pda.S
574 # drivers/usb/serial/xircom_pgs_fw.h xircom_pgs.S