Fix poor-man's dirname implementation. Reported by Matías A. Fonzo.
[releases.git] / deblob-2.6.28
index d2fa30f2a1be2ed3da9cab2f541667aa80e4cf2a..0db10927e2bfb37c2cdd8aa60ce03e35fdb26a41 100755 (executable)
@@ -44,7 +44,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.28 extra=++
+kver=2.6.28 extra=1++
 
 fatal () {
   echo "$@"
@@ -188,16 +188,26 @@ s,request\(_ihex\)\?_firmware\(_nowait\)\?,reject_firmware\2,g
 ' "$1" 'disabled non-Free firmware-loading machinery'
 }
 
+undefine_macro () {
+  #$1 - macro name
+  #$2 - substitution
+  #$3 - message
+  #rest - file names
+  macro=$1 repl=$2 msg=$3; shift 3
+  for f in "$@"; do
+    clean_sed "
+  s,^#define $macro .*\$,/*(DEBLOBBED)*/,;
+  s,$macro,$repl,g;
+" "$f" "$msg"
+  done
+}
+
 undefault_firmware () {
   #$1 - pattern such that $1_DEFAULT_FIRMWARE is #defined to non-Free firmware
   #$@ other than $1 - file names
   macro="$1"_DEFAULT_FIRMWARE; shift
-  for f in "$@"; do
-    clean_sed "
-  s,^#define $macro \"[^\"]*\",/*(DEBLOBBED)*/,;
-  s,$macro,\"/*(DEBLOBBED)*/\",g" \
-      "$f" "disabled non-Free firmware"
-  done
+  undefine_macro "$macro" "\"/*(DEBLOBBED)*/\"" \
+    "disabled non-Free firmware" "$@"
 }
 
 # First, check that files that contain firmwares and their
@@ -434,7 +444,6 @@ clean_sed '
        radeon_do_cleanup_cp(dev);\
        return -EINVAL;
   }
-}
 }' drivers/gpu/drm/radeon/radeon_cp.c 'report missing Free microcode on init'
 clean_sed '
 /^static int radeon_do_resume_cp([^;]*$/,/^}$/{
@@ -473,6 +482,8 @@ clean_kconfig drivers/media/common/tuners/Kconfig 'MEDIA_TUNER_XC2028'
 clean_mk CONFIG_MEDIA_TUNER_XC2028 drivers/media/common/tuners/Makefile
 
 announce MEDIA_TUNER_XC5000 - "Xceive XC5000 silicon tuner"
+undefine_macro 'XC5000_DEFAULT_FIRMWARE_SIZE' 0 \
+  'removed non-Free firmware size' drivers/media/common/tuners/xc5000.c
 undefault_firmware 'XC5000' drivers/media/common/tuners/xc5000.c
 reject_firmware drivers/media/common/tuners/xc5000.c
 clean_kconfig drivers/media/common/tuners/Kconfig 'MEDIA_TUNER_XC5000'
@@ -556,6 +567,7 @@ clean_kconfig drivers/media/dvb/dvb-usb/Kconfig 'DVB_USB_GP8PSK'
 clean_mk CONFIG_DVB_USB_GP8PSK drivers/media/dvb/dvb-usb/Makefile
 
 announce DVB_USB_M920X - "Uli m920x DVB-T USB2.0 support"
+reject_firmware drivers/media/dvb/dvb-usb/m920x.c
 clean_blob drivers/media/dvb/dvb-usb/m920x.c
 clean_kconfig drivers/media/dvb/dvb-usb/Kconfig 'DVB_USB_M920X'
 clean_mk CONFIG_DVB_USB_M920X drivers/media/dvb/dvb-usb/Makefile
@@ -625,6 +637,7 @@ clean_kconfig drivers/media/dvb/frontends/Kconfig 'DVB_OR51132'
 clean_mk CONFIG_DVB_OR51132 drivers/media/dvb/frontends/Makefile
 
 announce DVB_OR51211 - "Oren OR51211 based"
+undefault_firmware 'OR51211' drivers/media/dvb/frontends/or51211.c
 reject_firmware drivers/media/dvb/frontends/or51211.c
 reject_firmware drivers/media/dvb/frontends/or51211.h
 clean_blob drivers/media/dvb/frontends/or51211.c
@@ -654,6 +667,8 @@ clean_kconfig drivers/media/dvb/frontends/Kconfig 'DVB_SP887X'
 clean_mk CONFIG_DVB_SP887X drivers/media/dvb/frontends/Makefile
 
 announce DVB_TDA10048 - "Philips TDA10048HN based"
+undefine_macro 'TDA10048_DEFAULT_FIRMWARE_SIZE' 0 \
+  'removed non-Free firmware size' drivers/media/dvb/frontends/tda10048.c
 undefault_firmware 'TDA10048' drivers/media/dvb/frontends/tda10048.c
 reject_firmware drivers/media/dvb/frontends/tda10048.c
 clean_kconfig drivers/media/dvb/frontends/Kconfig 'DVB_TDA10048'
@@ -713,6 +728,7 @@ reject_firmware drivers/media/dvb/siano/smscoreapi.c
 reject_firmware drivers/media/dvb/siano/smsusb.c
 clean_blob drivers/media/dvb/siano/smscoreapi.c
 clean_blob drivers/media/dvb/siano/smsusb.c
+clean_blob drivers/media/dvb/siano/sms-cards.c
 clean_kconfig drivers/media/dvb/siano/Kconfig 'DVB_SIANO_SMS1XXX'
 clean_mk CONFIG_DVB_SIANO_SMS1XXX drivers/media/dvb/siano/Makefile
 
@@ -875,8 +891,8 @@ clean_sed '
 /^#include "bnx2x_init\.h"/,/^$/{
   /^$/i\
 #define bnx2x_init_block(bp, start, end) \\\
-  return printk(KERN_ERR PFX "%s: Missing Free firmware\\n", bp->dev->name),\
-        -EINVAL;
+  return (printk(KERN_ERR PFX "%s: Missing Free firmware\\n", bp->dev->name),\\\
+         -EINVAL)
 }' drivers/net/bnx2x_main.c 'report missing Free firmware'
 clean_kconfig drivers/net/Kconfig 'BNX2X'
 clean_mk CONFIG_BNX2X drivers/net/Makefile
