Deal with SB16 and Wavefront in-kernel firmware.
authorlxoliva <lxoliva@559672b5-ba27-0410-b829-e8f1faed8b1b>
Wed, 16 Jul 2008 09:31:14 +0000 (09:31 +0000)
committerlxoliva <lxoliva@559672b5-ba27-0410-b829-e8f1faed8b1b>
Wed, 16 Jul 2008 09:31:14 +0000 (09:31 +0000)
Check for presence of files containing blobs and corresponding sources.
Clarify why drivers/media/video/cs8420.h is accepted.
Don't accept SB16 firmware any more.
Handle */patch-* as patch as well.
New matches for 2.6.27.

git-svn-id: http://www.fsfla.org/svn/fsfla/software/linux-libre/scripts@3927 559672b5-ba27-0410-b829-e8f1faed8b1b

deblob-2.6.23
deblob-2.6.24
deblob-2.6.25
deblob-2.6.26
deblob-2.6.27
deblob-check

index daf15b017df673d3c2b0f930dd99868055a6e9f8..959d2ad589607b99e253db05dec21c7fde35601f 100755 (executable)
@@ -40,7 +40,7 @@
 
 # For each kver release, start extra with an empty string, then count
 # from 1 if changes are needed that require rebuilding the tarball.
-kver=2.6.23 extra=2
+kver=2.6.23 extra=3
 
 sed -i "s,^EXTRAVERSION.*,EXTRAVERSION = -libre$extra," Makefile
 
@@ -128,6 +128,49 @@ function clean_ifdef {
        check_changed $1
 }
 
+
+# First, check that files that contain firmwares and their
+# corresponding sources are present.
+
+for f in \
+  drivers/char/ser_a2232fw.h \
+    drivers/char/ser_a2232fw.ax \
+  drivers/net/ixp2000/ixp2400_rx.ucode \
+    drivers/net/ixp2000/ixp2400_rx.uc \
+  drivers/net/ixp2000/ixp2400_tx.ucode \
+    drivers/net/ixp2000/ixp2400_rx.uc \
+  drivers/net/wan/wanxlfw.inc_shipped \
+    drivers/net/wan/wanxlfw.S \
+  drivers/net/wireless/atmel.c \
+    drivers/net/wireless/atmel.c \
+  drivers/scsi/53c700_d.h_shipped \
+    drivers/scsi/53c700.scr \
+  drivers/scsi/aic7xxx/aic79xx_seq.h_shipped \
+    drivers/scsi/aic7xxx/aic79xx.seq \
+  drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped \
+    drivers/scsi/aic7xxx/aic7xxx.seq \
+  drivers/scsi/aic7xxx_old/aic7xxx_seq.c \
+    drivers/scsi/aic7xxx_old/aic7xxx.seq \
+  drivers/scsi/53c7xx_d.h_shipped \
+    drivers/scsi/53c7xx.scr \
+  drivers/scsi/sym53c8xx_2/sym_fw1.h \
+    drivers/scsi/sym53c8xx_2/sym_fw1.h \
+  drivers/scsi/sym53c8xx_2/sym_fw2.h \
+    drivers/scsi/sym53c8xx_2/sym_fw2.h \
+  drivers/usb/serial/keyspan_pda_fw.h \
+    drivers/usb/serial/keyspan_pda.S \
+  drivers/usb/serial/xircom_pgs_fw.h \
+    drivers/usb/serial/xircom_pgs.S \
+  sound/pci/cs46xx/imgs/cwcbinhack.h \
+    sound/pci/cs46xx/imgs/cwcdma.asp \
+; do
+  if test ! $f; then
+    echo $f is not present, something is amiss >&2
+    exit 1
+  fi
+done
+
+
 #######################
 # Removed ATM Drivers #
 #######################
@@ -584,50 +627,14 @@ clean_ifdef sound/pci/maestro3.c CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL
 clean_blob sound/pci/ymfpci/ymfpci_image.h
 clean_ifdef sound/pci/ymfpci/ymfpci_main.c CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL
 
+# SND_SB16_CSP_FIRMWARE_IN_KERNEL - SB16 Advanced Signal Processor
+clean_blob sound/isa/sb/sb16_csp_codecs.h
+clean_kconfig sound/isa/Kconfig SND_SB16_CSP_FIRMWARE_IN_KERNEL
 
