X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=deblob-2.6.28;h=6a59c7fd8ba0b8ced286a4f81a9fa13c3d121047;hb=fcfefd9ec148884d9255246d7b5fd6d1d393e196;hp=a23e94386a9264685017ba0bb60e5d9a2781812f;hpb=e32592a4bb48f6acee2ea423600e2a69c2ad8a66;p=releases.git diff --git a/deblob-2.6.28 b/deblob-2.6.28 index a23e94386a92..6a59c7fd8ba0 100755 --- a/deblob-2.6.28 +++ b/deblob-2.6.28 @@ -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 "$@" @@ -184,20 +184,30 @@ clean_sed () { reject_firmware () { #$1 = file clean_sed ' -s,request\(_ihex\)\?_firmware\(_nowait\)\?,reject_firmware\2, +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 @@ -253,6 +263,8 @@ $i\ #ifndef _LINUX_LIBRE_FIRMWARE_H\ #define _LINUX_LIBRE_FIRMWARE_H\ \ +#include \ +\ #define NONFREE_FIRMWARE "/*(DEBLOBBED)*/"\ \ static inline int\ @@ -263,12 +275,12 @@ report_missing_free_firmware(const char *name, const char *what)\ return -EINVAL;\ }\ static inline int\ -reject_firmware(const struct firmware **fw, +reject_firmware(const struct firmware **fw,\ const char *name, struct device *device)\ {\ - struct firmware *xfw = NULL;\ + const struct firmware *xfw = NULL;\ int retval;\ - report_missing_free_firmware(device->name, NULL);\ + report_missing_free_firmware(dev_name(device), NULL);\ retval = request_firmware(&xfw, NONFREE_FIRMWARE, device);\ if (!retval)\ release_firmware(xfw);\ @@ -296,7 +308,7 @@ reject_firmware_nowait(struct module *module, int uevent,\ void *context))\ {\ int retval;\ - report_missing_free_firmware(device->name, NULL);\ + report_missing_free_firmware(dev_name(device), NULL);\ retval = request_firmware_nowait(module, uevent, NONFREE_FIRMWARE,\ device, NULL,\ discard_rejected_firmware);\ @@ -425,21 +437,23 @@ clean_mk CONFIG_DRM_R128 drivers/gpu/drm/Makefile announce DRM_RADEON - "ATI Radeon" clean_sed ' -/^static int radeon_do_init_cce([^;]*$/,/^}$/{ +/^static int radeon_do_init_cp([^;]*$/,/^}$/{ /^ radeon_cp_load_microcode(dev_priv);$/{ i\ DRM_ERROR("Missing Free microcode!\\n");\ 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([^;]*$/,/^}$/{ /^ radeon_cp_load_microcode(dev_priv);$/{ i\ DRM_ERROR("Missing Free microcode!\\n");\ return -EINVAL; } -}' drivers/gpu/drm/radeon/radeon_cp.c 'report missing Free microcode' +}' drivers/gpu/drm/radeon/radeon_cp.c 'report missing Free microcode on resume' +clean_blob drivers/gpu/drm/radeon/radeon_cp.c clean_blob drivers/gpu/drm/radeon/radeon_microcode.h clean_kconfig drivers/gpu/drm/Kconfig 'DRM_RADEON' clean_mk CONFIG_DRM_RADEON drivers/gpu/drm/Makefile @@ -463,21 +477,20 @@ undefault_firmware 'XC\(2028\|3028L\)' \ drivers/media/video/em28xx/em28xx-cards.c \ drivers/media/dvb/dvb-usb/dib0700_devices.c \ drivers/media/dvb/dvb-usb/cxusb.c -clean_blob drivers/media/common/tuners/tuner-xc2028.h reject_firmware drivers/media/common/tuners/tuner-xc2028.c 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_blob drivers/media/common/tuners/xc5000.c clean_kconfig drivers/media/common/tuners/Kconfig 'MEDIA_TUNER_XC5000' clean_mk CONFIG_MEDIA_TUNER_XC5000 drivers/media/common/tuners/Makefile announce DVB_USB - "Support for various USB DVB devices" reject_firmware drivers/media/dvb/dvb-usb/dvb-usb-firmware.c -clean_blob drivers/media/dvb/dvb-usb/dvb-usb-firmware.c clean_kconfig drivers/media/dvb/dvb-usb/Kconfig 'DVB_USB' clean_mk CONFIG_DVB_USB drivers/media/dvb/dvb-usb/Makefile @@ -554,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 @@ -602,6 +616,10 @@ announce DVB_BCM3510 - "Broadcom BCM3510" undefault_firmware 'BCM3510' drivers/media/dvb/frontends/bcm3510.c reject_firmware drivers/media/dvb/frontends/bcm3510.c reject_firmware drivers/media/dvb/frontends/bcm3510.h +clean_sed ' +/You.ll need a firmware/,/dvb-fe-bcm/d; +' drivers/media/dvb/frontends/bcm3510.c \ + "removed non-Free firmware notes" clean_kconfig drivers/media/dvb/frontends/Kconfig 'DVB_BCM3510' clean_mk CONFIG_DVB_BCM3510 drivers/media/dvb/frontends/Makefile @@ -619,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 @@ -636,7 +655,6 @@ clean_mk CONFIG_DVB_SP8870 drivers/media/dvb/frontends/Makefile announce DVB_CX24116 - "Conexant CX24116 based" undefault_firmware CX24116 drivers/media/dvb/frontends/cx24116.c reject_firmware drivers/media/dvb/frontends/cx24116.c -clean_blob drivers/media/dvb/frontends/cx24116.c clean_kconfig drivers/media/dvb/frontends/Kconfig 'DVB_CX24116' clean_mk CONFIG_DVB_CX24116 drivers/media/dvb/frontends/Makefile @@ -649,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' @@ -675,7 +695,6 @@ s,mwdebi(.*bootcode.*$,/* & */, ' drivers/media/dvb/ttpci/av7110_hw.c 'adjust bootcode loader' clean_blob drivers/media/dvb/ttpci/av7110_hw.c reject_firmware drivers/media/dvb/ttpci/av7110.c -reject_firmware drivers/media/dvb/ttpci/av7110.c clean_blob drivers/media/dvb/ttpci/av7110.c clean_sed ' /^config DVB_AV7110_FIRMWARE_FILE$/, /^config / { @@ -715,7 +734,6 @@ clean_mk CONFIG_DVB_SIANO_SMS1XXX drivers/media/dvb/siano/Makefile announce DVB_TTUSB_BUDGET - "Technotrend/Hauppauge Nova-USB devices" drop_fw_file firmware/ttusb-budget/dspbootcode.bin.ihex firmware/ttusb-budget/dspbootcode.bin reject_firmware drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c -reject_firmware drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c clean_blob drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c clean_kconfig drivers/media/dvb/ttusb-budget/Kconfig 'DVB_TTUSB_BUDGET' clean_mk CONFIG_DVB_TTUSB_BUDGET drivers/media/dvb/ttusb-budget/Makefile @@ -730,7 +748,6 @@ clean_mk CONFIG_DVB_TTUSB_DEC drivers/media/dvb/ttusb-dec/Makefile announce VIDEO_BT848 - "BT848 Video For Linux" reject_firmware drivers/media/video/bt8xx/bttv-cards.c -clean_blob drivers/media/video/bt8xx/bttv-cards.c clean_kconfig drivers/media/video/bt8xx/Kconfig 'VIDEO_BT848' clean_mk CONFIG_VIDEO_BT848 drivers/media/video/bt8xx/Makefile @@ -745,7 +762,6 @@ announce VIDEO_CX18 - "Conexant cx23418 MPEG encoder support" reject_firmware drivers/media/video/cx18/cx18-av-firmware.c reject_firmware drivers/media/video/cx18/cx18-firmware.c clean_blob drivers/media/video/cx18/cx18-av-firmware.c -clean_blob drivers/media/video/cx18/cx18-firmware.c clean_kconfig drivers/media/video/cx18/Kconfig 'VIDEO_CX18' clean_mk CONFIG_VIDEO_CX18 drivers/media/video/cx18/Makefile @@ -792,7 +808,6 @@ clean_mk CONFIG_VIDEO_GO7007 drivers/staging/go7007/Makefile announce VIDEO_SAA7134_DVB - "DVB/ATSC Support for saa7134 based TV cards" reject_firmware drivers/media/video/saa7134/saa7134-dvb.c -clean_blob drivers/media/video/saa7134/saa7134-dvb.c clean_kconfig drivers/media/video/saa7134/Kconfig 'VIDEO_SAA7134_DVB' clean_mk CONFIG_VIDEO_SAA7134_DVB drivers/media/video/saa7134/Makefile @@ -875,8 +890,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 @@ -889,13 +904,14 @@ clean_kconfig drivers/net/Kconfig 'CASSINI' clean_mk CONFIG_CASSINI drivers/net/Makefile announce CHELSIO_T3 - "Chelsio AEL 2005 support" +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' +clean_blob drivers/net/cxgb3/cxgb3_main.c clean_blob drivers/net/cxgb3/ael1002.c clean_kconfig drivers/net/Kconfig 'CHELSIO_T3' clean_mk CONFIG_CHELSIO_T3 drivers/net/cxgb3/Makefile @@ -949,6 +965,8 @@ clean_mk CONFIG_SLICOSS drivers/staging/slicoss/Makefile announce SPIDER_NET - "Spider Gigabit Ethernet driver" reject_firmware drivers/net/spider_net.c +clean_sed 's,spider_fw\.bin,DEBLOBBED.bin,g' \ + drivers/net/spider_net.c 'removed non-Free firmware notes' clean_blob drivers/net/spider_net.h clean_kconfig drivers/net/Kconfig 'SPIDER_NET' clean_mk CONFIG_SPIDER_NET drivers/net/Makefile @@ -1043,7 +1061,6 @@ clean_mk CONFIG_USB_IRDA drivers/net/irda/Makefile # pcmcia announce PCMCIA_SMC91C92 - "SMC 91Cxx PCMCIA" -clean_blob drivers/net/pcmcia/ositech.h clean_sed ' /^\(static int \)\?osi_setup([^;]*$/,/^}$/{ s/^\(.*\)[/][*] Download.*firmware [*][/]/\1printk(KERN_ERR "%s: Missing Free firmware\\n", dev->name);\n\1rc = -EINVAL;\n\1goto free_cfg_mem;\n&/ @@ -1052,12 +1069,13 @@ clean_sed ' /^\(static int \)\?smc91c92_resume([^;]*$/,/^}$/{ s/^\(.*\)[/][*] Download.*firmware [*][/]/\1printk(KERN_ERR "%s: Missing Free firmware\\n", dev->name);\n\1return -EINVAL;\n&/ }' drivers/net/pcmcia/smc91c92_cs.c 'report another missing Free firmware' +clean_blob drivers/net/pcmcia/ositech.h +clean_blob drivers/net/pcmcia/smc91c92_cs.c clean_kconfig drivers/net/pcmcia/Kconfig 'PCMCIA_SMC91C92' clean_mk CONFIG_PCMCIA_SMC91C92 drivers/net/pcmcia/Makefile announce PCCARD - "PCCard (PCMCIA/CardBus) support" reject_firmware drivers/pcmcia/ds.c -clean_blob drivers/pcmcia/ds.c clean_kconfig drivers/pcmcia/Kconfig 'PCCARD' clean_mk CONFIG_PCCARD drivers/pcmcia/Makefile @@ -1082,7 +1100,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' @@ -1170,7 +1188,6 @@ clean_mk CONFIG_IWL3945 drivers/net/wireless/iwlwifi/Makefile announce IWLAGN - "Intel Wireless WiFi Next Gen AGN" reject_firmware drivers/net/wireless/iwlwifi/iwl-agn.c -clean_blob drivers/net/wireless/iwlwifi/iwl-agn.c clean_kconfig drivers/net/wireless/iwlwifi/Kconfig 'IWLAGN' clean_mk CONFIG_IWLAGN drivers/net/wireless/iwlwifi/Makefile @@ -1218,6 +1235,7 @@ clean_mk CONFIG_P54_PCI drivers/net/wireless/p54/Makefile announce P54_USB - "Prism54 USB support" reject_firmware drivers/net/wireless/p54/p54usb.c clean_blob drivers/net/wireless/p54/p54usb.c +clean_blob drivers/net/wireless/p54/p54usb.h clean_kconfig drivers/net/wireless/p54/Kconfig 'P54_USB' clean_mk CONFIG_P54_USB drivers/net/wireless/p54/Makefile @@ -1233,7 +1251,6 @@ clean_mk CONFIG_PRISM54 drivers/net/wireless/prism54/Makefile announce RT2X00_LIB_FIRMWARE - "Ralink driver firmware support" reject_firmware drivers/net/wireless/rt2x00/rt2x00firmware.c -clean_blob drivers/net/wireless/rt2x00/rt2x00firmware.c clean_kconfig drivers/net/wireless/rt2x00/Kconfig 'RT2X00_LIB_FIRMWARE' clean_mk CONFIG_RT2X00_LIB_FIRMWARE drivers/net/wireless/rt2x00/Makefile @@ -1727,8 +1744,11 @@ announce SOUND_MSNDCLAS - "Support for Turtle Beach MultiSound Classic, Tahiti, clean_blob sound/oss/msnd_classic.h clean_kconfig sound/oss/Kconfig 'SOUND_MSNDCLAS' clean_sed ' -/^config MSNDCLAS_\(INIT\|PERM\)_FILE$/, /^config / { - /^ default.*msnd\(init\|perm\)\.bin/ s,".*","/*(DEBLOBBED)*/",; +/^config MSNDCLAS_INIT_FILE$/, /^config / { + /^ default.*msndinit\.bin/ s,".*","/*(DEBLOBBED)*/",; +} +/^config MSNDCLAS_PERM_FILE$/, /^config / { + /^ default.*msndperm\.bin/ s,".*","/*(DEBLOBBED)*/",; }' sound/oss/Kconfig 'removed default firmware' clean_mk CONFIG_SOUND_MSNDCLAS sound/oss/Makefile @@ -1736,8 +1756,11 @@ announce SOUND_MSNDPIN - "Support for Turtle Beach MultiSound Pinnacle" clean_blob sound/oss/msnd_pinnacle.h clean_kconfig sound/oss/Kconfig 'SOUND_MSNDPIN' clean_sed ' -/^config MSNDPIN_\(INIT\|PERM\)_FILE$/, /^config / { - /^ default.*pndsp\(ini\|erm\)\.bin/ s,".*","/*(DEBLOBBED)*/",; +/^config MSNDPIN_INIT_FILE$/, /^config / { + /^ default.*pndspini\.bin/ s,".*","/*(DEBLOBBED)*/",; +} +/^config MSNDPIN_PERM_FILE$/, /^config / { + /^ default.*pndsperm\.bin/ s,".*","/*(DEBLOBBED)*/",; }' sound/oss/Kconfig 'removed default firmware' clean_mk CONFIG_SOUND_MSNDPIN sound/oss/Makefile @@ -1765,6 +1788,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 ' @@ -1787,7 +1811,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