More rdc-2.6 fixes by Daniel Gimpelevich, thanks !

SVN-Revision: 8355
This commit is contained in:
Florian Fainelli 2007-08-06 18:48:58 +00:00
parent 30af966213
commit 560411655b
11 changed files with 144 additions and 34 deletions

View 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

View 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

View file

@ -12,6 +12,10 @@
#undef CONFIG_RT2X00_ASM
#ifndef CONFIG_RT2X00_LIB_FIRMWARE
#define CONFIG_RT2X00_LIB_FIRMWARE
#endif
#ifndef CONFIG_RT2400PCI
#define CONFIG_RT2400PCI
#endif
@ -38,29 +42,3 @@
#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

View 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)

View file

@ -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);
}

View file

@ -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)

View file

@ -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)

View 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

View 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

View 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))

View 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))