-###############
-# Not Removed #
-###############
-
-# This is not removed in debian nor gnewsense nor do I think
-# it should be removed. It's on debian's list to check out
-# I think it points at firmware, but doesn't contain any
-# (e.g. if you add the file yss225_registers.bin it will use it)
-# clean_blob sound/isa/wavefront/wavefront_fx.c
-
-# VIDEO_STRADIS - Stradis 4:2:2 MPEG-2 video driver
-# This just sets a few values and a bunch of zeros. It doesn't look like
-# it was done by anything that would have upstream source code. This should 
-# probably be kept. It's removed in gnewsense, but not even mentioned
-# by debian as potential candidate. It is used by stratis.c
-# clean_blob drivers/media/video/cs8420.h
-
-# gnewsense removes drivers/serial/jsm/jsm_neo.c but vanilla version looks ok
-
-# Not in kernel 2.6.23
-# drivers/scsi/qla2xxx/ql2100_fw.c
-# drivers/scsi/qla2xxx/ql2200_fw.c
-# drivers/scsi/qla2xxx/ql2300_fw.c
-# drivers/scsi/qla2xxx/ql2322_fw.c
-# drivers/scsi/qla2xxx/ql2400_fw.c
-# drivers/usb/net/kawethfw.h
-# sound/isa/sb/sb16/sb16_csp_codecs.h
-# sound/oss/yss225.c
-# drivers/scsi/53c7xx_d.h_shipped 53c7xx.scr
-# sound/pci/cs46xx/imgs/cwcemb80.h
-
-# blobs but free source available (source listed 2nd)
-# drivers/char/ser_a2232fw.h                           ser_a2232fw.ax
-# drivers/net/ixp2000/ixp2400_rx.ucode                 ixp2400_rx.uc
-# drivers/net/ixp2000/ixp2400_tx.ucode                 ixp2400_rx.uc
-# drivers/net/wan/wanxlfw.inc_shipped                  wanxlfw.S
-# drivers/net/wireless/atmel.c                         atmel.c
-# drivers/scsi/53c700_d.h_shipped                      53c700.scr
-# drivers/scsi/aic7xxx/aic79xx_seq.h_shipped           aic79xx.seq
-# drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped           aic7xxx.seq
-# drivers/scsi/aic7xxx_old/aic7xxx_seq.c               aic7xxx.seq
-# drivers/scsi/sym53c8xx_2/sym_fw1.h                   sym_fw1.h
-# drivers/scsi/sym53c8xx_2/sym_fw2.h                   sym_fw2.h
-# drivers/usb/serial/keyspan_pda_fw.h                  keyspan_pda.S
-# drivers/usb/serial/xircom_pgs_fw.h                   xircom_pgs.S
+# SND_WAVEFRONT_FIRMWARE_IN_KERNEL
+# Most of this file is not matched by deblob-check because of WAIT_IDLE.
+# Just remove it.
+clean_file sound/isa/wavefront/yss225.c
+clean_kconfig sound/isa/Kconfig SND_WAVEFRONT_FIRMWARE_IN_KERNEL
 
+exit 0
index 510d00a1706c7f48be056f0b5435a4b425c6e87a..45708219596bb96c10153e139a76a98dfe8f4a21 100755 (executable)
@@ -40,7 +40,7 @@
 
 # For each kver release, start extra with an empty string, then count
 # from 1 if changes are needed that require rebuilding the tarball.
-kver=2.6.24 extra=2
+kver=2.6.24 extra=3
 
 sed -i "s,^EXTRAVERSION.*,EXTRAVERSION = -libre$extra," Makefile
 
@@ -128,6 +128,49 @@ function clean_ifdef {
        check_changed $1
 }
 
+
+# First, check that files that contain firmwares and their
+# corresponding sources are present.
+
+for f in \
+  drivers/char/ser_a2232fw.h \
+    drivers/char/ser_a2232fw.ax \
+  drivers/net/ixp2000/ixp2400_rx.ucode \
+    drivers/net/ixp2000/ixp2400_rx.uc \
+  drivers/net/ixp2000/ixp2400_tx.ucode \
+    drivers/net/ixp2000/ixp2400_rx.uc \
+  drivers/net/wan/wanxlfw.inc_shipped \
+    drivers/net/wan/wanxlfw.S \
+  drivers/net/wireless/atmel.c \
+    drivers/net/wireless/atmel.c \
+  drivers/scsi/53c700_d.h_shipped \
+    drivers/scsi/53c700.scr \
+  drivers/scsi/aic7xxx/aic79xx_seq.h_shipped \
+    drivers/scsi/aic7xxx/aic79xx.seq \
+  drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped \
+    drivers/scsi/aic7xxx/aic7xxx.seq \
+  drivers/scsi/aic7xxx_old/aic7xxx_seq.c \
+    drivers/scsi/aic7xxx_old/aic7xxx.seq \
+  drivers/scsi/53c7xx_d.h_shipped \
+    drivers/scsi/53c7xx.scr \
+  drivers/scsi/sym53c8xx_2/sym_fw1.h \
+    drivers/scsi/sym53c8xx_2/sym_fw1.h \
+  drivers/scsi/sym53c8xx_2/sym_fw2.h \
+    drivers/scsi/sym53c8xx_2/sym_fw2.h \
+  drivers/usb/serial/keyspan_pda_fw.h \
+    drivers/usb/serial/keyspan_pda.S \
+  drivers/usb/serial/xircom_pgs_fw.h \
+    drivers/usb/serial/xircom_pgs.S \
+  sound/pci/cs46xx/imgs/cwcbinhack.h \
+    sound/pci/cs46xx/imgs/cwcdma.asp \
+; do
+  if test ! $f; then
+    echo $f is not present, something is amiss >&2
+    exit 1
+  fi
+done
+
+
 #######################
 # Removed ATM Drivers #
 #######################
