diff options
author | Oyvind Repvik <nail@nslu2-linux.org> | 2007-02-26 15:25:26 +0000 |
---|---|---|
committer | Oyvind Repvik <nail@nslu2-linux.org> | 2007-02-26 15:25:26 +0000 |
commit | 901e7257791f529bd5e502f35a5f7785b5b3fc88 (patch) | |
tree | 062381d65f9e46b785de039e9c9063ffb245761e | |
parent | f2ed01f2fa999207df71846d58f719e77f297e83 (diff) |
zd1211: Upstream upgrade to -r85. Fixes problem in recent kernels
-rw-r--r-- | packages/zd1211/zd1211-r85/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/zd1211/zd1211-r85/makefile-unslung.patch | 48 | ||||
-rw-r--r-- | packages/zd1211/zd1211-r85/makefile.patch | 47 | ||||
-rw-r--r-- | packages/zd1211/zd1211-r85/unslung-iwpriv-hack.patch | 19 | ||||
-rw-r--r-- | packages/zd1211/zd1211-r85/unslung-writel-logging.patch | 14 | ||||
-rw-r--r-- | packages/zd1211/zd1211_r85.bb | 33 |
6 files changed, 161 insertions, 0 deletions
diff --git a/packages/zd1211/zd1211-r85/.mtn2git_empty b/packages/zd1211/zd1211-r85/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/zd1211/zd1211-r85/.mtn2git_empty diff --git a/packages/zd1211/zd1211-r85/makefile-unslung.patch b/packages/zd1211/zd1211-r85/makefile-unslung.patch new file mode 100644 index 0000000000..bc189e823f --- /dev/null +++ b/packages/zd1211/zd1211-r85/makefile-unslung.patch @@ -0,0 +1,48 @@ +--- zd1211-driver-r83.orig/Makefile 2006-07-09 04:59:42.000000000 -0500 ++++ zd1211-driver-r83/Makefile 2006-10-21 16:27:41.000000000 -0500 +@@ -4,25 +4,25 @@ + # + # + +-CC=gcc +-CPP=g++ +-LD=ld ++CC ?= gcc ++CPP ?= g++ ++LD ?= ld + rM=rm -f -r + + VERSION := $(shell uname -r) +-MODPATH := /lib/modules/$(VERSION) ++MODPATH ?= /lib/modules/$(VERSION) + + # 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 ++DEFINES ?= -D__KERNEL__ -DMODULE=1 + + + +@@ -228,9 +228,9 @@ + depmod -a $(VERSION) + + #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-r85/makefile.patch b/packages/zd1211/zd1211-r85/makefile.patch new file mode 100644 index 0000000000..adc2bd416d --- /dev/null +++ b/packages/zd1211/zd1211-r85/makefile.patch @@ -0,0 +1,47 @@ +--- zd1211-driver-r83/Makefile.orig 2006-09-02 16:00:00.000000000 +0200 ++++ zd1211-driver-r83/Makefile 2006-09-02 16:01:57.000000000 +0200 +@@ -4,10 +4,10 @@ + # + # + +-CC=gcc +-CPP=g++ +-LD=ld +-rM=rm -f -r ++#CC=gcc ++#CPP=g++ ++#LD=ld ++#rM=rm -f -r + + VERSION := $(shell uname -r) + MODPATH := /lib/modules/$(VERSION) +@@ -15,14 +15,14 @@ + # if the kernel is 2.6.x, turn on this + 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 ++DEFINES ?= -D__KERNEL__ -DMODULE=1 + + + +@@ -228,9 +228,9 @@ + depmod -a $(VERSION) + + #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-r85/unslung-iwpriv-hack.patch b/packages/zd1211/zd1211-r85/unslung-iwpriv-hack.patch new file mode 100644 index 0000000000..64f3806140 --- /dev/null +++ b/packages/zd1211/zd1211-r85/unslung-iwpriv-hack.patch @@ -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-r85/unslung-writel-logging.patch b/packages/zd1211/zd1211-r85/unslung-writel-logging.patch new file mode 100644 index 0000000000..00d54d7d68 --- /dev/null +++ b/packages/zd1211/zd1211-r85/unslung-writel-logging.patch @@ -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; + } + } diff --git a/packages/zd1211/zd1211_r85.bb b/packages/zd1211/zd1211_r85.bb new file mode 100644 index 0000000000..d0d875c842 --- /dev/null +++ b/packages/zd1211/zd1211_r85.bb @@ -0,0 +1,33 @@ +DESCRIPTION = "Driver for zd1211 family of wireless USB Dongles" +HOMEPAGE = "http://zd1211.ath.cx/" +SECTION = "kernel/modules" +PRIORITY = "optional" +LICENSE = "GPL" +RDEPENDS = "wireless-tools" +PR = "r1" + +SRC_URI = "http://zd1211.ath.cx/download/zd1211-driver-${PV}.tgz \ + file://makefile.patch;patch=1" +SRC_URI_unslung = "http://zd1211.ath.cx/download/zd1211-driver-${PV}.tgz \ + file://makefile-unslung.patch;patch=1 \ + file://unslung-iwpriv-hack.patch;patch=1 \ + file://unslung-writel-logging.patch;patch=1" + +S = "${WORKDIR}/zd1211-driver-${PV}" + +inherit module + +do_compile () { + unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS CC LD CPP + oe_runmake 'MODPATH={D}${base_libdir}/modules/${KERNEL_VERSION}/kernel/drivers/net' \ + 'KERNEL_SOURCE=${STAGING_KERNEL_DIR}' \ + 'KDIR=${STAGING_KERNEL_DIR}' \ + 'KERNEL_VERSION=${KERNEL_VERSION}' \ + 'CC=${KERNEL_CC}' \ + 'LD=${KERNEL_LD}' +} + +do_install() { + install -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/kernel/drivers/net + install -m 0644 ${S}/zd1211*${KERNEL_OBJECT_SUFFIX} ${D}${base_libdir}/modules/${KERNEL_VERSION}/kernel/drivers/net +} |