More rdc-2.6 fixes by Daniel Gimpelevich, thanks !
authorFlorian Fainelli <florian@openwrt.org>
Mon, 6 Aug 2007 18:48:58 +0000 (18:48 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Mon, 6 Aug 2007 18:48:58 +0000 (18:48 +0000)
SVN-Revision: 8355

package/rt2x00/Makefile
package/rt2x00/src/Makefile
package/rt2x00/src/rt2x00_config.h
package/rt61/Makefile
target/linux/generic-2.6/patches-2.6.22/001-eeprom_93cx6.patch [new file with mode: 0644]
target/linux/generic-2.6/patches-2.6.22/002-eeprom_93cx6.patch [new file with mode: 0644]
target/linux/generic-2.6/patches-2.6.22/003-eeprom_93cx6.patch [new file with mode: 0644]
target/linux/rdc-2.6/Makefile
target/linux/rdc-2.6/config/default
target/linux/rdc-2.6/profiles/AR525W.mk
target/linux/rdc-2.6/profiles/WL-153.mk

index 551289b..4ab5a12 100644 (file)
@@ -9,7 +9,8 @@
 include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
-PKG_NAME:=kmod-rt2x00
+PKG_NAME:=rt2x00
+#PKG_VERSION:=cvs-20070725
 PKG_VERSION:=git-200706018
 
 include $(INCLUDE_DIR)/package.mk
@@ -84,6 +85,11 @@ define KernelPackage/rt61-pci
   AUTOLOAD:=$(call AutoLoad,27,rt61pci)
 endef
 
+define KernelPackage/rt61-pci/install
+       mkdir -p $(1)/lib/firmware
+       $(CP) -L $(PKG_BUILD_DIR)/rt2?61*.bin $(1)/lib/firmware
+endef
+
 define KernelPackage/rt73-usb
   $(call Package/rt2x00/Default)
   DEPENDS:=+kmod-rt2x00-usb
@@ -93,6 +99,11 @@ define KernelPackage/rt73-usb
   AUTOLOAD:=$(call AutoLoad,27,rt73usb)
 endef
 
+define KernelPackage/rt73-usb/install
+       mkdir -p $(1)/lib/firmware
+       $(CP) -L $(PKG_BUILD_DIR)/rt73.bin $(1)/lib/firmware
+endef
+
 define Build/Prepare
        $(call Build/Prepare/Default)
        $(CP) -r src/* $(PKG_BUILD_DIR)/
@@ -100,13 +111,14 @@ define Build/Prepare
 endef
 
 define Build/Compile
+#      $(MAKE) -C "$(PKG_BUILD_DIR)" config_header
        $(MAKE) -C "$(LINUX_DIR)" \
                CROSS_COMPILE="$(TARGET_CROSS)" \
-               ARCH="$(LINUX_KARCH)" \
+               ARCH="$(LINUX_KARCH)" V="$(V)" \
                SUBDIRS="$(PKG_BUILD_DIR)" \
                KERNELVERSION="$(KERNEL)" \
                KERNEL_SOURCE="$(LINUX_DIR)" \
-               EXTRA_CFLAGS="$(BUILDFLAGS) -include $(PKG_BUILD_DIR)/rt2x00_compat.h" \
+               CFLAGS_MODULE="-DMODULE -include $(PKG_BUILD_DIR)/rt2x00_compat.h" \
                KDIR="$(LINUX_DIR)"
 endef
 
index 4f3304f..0ed8321 100644 (file)
@@ -1,4 +1,4 @@
-rt2x00lib-objs := rt2x00dev.o rt2x00mac.o
+rt2x00lib-objs := rt2x00dev.o rt2x00mac.o rt2x00firmware.o
 
 EXTRA_CFLAGS += -DCONFIG_RT2X00_LIB_FIRMWARE
 
index 8d63434..5751dd1 100644 (file)
 
 #undef CONFIG_RT2X00_ASM
 
+#ifndef CONFIG_RT2X00_LIB_FIRMWARE
+#define CONFIG_RT2X00_LIB_FIRMWARE
+#endif
+
 #ifndef CONFIG_RT2400PCI
 #define CONFIG_RT2400PCI
 #endif
 #define CONFIG_RT73USB
 #endif
 
-#ifndef CONFIG_D80211
-#define CONFIG_D80211
-#endif
-
-#ifndef CONFIG_D80211_DEBUG
-#define CONFIG_D80211_DEBUG
-#endif
-
-#undef CONFIG_D80211_ASM
-
-#ifndef CONFIG_CRC_ITU_T
-#define CONFIG_CRC_ITU_T
-#endif
-
-#undef CONFIG_CRC_ITU_T_ASM
-
-#ifndef CONFIG_EEPROM_93CX6
-#define CONFIG_EEPROM_93CX6
-#endif
-
-#undef CONFIG_EEPROM_93CX6_ASM
-
-#undef CONFIG_RFKILL
-
-#undef CONFIG_RFKILL_ASM
-
index 228cd86..c0878c3 100644 (file)
@@ -34,7 +34,7 @@ endef
 
 define KernelPackage/rt61/install
        mkdir -p $(1)/lib/firmware
-       $(CP) -L $(PKG_BUILD_DIR)/Module/rt2*.bin $(1)/lib/firmware
+       $(CP) -L $(PKG_BUILD_DIR)/Module/rt2?61*.bin $(1)/lib/firmware
 endef
 
 LINUX_PATCHLEVEL:=$(shell echo "$(LINUX_VERSION)" | cut -d. -f2)
diff --git a/target/linux/generic-2.6/patches-2.6.22/001-eeprom_93cx6.patch b/target/linux/generic-2.6/patches-2.6.22/001-eeprom_93cx6.patch
new file mode 100644 (file)
index 0000000..9bc19fb
--- /dev/null
@@ -0,0 +1,46 @@
+From: Ivo van Doorn <ivdoorn@gmail.com>
+Date: Mon, 14 May 2007 21:06:01 +0000 (+0200)
+Subject: [PATCH] eeprom_93cx6: Add comment for 1us delay after pulse
+X-Git-Tag: v2.6.23-rc1~1201^2~73
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=4b914dc0493edff19ff698a18198a173a14ba9d2
+
+[PATCH] eeprom_93cx6: Add comment for 1us delay after pulse
+
+This will add a comment for the 1us delay which is taken
+after the pulse has been switched. The 1us delay is based
+on the specifications so that should be made clear.
+
+Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
+Signed-off-by: John W. Linville <linville@tuxdriver.com>
+---
+
+diff --git a/drivers/misc/eeprom_93cx6.c b/drivers/misc/eeprom_93cx6.c
+index bfcb434..0d6d742 100644
+--- a/drivers/misc/eeprom_93cx6.c
++++ b/drivers/misc/eeprom_93cx6.c
+@@ -39,6 +39,12 @@ static inline void eeprom_93cx6_pulse_high(struct eeprom_93cx6 *eeprom)
+ {
+       eeprom->reg_data_clock = 1;
+       eeprom->register_write(eeprom);
++
++      /*
++       * Add a short delay for the pulse to work.
++       * According to the specifications the minimal time
++       * should be 450ns so a 1us delay is sufficient.
++       */
+       udelay(1);
+ }
+@@ -46,6 +52,12 @@ static inline void eeprom_93cx6_pulse_low(struct eeprom_93cx6 *eeprom)
+ {
+       eeprom->reg_data_clock = 0;
+       eeprom->register_write(eeprom);
++
++      /*
++       * Add a short delay for the pulse to work.
++       * According to the specifications the minimal time
++       * should be 450ns so a 1us delay is sufficient.
++       */
+       udelay(1);
+ }
diff --git a/target/linux/generic-2.6/patches-2.6.22/002-eeprom_93cx6.patch b/target/linux/generic-2.6/patches-2.6.22/002-eeprom_93cx6.patch
new file mode 100644 (file)
index 0000000..7f2b125
--- /dev/null
@@ -0,0 +1,36 @@
+From: John W. Linville <linville@tuxdriver.com>
+Date: Tue, 12 Jun 2007 01:37:46 +0000 (-0400)
+Subject: [PATCH] eeprom_93cx6: shorten pulse timing to match spec
+X-Git-Tag: v2.6.23-rc1~1201^2~71
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=7e9400f178d291b2208c4ed9aac0f425c1364000
+
+[PATCH] eeprom_93cx6: shorten pulse timing to match spec
+
+93cx6 datasheet available here:
+
+        http://ww1.microchip.com/downloads/en/DeviceDoc/21749F.pdf
+
+Figure 1-1 and Table 1-2 on pages 4-5 indicate that both Clock High
+Time and Clock Low Time have largest minimum times of 450ns.
+
+Signed-off-by: John W. Linville <linville@tuxdriver.com>
+---
+
+diff --git a/drivers/misc/eeprom_93cx6.c b/drivers/misc/eeprom_93cx6.c
+index 0d6d742..ac515b0 100644
+--- a/drivers/misc/eeprom_93cx6.c
++++ b/drivers/misc/eeprom_93cx6.c
+@@ -42,10 +42,10 @@ static inline void eeprom_93cx6_pulse_high(struct eeprom_93cx6 *eeprom)
+       /*
+        * Add a short delay for the pulse to work.
+-       * According to the specifications the minimal time
+-       * should be 450ns so a 1us delay is sufficient.
++       * According to the specifications the "maximum minimum"
++       * time should be 450ns.
+        */
+-      udelay(1);
++      ndelay(450);
+ }
+ static inline void eeprom_93cx6_pulse_low(struct eeprom_93cx6 *eeprom)
diff --git a/target/linux/generic-2.6/patches-2.6.22/003-eeprom_93cx6.patch b/target/linux/generic-2.6/patches-2.6.22/003-eeprom_93cx6.patch
new file mode 100644 (file)
index 0000000..ae11f82
--- /dev/null
@@ -0,0 +1,34 @@
+From: Francois Romieu <romieu@fr.zoreil.com>
+Date: Tue, 3 Jul 2007 22:31:44 +0000 (+0200)
+Subject: eeprom_93cx6: shorten pulse timing to match spec (bis)
+X-Git-Tag: v2.6.23-rc1~1151^2~11
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=8abd531e3f77188de2fc41e677d075cc66e61631
+
+eeprom_93cx6: shorten pulse timing to match spec (bis)
+
+Based on an original idea by John W. Linville.
+
+It is the missing part of 42d45ccd60636c28e35c2016f091783bc14ad99c
+
+Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
+Signed-off-by: Jeff Garzik <jeff@garzik.org>
+---
+
+diff --git a/drivers/misc/eeprom_93cx6.c b/drivers/misc/eeprom_93cx6.c
+index ac515b0..ea55654 100644
+--- a/drivers/misc/eeprom_93cx6.c
++++ b/drivers/misc/eeprom_93cx6.c
+@@ -55,10 +55,10 @@ static inline void eeprom_93cx6_pulse_low(struct eeprom_93cx6 *eeprom)
+       /*
+        * Add a short delay for the pulse to work.
+-       * According to the specifications the minimal time
+-       * should be 450ns so a 1us delay is sufficient.
++       * According to the specifications the "maximum minimum"
++       * time should be 450ns.
+        */
+-      udelay(1);
++      ndelay(450);
+ }
+ static void eeprom_93cx6_startup(struct eeprom_93cx6 *eeprom)
index bf096f2..1b180cd 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 ARCH:=i386
 BOARD:=rdc
 BOARDNAME:=RDC x86