@@ -584,53 +627,14 @@ clean_ifdef sound/pci/maestro3.c CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL
 clean_blob sound/pci/ymfpci/ymfpci_image.h
 clean_ifdef sound/pci/ymfpci/ymfpci_main.c CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL
 
+# SND_SB16_CSP_FIRMWARE_IN_KERNEL - SB16 Advanced Signal Processor
+clean_blob sound/isa/sb/sb16_csp_codecs.h
+clean_kconfig sound/isa/Kconfig SND_SB16_CSP_FIRMWARE_IN_KERNEL
 
-###############
-# Not Removed #
-###############
-
-# This is not removed in debian nor gnewsense nor do I think
-# it should be removed. It's on debian's list to check out
-# I think it points at firmware, but doesn't contain any
-# (e.g. if you add the file yss225_registers.bin it will use it)
-# clean_blob sound/isa/wavefront/wavefront_fx.c
-
-# VIDEO_STRADIS - Stradis 4:2:2 MPEG-2 video driver
-# This just sets a few values and a bunch of zeros. It doesn't look like
-# it was done by anything that would have upstream source code. This should 
-# probably be kept. It's removed in gnewsense, but not even mentioned
-# by debian as potential candidate. It is used by stratis.c
-# clean_blob drivers/media/video/cs8420.h
-
-# gnewsense removes drivers/serial/jsm/jsm_neo.c but vanilla version looks ok
-
-# Not in kernel 2.6.23
-# drivers/scsi/qla2xxx/ql2100_fw.c
-# drivers/scsi/qla2xxx/ql2200_fw.c
-# drivers/scsi/qla2xxx/ql2300_fw.c
-# drivers/scsi/qla2xxx/ql2322_fw.c
-# drivers/scsi/qla2xxx/ql2400_fw.c
-# drivers/usb/net/kawethfw.h
-# sound/isa/sb/sb16/sb16_csp_codecs.h
-# sound/oss/yss225.c
-# drivers/scsi/53c7xx_d.h_shipped 53c7xx.scr
-# sound/pci/cs46xx/imgs/cwcemb80.h
-
-# Not in kernel 2.6.24
-# drivers/net/dgrs_firmware.c
-
-# blobs but free source available (source listed 2nd)
-# drivers/char/ser_a2232fw.h                           ser_a2232fw.ax
-# drivers/net/ixp2000/ixp2400_rx.ucode                 ixp2400_rx.uc
-# drivers/net/ixp2000/ixp2400_tx.ucode                 ixp2400_rx.uc
-# drivers/net/wan/wanxlfw.inc_shipped                  wanxlfw.S
-# drivers/net/wireless/atmel.c                         atmel.c
-# drivers/scsi/53c700_d.h_shipped                      53c700.scr
-# drivers/scsi/aic7xxx/aic79xx_seq.h_shipped           aic79xx.seq
-# drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped           aic7xxx.seq
-# drivers/scsi/aic7xxx_old/aic7xxx_seq.c               aic7xxx.seq
-# drivers/scsi/sym53c8xx_2/sym_fw1.h                   sym_fw1.h
-# drivers/scsi/sym53c8xx_2/sym_fw2.h                   sym_fw2.h
-# drivers/usb/serial/keyspan_pda_fw.h                  keyspan_pda.S
-# drivers/usb/serial/xircom_pgs_fw.h                   xircom_pgs.S
+# SND_WAVEFRONT_FIRMWARE_IN_KERNEL
+# Most of this file is not matched by deblob-check because of WAIT_IDLE.
+# Just remove it.
+clean_file sound/isa/wavefront/yss225.c
+clean_kconfig sound/isa/Kconfig SND_WAVEFRONT_FIRMWARE_IN_KERNEL
 
+exit 0
index eeef0aebcd7b03054426bb28ef2cf3ff3626aa1e..451d53c3d45cfab914523e23cccb3f5fc853db84 100755 (executable)
@@ -40,7 +40,7 @@
 
 # For each kver release, start extra with an empty string, then count
 # from 1 if changes are needed that require rebuilding the tarball.
-kver=2.6.25 extra=2
+kver=2.6.25 extra=3
 
 sed -i "s,^EXTRAVERSION.*,EXTRAVERSION = -libre$extra," Makefile
 
@@ -128,6 +128,49 @@ function clean_ifdef {
        check_changed $1
 }
 
