[oe-commits] org.oe.dev zd1211: Upstream upgrade to -r85. Fixes problem in recent kernels

nail commit openembedded-commits at lists.openembedded.org
Mon Feb 26 15:33:28 UTC 2007


zd1211: Upstream upgrade to -r85. Fixes problem in recent kernels

Author: nail at nslu2-linux.org
Branch: org.openembedded.dev
Revision: 47a9bf96284fe348bc469f09b27f47c8c7092918
ViewMTN: http://monotone.openembedded.org/revision.psp?id=47a9bf96284fe348bc469f09b27f47c8c7092918
Files:
1
packages/zd1211/zd1211-r85
packages/zd1211/zd1211-r85/makefile-unslung.patch
packages/zd1211/zd1211-r85/makefile.patch
packages/zd1211/zd1211-r85/unslung-iwpriv-hack.patch
packages/zd1211/zd1211-r85/unslung-writel-logging.patch
packages/zd1211/zd1211_r85.bb
Diffs:

#
# mt diff -r5f809cdf534015cc26bf7e4c81fcf2d2eef9596c -r47a9bf96284fe348bc469f09b27f47c8c7092918
#
# 
# 
# add_dir "packages/zd1211/zd1211-r85"
# 
# add_file "packages/zd1211/zd1211-r85/makefile-unslung.patch"
#  content [c09213c4f5b14c9dacaea9a87fc4357be8fd7b11]
# 
# add_file "packages/zd1211/zd1211-r85/makefile.patch"
#  content [30ca701c972d7672601f897a89be9582e047ce35]
# 
# add_file "packages/zd1211/zd1211-r85/unslung-iwpriv-hack.patch"
#  content [5e770f37069d3fb00d686a31fc83cdfb7ce58ee5]
# 
# add_file "packages/zd1211/zd1211-r85/unslung-writel-logging.patch"
#  content [8f0a83232cdd234c72454b742fcee208682ffad5]
# 
# add_file "packages/zd1211/zd1211_r85.bb"
#  content [464db83f3f980e45f70506aca4290ae6f6da9593]
# 
============================================================
--- packages/zd1211/zd1211-r85/makefile-unslung.patch	c09213c4f5b14c9dacaea9a87fc4357be8fd7b11
+++ packages/zd1211/zd1211-r85/makefile-unslung.patch	c09213c4f5b14c9dacaea9a87fc4357be8fd7b11
@@ -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
============================================================
--- packages/zd1211/zd1211-r85/makefile.patch	30ca701c972d7672601f897a89be9582e047ce35
+++ packages/zd1211/zd1211-r85/makefile.patch	30ca701c972d7672601f897a89be9582e047ce35
@@ -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
============================================================
--- packages/zd1211/zd1211-r85/unslung-iwpriv-hack.patch	5e770f37069d3fb00d686a31fc83cdfb7ce58ee5
+++ packages/zd1211/zd1211-r85/unslung-iwpriv-hack.patch	5e770f37069d3fb00d686a31fc83cdfb7ce58ee5
@@ -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" },
+         };
============================================================
--- packages/zd1211/zd1211-r85/unslung-writel-logging.patch	8f0a83232cdd234c72454b742fcee208682ffad5
+++ packages/zd1211/zd1211-r85/unslung-writel-logging.patch	8f0a83232cdd234c72454b742fcee208682ffad5
@@ -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;
+                 }
+         }
============================================================
--- packages/zd1211/zd1211_r85.bb	464db83f3f980e45f70506aca4290ae6f6da9593
+++ packages/zd1211/zd1211_r85.bb	464db83f3f980e45f70506aca4290ae6f6da9593
@@ -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
+}






More information about the Openembedded-commits mailing list