-FEATURES:=squashfs jffs2 broken
+FEATURES:=squashfs jffs2
 
 LINUX_VERSION:=2.6.22.1
 
@@ -22,10 +22,12 @@ include $(INCLUDE_DIR)/kernel-build.mk
 
 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
     define Kernel/SetInitramfs
+       echo "r6040 parent=wlan0" > $(BUILD_DIR)/root/etc/modules.d/99-r6040
        rm -f $(BUILD_DIR)/root/sbin/init
        ln -s /etc/preinit $(BUILD_DIR)/root/sbin/init
        sed -i 's,exec /sbin/init,exec /bin/busybox init,g' $(BUILD_DIR)/root/etc/preinit
        sed -i 's,/sbin/init,/bin/busybox init,g' $(BUILD_DIR)/root/init
+       sed -i 's,eth0,eth1,g' $(BUILD_DIR)/root/etc/config/network
     endef
 endif
 
index c28d44b..b0990e4 100644 (file)
@@ -27,10 +27,12 @@ CONFIG_CLOCKSOURCE_WATCHDOG=y
 # CONFIG_COMPAT_VDSO is not set
 # CONFIG_CPU5_WDT is not set
 # CONFIG_CPU_FREQ is not set
+CONFIG_CRC_ITU_T=y
 CONFIG_CRYPTO_AES_586=m
 CONFIG_CRYPTO_ARC4=y
 CONFIG_CRYPTO_DEV_GEODE=m
 # CONFIG_CRYPTO_DEV_PADLOCK is not set
+CONFIG_CRYPTO_ECB=y
 CONFIG_CRYPTO_TWOFISH_586=m
 # CONFIG_CS5535_GPIO is not set
 # CONFIG_DCDBAS is not set
index 847607e..5c01554 100644 (file)
@@ -7,7 +7,7 @@
 
 define Profile/ar525w
   NAME:=AirLink101 AR525W
-  PACKAGES:=kmod-rt61 kmod-r6040
+  PACKAGES:=kmod-rt61-pci kmod-r6040
 endef
 $(eval $(call Profile,ar525w))
 
index 8a94894..f030455 100644 (file)
@@ -7,7 +7,7 @@
 
 define Profile/wl153
   NAME:=Sitecom WL-153
-  PACKAGES:=kmod-rt61 kmod-r6040
+  PACKAGES:=kmod-rt61-pci kmod-r6040
 endef
 $(eval $(call Profile,wl153))