+
+# First, check that files that contain firmwares and their
+# corresponding sources are present.
+
+for f in \
+  drivers/char/ser_a2232fw.h \
+    drivers/char/ser_a2232fw.ax \
+  drivers/net/ixp2000/ixp2400_rx.ucode \
+    drivers/net/ixp2000/ixp2400_rx.uc \
+  drivers/net/ixp2000/ixp2400_tx.ucode \
+    drivers/net/ixp2000/ixp2400_rx.uc \
+  drivers/net/wan/wanxlfw.inc_shipped \
+    drivers/net/wan/wanxlfw.S \
+  drivers/net/wireless/atmel.c \
+    drivers/net/wireless/atmel.c \
+  drivers/scsi/53c700_d.h_shipped \
+    drivers/scsi/53c700.scr \
+  drivers/scsi/aic7xxx/aic79xx_seq.h_shipped \
+    drivers/scsi/aic7xxx/aic79xx.seq \
+  drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped \
+    drivers/scsi/aic7xxx/aic7xxx.seq \
+  drivers/scsi/aic7xxx_old/aic7xxx_seq.c \
+    drivers/scsi/aic7xxx_old/aic7xxx.seq \
+  drivers/scsi/53c7xx_d.h_shipped \
+    drivers/scsi/53c7xx.scr \
+  drivers/scsi/sym53c8xx_2/sym_fw1.h \
+    drivers/scsi/sym53c8xx_2/sym_fw1.h \
+  drivers/scsi/sym53c8xx_2/sym_fw2.h \
+    drivers/scsi/sym53c8xx_2/sym_fw2.h \
+  drivers/usb/serial/keyspan_pda_fw.h \
+    drivers/usb/serial/keyspan_pda.S \
+  drivers/usb/serial/xircom_pgs_fw.h \
+    drivers/usb/serial/xircom_pgs.S \
+  sound/pci/cs46xx/imgs/cwcbinhack.h \
+    sound/pci/cs46xx/imgs/cwcdma.asp \
+; do
+  if test ! $f; then
+    echo $f is not present, something is amiss >&2
+    exit 1
+  fi
+done
+
+
 #######################
 # Removed ATM Drivers #
 #######################
@@ -588,53 +631,14 @@ clean_ifdef sound/pci/maestro3.c CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL
 clean_blob sound/pci/ymfpci/ymfpci_image.h
 clean_ifdef sound/pci/ymfpci/ymfpci_main.c CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL
 
+# SND_SB16_CSP_FIRMWARE_IN_KERNEL - SB16 Advanced Signal Processor
+clean_blob sound/isa/sb/sb16_csp_codecs.h
+clean_kconfig sound/isa/Kconfig SND_SB16_CSP_FIRMWARE_IN_KERNEL
 
-###############
-# Not Removed #
-###############
-
-# This is not removed in debian nor gnewsense nor do I think
-# it should be removed. It's on debian's list to check out
-# I think it points at firmware, but doesn't contain any
-# (e.g. if you add the file yss225_registers.bin it will use it)
-# clean_blob sound/isa/wavefront/wavefront_fx.c
-
-# VIDEO_STRADIS - Stradis 4:2:2 MPEG-2 video driver
-# This just sets a few values and a bunch of zeros. It doesn't look like
-# it was done by anything that would have upstream source code. This should 
-# probably be kept. It's removed in gnewsense, but not even mentioned
-# by debian as potential candidate. It is used by stratis.c
-# clean_blob drivers/media/video/cs8420.h
-
-# gnewsense removes drivers/serial/jsm/jsm_neo.c but vanilla version looks ok
-
-# Not in kernel 2.6.23
-# drivers/scsi/qla2xxx/ql2100_fw.c
-# drivers/scsi/qla2xxx/ql2200_fw.c
-# drivers/scsi/qla2xxx/ql2300_fw.c
-# drivers/scsi/qla2xxx/ql2322_fw.c
-# drivers/scsi/qla2xxx/ql2400_fw.c
-# drivers/usb/net/kawethfw.h
-# sound/isa/sb/sb16/sb16_csp_codecs.h
-# sound/oss/yss225.c
-# drivers/scsi/53c7xx_d.h_shipped 53c7xx.scr
-# sound/pci/cs46xx/imgs/cwcemb80.h
-
-# Not in kernel 2.6.24
-# drivers/net/dgrs_firmware.c
-
-# blobs but free source available (source listed 2nd)
-# drivers/char/ser_a2232fw.h                           ser_a2232fw.ax
-# drivers/net/ixp2000/ixp2400_rx.ucode                 ixp2400_rx.uc
-# drivers/net/ixp2000/ixp2400_tx.ucode                 ixp2400_rx.uc
-# drivers/net/wan/wanxlfw.inc_shipped                  wanxlfw.S
-# drivers/net/wireless/atmel.c                         atmel.c
-# drivers/scsi/53c700_d.h_shipped                      53c700.scr
-# drivers/scsi/aic7xxx/aic79xx_seq.h_shipped           aic79xx.seq
-# drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped           aic7xxx.seq
-# drivers/scsi/aic7xxx_old/aic7xxx_seq.c               aic7xxx.seq
-# drivers/scsi/sym53c8xx_2/sym_fw1.h                   sym_fw1.h
-# drivers/scsi/sym53c8xx_2/sym_fw2.h                   sym_fw2.h
-# drivers/usb/serial/keyspan_pda_fw.h                  keyspan_pda.S
-# drivers/usb/serial/xircom_pgs_fw.h                   xircom_pgs.S
+# SND_WAVEFRONT_FIRMWARE_IN_KERNEL
+# Most of this file is not matched by deblob-check because of WAIT_IDLE.
+# Just remove it.
+clean_file sound/isa/wavefront/yss225.c
+clean_kconfig sound/isa/Kconfig SND_WAVEFRONT_FIRMWARE_IN_KERNEL
 
