zd1211: Add mysteriously missing files
authorOyvind Repvik <nail@nslu2-linux.org>
Thu, 12 Oct 2006 16:16:18 +0000 (16:16 +0000)
committerOyvind Repvik <nail@nslu2-linux.org>
Thu, 12 Oct 2006 16:16:18 +0000 (16:16 +0000)
packages/zd1211/zd1211-r83/makefile-unslung.patch [new file with mode: 0644]
packages/zd1211/zd1211-r83/unslung-iwpriv-hack.patch [new file with mode: 0644]
packages/zd1211/zd1211-r83/unslung-writel-logging.patch [new file with mode: 0644]

diff --git a/packages/zd1211/zd1211-r83/makefile-unslung.patch b/packages/zd1211/zd1211-r83/makefile-unslung.patch
new file mode 100644 (file)
index 0000000..4edcbb7
--- /dev/null
@@ -0,0 +1,48 @@
+--- zd1211-driver-r77/Makefile.orig    2006-02-25 16:04:26.000000000 +0100
++++ zd1211-driver-r77/Makefile 2006-02-25 17:11:27.000000000 +0100
+@@ -4,24 +4,23 @@
+ #
+ #
+-CC=gcc
+-CPP=g++
+-LD=ld
+-rM=rm -f -r
++CC ?= gcc
++CPP ?= g++
++LD ?= ld
+-MODPATH := /lib/modules/$(shell uname -r)
++MODPATH ?= /lib/modules/$(shell uname -r)
+ # if the kernel is 2.6.x, turn on this
+-KERN_26=y
++#KERN_26=y
+-KERNEL_SOURCE=$(MODPATH)/source
++KERNEL_SOURCE ?= $(MODPATH)/source
+ #KERNEL_SOURCE=/usr/src/linux
+ # set to 1 for zd1211b
+ ZD1211REV_B=0
+-SRC_DIR=src
+-DEFINES=-D__KERNEL__ -DMODULE=1
++SRC_DIR=src
++DEFINES ?=-D__KERNEL__ -DMODULE=1
+@@ -227,9 +226,9 @@
+       depmod -a
+ #for apdbg
+-      gcc -o apdbg apdbg.c
+-      chmod +x apdbg
+-      cp ./apdbg /sbin/apdbg   
++#     gcc -o apdbg apdbg.c
++#     chmod +x apdbg
++#     cp ./apdbg /sbin/apdbg   
+ clean:
+       rm -rf .tmp_versions .*.cmd *.ko *.mod.c *.mod.o *.o $(SRC_DIR)/*.o  $(SRC_DIR)/.*.o.cmd
diff --git a/packages/zd1211/zd1211-r83/unslung-iwpriv-hack.patch b/packages/zd1211/zd1211-r83/unslung-iwpriv-hack.patch
new file mode 100644 (file)
index 0000000..64f3806
--- /dev/null
@@ -0,0 +1,19 @@
+--- zd1211-driver-r74/src/zd1205.c~    2006-04-16 09:42:15.000000000 -0500
++++ zd1211-driver-r74/src/zd1205.c     2006-04-27 12:29:03.000000000 -0500
+@@ -349,8 +349,14 @@
+                 { SIOCIWFIRSTPRIV + 0xA, IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 1, 0, "connect" },
+                 { SIOCIWFIRSTPRIV + 0xB, IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 1, 0, "set_mac_mode" },
+                 { SIOCIWFIRSTPRIV + 0xC, 0, IW_PRIV_TYPE_CHAR | 12, "get_mac_mode" },
+-                { SIOCIWFIRSTPRIV + 0xD, 0, 0, "save_conf" /* has been removed */ },
+-                { SIOCIWFIRSTPRIV + 0xE, 0, 0, "load_conf" /* has been removed */ },
++// HACK HACK HACK - The following two lines are commented out in order to make
++// iwpriv work on Unslung (2.4.22 kernel) - this kernel's Wireless Extensions
++// can only handle up to 16 iwpriv entries in this structure.  Yes, the correct
++// fix is to patch the Wireless Extensions in the Unslung kernel.  This hack
++// should be removed when that's actually done.  ~mwester 27APR2006
++//                { SIOCIWFIRSTPRIV + 0xD, 0, 0, "save_conf" /* has been removed */ },
++//                { SIOCIWFIRSTPRIV + 0xE, 0, 0, "load_conf" /* has been removed */ },
++// End of HACK
+                 { SIOCIWFIRSTPRIV + 0xF, 0, IW_PRIV_TYPE_CHAR | 14, "get_Region" },
+                 { SIOCIWFIRSTPRIV + 0x9,IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 1, 0, "set_Region" },
+         };
diff --git a/packages/zd1211/zd1211-r83/unslung-writel-logging.patch b/packages/zd1211/zd1211-r83/unslung-writel-logging.patch
new file mode 100644 (file)
index 0000000..00d54d7
--- /dev/null
@@ -0,0 +1,14 @@
+--- zd1211-driver-r74/src/zd1211.c~    2006-04-09 12:28:06.000000000 -0500
++++ zd1211-driver-r74/src/zd1211.c     2006-04-27 12:38:55.000000000 -0500
+@@ -652,7 +652,10 @@
+                 count++;
+                 if (count > 5) {
+-                        printk(KERN_ERR "1211_readl failed for 5 attempts...Very Serious");
++// You are going to see this often enough on Unslung that we might as well put it in
++// the syslog and fix it so it has a nl on the end.  Sigh.  ~mwester, 27APR06
++//
++                        printk(KERN_ERR "1211_readl failed for 5 attempts...Very Serious\n");
+                         break;
+                 }
+         }