Fix deblobbing of iwlwifi, particularly iwl-2000.c.
[releases.git] / deblob-check
index 662828683b59f16805ecca051248774ca4d7d14d..768f7cb65bbca099582fea1b20d2eb5e108fe505 100755 (executable)
@@ -1,6 +1,6 @@
 #! /bin/sh
 
-# deblob-check version 2011-07-20
+# deblob-check version 2011-07-24
 # Inspired in gNewSense's find-firmware script.
 # Written by Alexandre Oliva <lxoliva@fsfla.org>
 
@@ -2602,8 +2602,8 @@ set_except () {
     defsnc 'static[ ]DDR_SET_NODE[ ]asT3\(LP\)\?B\?_DDRSetting\(80\|100\|133\|160\)MHz\[\][ ]\?=' drivers/staging/bcm/DDRInit.c
     blobname '\([/]lib[/]firmware[/]\)\?macxvi200\.bin' drivers/staging/bcm/Macros.h
     accept '-[ ]On-chip[ ]firmware[ ]loaded[ ]using[ ]standard[ ]request_firmware[(][)]' 'drivers/staging/brcm80211\(/brcmfmac\)\?/README'
-    blobname 'brcm[/]bcm43xx\(_hdr\)-0[-0-9]*\.fw' drivers/staging/brcm80211/README
-    blobname 'brcm[/]bcm4329-fullmac-4[-0-9]*\.bin' drivers/staging/brcm80211/brcmfmac/README
+    blobname 'brcm[/]bcm43xx\(_hdr\)\?-0[-0-9]*\.fw' drivers/staging/brcm80211/README
+    blobname 'brcm[/]bcm4329-fullmac-4[-0-9]*\.\(bin\|txt\)' drivers/staging/brcm80211/brcmfmac/README
     blob 'Firmware[ ]installation[\n]=\+\([\n]\+[^\n=][^\n]*\)\+\([/]lib[/]firmware[/]brcm\|\.fw\)[^\n]*\([\n][^\n=][^\n]*\)*\([\n][\n][^=\n][^\n]*[\n][^=\n][^\n]*\([\n][^\n=][^\n]*\)*\)*' 'drivers/staging/brcm80211\(/brcmfmac\)\?/README'
     defsnc '[  ]u16[ ]nrate_list\[4\]\[8\][ ]=' drivers/staging/brcm80211/brcmfmac/wl_iw.c
     defsnc 'static[ ]chan_info_basic_t[ ]chan_info_all\[\][ ]=' drivers/staging/brcm80211/phy/wlc_phy_cmn.c
@@ -2840,6 +2840,7 @@ set_except () {
     blobname 'wm8958_\(enh_eq\|mbc\(_vss\)\?\)\.wfw' sound/soc/codecs/wm8958-dsp2.c
     blobname 'htc_\(7010\|9271\)\.fw' drivers/net/wireless/ath/ath9k/hif_usb.c
     blobname 'rtl_nic[/]rtl8168e-[12]\.fw' drivers/net/r8169.c
+    defsnc '[  ]static[ ]const[ ]struct[ ]ephy_info[ ]e_info_8168e\[\][ ]=' drivers/net/r8169.c
     blobname 'ti-connectivity[/]wl128x-fw\(-ap\)\?\.bin' drivers/net/wireless/wl12xx/wl12xx.h
     defsnc 'static[ ]const[ ]u8[ ]tg3_tso_header\[\][ ]=' drivers/net/tg3.c
     blobname 'ath6k[/]AR6003[/]hw2\.1\.1[/]\(otp\|athwlan\|athtcmd_ram\|device\|data\.patch\|endpointping\|bdata\.\(SD3[12]\|WB31\|CUSTOM\)\)\.bin' drivers/staging/ath6kl/os/linux/include/ar6000_drv.h
@@ -2847,6 +2848,9 @@ set_except () {
     accept '[  ]nvc0_graph_destroy_fw[(]&priv->fuc4\(09\|1a\)[cd][)][;]' drivers/gpu/drm/nouveau/nvc0_graph.c
     accept '[  ]\(if[ ][(]\|[ ][ ][ ][ ]\)nvc0_graph_create_fw[(]dev[,][ ]["]fuc4\(09\|1a\)[cd]["][,][ ][&]priv->fuc4\(09\|1a\)[cd][)]' drivers/gpu/drm/nouveau/nvc0_graph.c
     blobname 'nouveau[/]\(nv%02x_\)\?%s' drivers/gpu/drm/nouveau/nvc0_graph.c
+    blobname 'radeon[/]SUMO2\?_\(pfp\|me\)\.bin' drivers/gpu/drm/radeon/r600.c
+    blobname 'iwlwifi-\(105\|20[03]0\)-' drivers/net/iwlwifi/iwl-2000.c
+    blobname '__stringify[(]api[)][ ]["]\.ucode["]' 'drivers/net/iwlwifi/iwl-\(3945.h\|\(4965\|[1256]000\)\.c\)'
   ;;
 
   */*freedo*.patch | */*logo*.patch)
@@ -4811,13 +4815,13 @@ for line in sys.stdin:
         continue
 
     if verbose:
-            print 'looking for matches'
+            print('looking for matches')
             sfilenames = filenames
             while filenames != None:
                 if filenames[1] is None:
-                    print filenames[0]
+                    print(filenames[0])
                 else:
-                    print filenames[0] + ' within'
+                    print(filenames[0] + ' within')
                 filenames = filenames[1]
             filenames = sfilenames
 
@@ -4832,25 +4836,25 @@ for line in sys.stdin:
         blobs = falses = 0
         while 1:
             if verbose:
-                print 'found match'
+                print('found match')
             what = match.lastgroup
 
             if what == 'cblob':
-                if verbose: print 'match is a blob context'
+                if verbose: print('match is a blob context')
                 pend = s.find ('\n', match.end()) + 1
                 if pend == 0:
                     pend = len(s)
                 p = match.start() + 1
-               blob_p = 2
+                blob_p = 2
             else:
                 blob_p = what == 'blob'
                 assert blob_p or what == 'falsepos'
 
                 if blob_p:
-                    if verbose: print 'match is a blob'
+                    if verbose: print('match is a blob')
                     blobs += 1
                 else:
-                    if verbose: print 'match is a false positive'
+                    if verbose: print('match is a false positive')
                     falses += 1
 
                 if blob_p and replace_blob or not blob_p and replace_falsepos:
@@ -4882,7 +4886,7 @@ for line in sys.stdin:
             if not print_nomatch:
                 sfilenames = filenames
                 while filenames != None:
-                    print '::: ' + filenames[0] + ' :::'
+                    print('::: ' + filenames[0] + ' :::')
                     filenames = filenames[1]
                 filenames = sfilenames
             sys.stdout.write (s[pp:pend])
@@ -4891,9 +4895,9 @@ for line in sys.stdin:
         if list_blob and blobs or list_falsepos and falses:
             while filenames != None:
                 if filenames[1] is None:
-                    print filenames[0]
+                    print(filenames[0])
                 else:
-                    print filenames[0] + ' within'
+                    print (filenames[0] + ' within')
                 filenames = filenames[1]
             exit (1)
 
@@ -4901,7 +4905,7 @@ for line in sys.stdin:
         sys.stdout.write(s[pp:])
 
     if verbose:
-        print 'no further matches'
+        print('no further matches')
 
     s = '\n'
     filenames = nextfilenames