+exit 0
index 855dd095656efe537c02ab895a574e1ffccefb33..5954c510a126c7a961eb4583a6f4ebf4424ed306 100755 (executable)
@@ -40,7 +40,7 @@
 
 # For each kver release, start extra with an empty string, then count
 # from 1 if changes are needed that require rebuilding the tarball.
-kver=2.6.26 extra=
+kver=2.6.26 extra=1
 
 sed -i "s,^EXTRAVERSION.*,EXTRAVERSION = -libre$extra," Makefile
 
@@ -128,6 +128,49 @@ function clean_ifdef {
        check_changed $1
 }
 
+
+# First, check that files that contain firmwares and their
+# corresponding sources are present.
+
+for f in \
+  drivers/char/ser_a2232fw.h \
+    drivers/char/ser_a2232fw.ax \
+  drivers/net/ixp2000/ixp2400_rx.ucode \
+    drivers/net/ixp2000/ixp2400_rx.uc \
+  drivers/net/ixp2000/ixp2400_tx.ucode \
+    drivers/net/ixp2000/ixp2400_rx.uc \
+  drivers/net/wan/wanxlfw.inc_shipped \
+    drivers/net/wan/wanxlfw.S \
+  drivers/net/wireless/atmel.c \
+    drivers/net/wireless/atmel.c \
+  drivers/scsi/53c700_d.h_shipped \
+    drivers/scsi/53c700.scr \
+  drivers/scsi/aic7xxx/aic79xx_seq.h_shipped \
+    drivers/scsi/aic7xxx/aic79xx.seq \
+  drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped \
+    drivers/scsi/aic7xxx/aic7xxx.seq \
+  drivers/scsi/aic7xxx_old/aic7xxx_seq.c \
+    drivers/scsi/aic7xxx_old/aic7xxx.seq \
+  drivers/scsi/53c7xx_d.h_shipped \
+    drivers/scsi/53c7xx.scr \
+  drivers/scsi/sym53c8xx_2/sym_fw1.h \
+    drivers/scsi/sym53c8xx_2/sym_fw1.h \
+  drivers/scsi/sym53c8xx_2/sym_fw2.h \
+    drivers/scsi/sym53c8xx_2/sym_fw2.h \
+  drivers/usb/serial/keyspan_pda_fw.h \
+    drivers/usb/serial/keyspan_pda.S \
+  drivers/usb/serial/xircom_pgs_fw.h \
+    drivers/usb/serial/xircom_pgs.S \
+  sound/pci/cs46xx/imgs/cwcbinhack.h \
+    sound/pci/cs46xx/imgs/cwcdma.asp \
+; do
+  if test ! $f; then
+    echo $f is not present, something is amiss >&2
+    exit 1
+  fi
+done
+
+
 #######################
 # Removed ATM Drivers #
 #######################
@@ -588,53 +631,14 @@ clean_ifdef sound/pci/maestro3.c CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL
 clean_blob sound/pci/ymfpci/ymfpci_image.h
 clean_ifdef sound/pci/ymfpci/ymfpci_main.c CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL
 
+# SND_SB16_CSP_FIRMWARE_IN_KERNEL - SB16 Advanced Signal Processor
+clean_blob sound/isa/sb/sb16_csp_codecs.h
+clean_kconfig sound/isa/Kconfig SND_SB16_CSP_FIRMWARE_IN_KERNEL
 