@@ -893,7 +909,6 @@ reject_firmware drivers/net/cxgb3/cxgb3_main.c
 clean_sed '
 /^static int ael2005_setup_\(sr\|twinax\)_edc([^;]*$/,/^}$/{
   /for.*ARRAY_SIZE(\(sr\|twinax\)_edc)/i\
-}\
        CH_ERR(phy->adapter, "Missing Free firwmare\\n");\
        err = -EINVAL;
 }' drivers/net/cxgb3/ael1002.c 'report missing Free firmware'
@@ -1086,7 +1101,7 @@ announce 3C359 - "3Com 3C359 Token Link Velocity XL adapter"
 clean_file drivers/net/tokenring/3c359_microcode.h
 clean_sed '
 /^\(static int \)\?xl_hw_reset([^;]*$/,/^}/{
-  /printk.*Uploading Microcode/i\
+  /start = .*mc_size/i\
                printk(KERN_ERR "%s: Missing Free firmware\\n", dev->name);\
                return -EINVAL;
 }' drivers/net/tokenring/3c359.c 'report missing Free firmware'
@@ -1774,6 +1789,7 @@ clean_mk CONFIG_SOUND_PAS sound/oss/Makefile
 clean_mk CONFIG_SOUND_SB sound/oss/Makefile
 
 announce SOUND_PSS - "PSS (AD1848, ADSP-2115, ESC614) support"
+clean_sed 's,^\( [*] .*synth"\)\.$,\1/*.,' sound/oss/pss.c 'avoid nested comments'
 clean_blob sound/oss/pss.c
 clean_kconfig sound/oss/Kconfig 'SOUND_PSS'
 clean_sed '
@@ -1796,7 +1812,7 @@ clean_blob Documentation/sound/oss/PSS
 clean_blob Documentation/sound/oss/PSS-updates
 clean_file Documentation/dvb/get_dvb_firmware
 clean_file Documentation/video4linux/extract_xc3028.pl
-clean_blob drivers/base/Kconfig
+clean_sed s,usb8388,whatever,g drivers/base/Kconfig 'removed blob name'
 clean_blob firmware/WHENCE
 
 exit 0