-###############
-# Not Removed #
-###############
-
-# This is not removed in debian nor gnewsense nor do I think
-# it should be removed. It's on debian's list to check out
-# I think it points at firmware, but doesn't contain any
-# (e.g. if you add the file yss225_registers.bin it will use it)
-# clean_blob sound/isa/wavefront/wavefront_fx.c
-
-# VIDEO_STRADIS - Stradis 4:2:2 MPEG-2 video driver
-# This just sets a few values and a bunch of zeros. It doesn't look like
-# it was done by anything that would have upstream source code. This should 
-# probably be kept. It's removed in gnewsense, but not even mentioned
-# by debian as potential candidate. It is used by stratis.c
-# clean_blob drivers/media/video/cs8420.h
-
-# gnewsense removes drivers/serial/jsm/jsm_neo.c but vanilla version looks ok
-
-# Not in kernel 2.6.23
-# drivers/scsi/qla2xxx/ql2100_fw.c
-# drivers/scsi/qla2xxx/ql2200_fw.c
-# drivers/scsi/qla2xxx/ql2300_fw.c
-# drivers/scsi/qla2xxx/ql2322_fw.c
-# drivers/scsi/qla2xxx/ql2400_fw.c
-# drivers/usb/net/kawethfw.h
-# sound/isa/sb/sb16/sb16_csp_codecs.h
-# sound/oss/yss225.c
-# drivers/scsi/53c7xx_d.h_shipped 53c7xx.scr
-# sound/pci/cs46xx/imgs/cwcemb80.h
-
-# Not in kernel 2.6.24
-# drivers/net/dgrs_firmware.c
-
-# blobs but free source available (source listed 2nd)
-# drivers/char/ser_a2232fw.h                           ser_a2232fw.ax
-# drivers/net/ixp2000/ixp2400_rx.ucode                 ixp2400_rx.uc
-# drivers/net/ixp2000/ixp2400_tx.ucode                 ixp2400_rx.uc
-# drivers/net/wan/wanxlfw.inc_shipped                  wanxlfw.S
-# drivers/net/wireless/atmel.c                         atmel.c
-# drivers/scsi/53c700_d.h_shipped                      53c700.scr
-# drivers/scsi/aic7xxx/aic79xx_seq.h_shipped           aic79xx.seq
-# drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped           aic7xxx.seq
-# drivers/scsi/aic7xxx_old/aic7xxx_seq.c               aic7xxx.seq
-# drivers/scsi/sym53c8xx_2/sym_fw1.h                   sym_fw1.h
-# drivers/scsi/sym53c8xx_2/sym_fw2.h                   sym_fw2.h
-# drivers/usb/serial/keyspan_pda_fw.h                  keyspan_pda.S
-# drivers/usb/serial/xircom_pgs_fw.h                   xircom_pgs.S
+# SND_WAVEFRONT_FIRMWARE_IN_KERNEL
+# Most of this file is not matched by deblob-check because of WAIT_IDLE.
+# Just remove it.
+clean_file sound/isa/wavefront/yss225.c
+clean_kconfig sound/isa/Kconfig SND_WAVEFRONT_FIRMWARE_IN_KERNEL
 
+exit 0
index 97b99fce7a44043370ad2220bff4453b6c6b2390..488a552e985ee4b69c7e59144a7cba5cad5c6cf9 100755 (executable)
@@ -120,6 +120,49 @@ function clean_mk {
 }
 
 
+
+# First, check that files that contain firmwares and their
+# corresponding sources are present.
+
+for f in \
+  drivers/char/ser_a2232fw.h \
+    drivers/char/ser_a2232fw.ax \
+  drivers/net/ixp2000/ixp2400_rx.ucode \
+    drivers/net/ixp2000/ixp2400_rx.uc \
+  drivers/net/ixp2000/ixp2400_tx.ucode \
+    drivers/net/ixp2000/ixp2400_rx.uc \
+  drivers/net/wan/wanxlfw.inc_shipped \
+    drivers/net/wan/wanxlfw.S \
+  drivers/net/wireless/atmel.c \
+    drivers/net/wireless/atmel.c \
+  drivers/scsi/53c700_d.h_shipped \
+    drivers/scsi/53c700.scr \
+  drivers/scsi/aic7xxx/aic79xx_seq.h_shipped \
+    drivers/scsi/aic7xxx/aic79xx.seq \
+  drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped \
+    drivers/scsi/aic7xxx/aic7xxx.seq \
+  drivers/scsi/aic7xxx_old/aic7xxx_seq.c \
+    drivers/scsi/aic7xxx_old/aic7xxx.seq \
+  drivers/scsi/53c7xx_d.h_shipped \
+    drivers/scsi/53c7xx.scr \
+  drivers/scsi/sym53c8xx_2/sym_fw1.h \
+    drivers/scsi/sym53c8xx_2/sym_fw1.h \
+  drivers/scsi/sym53c8xx_2/sym_fw2.h \
+    drivers/scsi/sym53c8xx_2/sym_fw2.h \
+  drivers/usb/serial/keyspan_pda_fw.h \
+    drivers/usb/serial/keyspan_pda.S \
+  drivers/usb/serial/xircom_pgs_fw.h \
+    drivers/usb/serial/xircom_pgs.S \
+  sound/pci/cs46xx/imgs/cwcbinhack.h \
+    sound/pci/cs46xx/imgs/cwcdma.asp \
+; do
+  if test ! $f; then
+    echo $f is not present, something is amiss >&2
+    exit 1
+  fi
+done
+
+
 #######################
 # Removed ATM Drivers #
 #######################
@@ -543,9 +586,9 @@ clean_kconfig drivers/usb/serial/Kconfig 'USB_SERIAL_TI'
 clean_mk CONFIG_USB_SERIAL_TI drivers/usb/serial/Makefile
 
 # USB_SERIAL_WHITEHEAT - USB ConnectTech WhiteHEAT Serial Driver
-clean_file firmware/whiteheat.HEX
-clean_file firmware/whiteheat_loader.HEX
-clean_file firmware/whiteheat_loader_debug.HEX
+clean_blob firmware/whiteheat.HEX
+clean_blob firmware/whiteheat_loader.HEX
+clean_blob firmware/whiteheat_loader_debug.HEX
 clean_kconfig drivers/usb/serial/Kconfig 'USB_SERIAL_WHITEHEAT'
 clean_mk CONFIG_USB_SERIAL_WHITEHEAT drivers/usb/serial/Makefile
 
@@ -591,50 +634,16 @@ clean_file firmware/yamaha/ds1_ctrl.fw.ihex
 clean_file firmware/yamaha/ds1_dsp.fw.ihex
 clean_file firmware/yamaha/ds1e_ctrl.fw.ihex
 
+# SND_SB16_CSP_FIRMWARE_IN_KERNEL - SB16 Advanced Signal Processor
+clean_file firmware/sb16/alaw_main.csp.ihex
+clean_file firmware/sb16/mulaw_main.csp.ihex
+clean_file firmware/sb16/ima_adpcm_init.csp.ihex
+clean_file firmware/sb16/ima_adpcm_capture.csp.ihex
+clean_file firmware/sb16/ima_adpcm_playback.csp.ihex
 
-###############
-# Not Removed #
-###############
-
-# This is not removed in debian nor gnewsense nor do I think
-# it should be removed. It's on debian's list to check out
-# I think it points at firmware, but doesn't contain any
-# (e.g. if you add the file yss225_registers.bin it will use it)
-# clean_blob sound/isa/wavefront/wavefront_fx.c
-
-# VIDEO_STRADIS - Stradis 4:2:2 MPEG-2 video driver
-# This just sets a few values and a bunch of zeros. It doesn't look like
-# it was done by anything that would have upstream source code. This should 
-# probably be kept. It's removed in gnewsense, but not even mentioned
-# by debian as potential candidate. It is used by stratis.c
-# clean_blob drivers/media/video/cs8420.h
-
-# gnewsense removes drivers/serial/jsm/jsm_neo.c but vanilla version looks ok
-
-# Not in kernel 2.6.23
-# drivers/scsi/qla2xxx/ql2100_fw.c
-# drivers/scsi/qla2xxx/ql2200_fw.c
-# drivers/scsi/qla2xxx/ql2300_fw.c
-# drivers/scsi/qla2xxx/ql2322_fw.c
-# drivers/scsi/qla2xxx/ql2400_fw.c
-# drivers/usb/net/kawethfw.h
-# sound/isa/sb/sb16/sb16_csp_codecs.h
-# sound/oss/yss225.c
-# drivers/scsi/53c7xx_d.h_shipped 53c7xx.scr
-# sound/pci/cs46xx/imgs/cwcemb80.h
-
-# blobs but free source available (source listed 2nd)
-# drivers/char/ser_a2232fw.h                           ser_a2232fw.ax
-# drivers/net/ixp2000/ixp2400_rx.ucode                 ixp2400_rx.uc
-# drivers/net/ixp2000/ixp2400_tx.ucode                 ixp2400_rx.uc
-# drivers/net/wan/wanxlfw.inc_shipped                  wanxlfw.S
-# drivers/net/wireless/atmel.c                         atmel.c
-# drivers/scsi/53c700_d.h_shipped                      53c700.scr
-# drivers/scsi/aic7xxx/aic79xx_seq.h_shipped           aic79xx.seq
-# drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped           aic7xxx.seq
-# drivers/scsi/aic7xxx_old/aic7xxx_seq.c               aic7xxx.seq
-# drivers/scsi/sym53c8xx_2/sym_fw1.h                   sym_fw1.h
-# drivers/scsi/sym53c8xx_2/sym_fw2.h                   sym_fw2.h
-# firmware/keyspan_pda/keyspan_pda.HEX                 keyspan_pda.S
-# firmware/keyspan_pda/xircom_pgs.HEX                  xircom_pgs.S
+# SND_WAVEFRONT_FIRMWARE_IN_KERNEL
+# Most of this file is not matched by deblob-check because of WAIT_IDLE.
+# Just remove it.
+clean_file sound/isa/wavefront/yss225.c
 
+exit 0
index 1d672f90875001f2d9fc5c83e69fae6393832dee..0d0deb5029645d0f15c8ea6377465fd7a289d810 100755 (executable)
@@ -1,6 +1,6 @@
 #! /bin/sh
 
-# deblob-check version 2008-07-14
+# deblob-check version 2008-07-16
 # Inspired in gNewSense's find-firmware script.
 # Written by Alexandre Oliva <lxoliva@fsfla.org>
 
@@ -661,6 +661,9 @@ set_except () {
     initnc 'static const struct ath5k_ini_mode rf24\(13\|25\)_ini_mode_end\[\] =' drivers/net/wireless/ath5k/initvals.c
     initnc 'static const u16 wm9713_reg\[\] =' sound/soc/codecs/wm9713.c
 
+    # This looks suspicious, but it pretty much just sets stuff to zero.
+    initnc 'static __u8 mode8420\(pro\|con\)\[\] =' drivers/media/video/cs8420.h
+
     # quite suspicious
     # arch/parisc/kernel/perf_images.h
     initc 'static uint32_t onyx_images\[\]\[PCXU_IMAGE_SIZE\/sizeof(uint32_t)\] __read_mostly ='
@@ -776,7 +779,6 @@ set_except () {
     initnc 'static __const__ __u16 gx_coeff\[256\] ='
     initnc 'static __u8 init7121ntsc\[\] ='
     initnc 'static __u8 init7121pal\[\] ='
-    initnc 'static __u8 mode8420\(pro\|con\)\[\] ='
     initnc 'static byte capidtmf_leading_zeroes_table\[0x100\] ='
     initnc 'static char channel_map_madi_ss\[HDSPM_MAX_CHANNELS\] ='
     initnc 'static char coefficients\[NM_TOTAL_COEFF_COUNT \* 4\] ='
@@ -1001,7 +1003,6 @@ set_except () {
     initnc 'static unsigned char V110_OffMatrix_9600\[\] ='
     initnc 'static unsigned char V110_OnMatrix_9600\[\] ='
     initnc 'static unsigned char a2232_65EC02code\[\] ='
-    initnc 'static unsigned char alaw_main\[\] ='
     initnc 'static unsigned char atkbd_set3_keycode\[512\] ='
     initnc 'static unsigned char atkbd_unxlate_table\[128\] ='
     initnc 'static unsigned char banner_table\[\] ='
@@ -1014,11 +1015,7 @@ set_except () {
     initnc 'static unsigned char expressiontab\[128\] ='
     initnc 'static unsigned char header2\[\] ='
     initnc 'static unsigned char hidp_keycode\[256\] ='
-    initnc 'static unsigned char ima_adpcm_capture\[\] ='
-    initnc 'static unsigned char ima_adpcm_init\[\] ='
-    initnc 'static unsigned char ima_adpcm_playback\[\] ='
     initnc 'static unsigned char irq_xlate\[32\] ='
-    initnc 'static unsigned char mulaw_main\[\] ='
     initnc 'static unsigned char nkbd_keycode\[128\] ='
     initnc 'static unsigned char pan_volumes\[256\] ='
     initnc 'static unsigned char parm_block\[32\] ='
@@ -1094,6 +1091,18 @@ set_except () {
     initnc '} vsb_snr_tab\[\] ='
     initnc '} yss225_registers\[\] __devinitdata ='
     ;;
+  */patch*2.6.27-rc* | */patch*2.6.26-git*)
+    accept '   \.section __ex_table,"a"'"$sepx$blobpat*" 'arch/x86/lib/copy_user_\(nocache_\)\?64.S'
+    initnc 'static struct cipher_testvec des3_ede_cbc_\(enc\|dec\)_tv_template\[\] =' crypto/tcrypt.h
+
+    accept 'desc_config1:[\n]  \.byte 0x09, 0x02'"$sepx$blobpat*" 'firmware/keyspan_pda/\(keyspan_pda\|xircom_pgs\).S'
+    accept 'string_mfg:[\n]\?\(;\?     \.byte[^\n]*[\n]\)\+string_mfg_end:' 'firmware/keyspan_pda/\(keyspan_pda\|xircom_pgs\).S'
+    accept 'string_product:[\n]\?\(;\? \.byte[^\n]*[\n]\)\+string_product_end:' 'firmware/keyspan_pda/\(keyspan_pda\|xircom_pgs\).S'
+    accept ':03000000020200F9[\n]:040023000205\(9B0037\|5F0073\)[\n]\(:050030000000000000CB[\n]\|:0400430002010000B6[\n]\)*'"$sepx$blobpat*"'[\n]:\(0E06E0006400670065007400060334003700F4\|0606A000060334003700E0\)[\n]:00000001FF[\n]' 'firmware/keyspan_pda/\(keyspan_pda\|xircom_pgs\).HEX'
+    initnc 'static const u16 uda1380_reg\[UDA1380_CACHEREGNUM\] =' sound/soc/codecs/uda1380.c
+    initnc 'static const u16 wm8510_reg\[WM8510_CACHEREGNUM\] =' sound/soc/codecs/wm8510.c
+    ;;
+    
   */patch*2.6.26-rc*)
     initnc 'static u64 vec2off\[68\] =' arch/ia64/kvm/process.c
     initnc "                   interrupts = <\\(0x\\)\\?3 \\(0x\\)\\?0 \\(0x\\)\\?0  $blobpat*>;" 'arch/powerpc/boot/dts/\(cm5200\|lite5200b\?\|kuroboxHG\|pcm030\|tqm5200\).dts'
@@ -1881,7 +1890,7 @@ check () {
   *.tar*)
     cmd="tar -xf - --to-command='echo \";/*begin \$TAR_FILENAME*/;\"; cat; echo \";/**/;\"; echo \";/*end \$TAR_FILENAME*/;\"'"
     ;;
-  *.patch | patch-* | *.diff)
+  *.patch | */patch-* | *.diff)
     sedpatch='
       /^[-]/d;
       /^\(@@\|+++\) / {