From d03a2de5d32ab1af36d7a77ce4b2899e5f871bf0 Mon Sep 17 00:00:00 2001 From: florian Date: Mon, 6 Aug 2007 18:48:58 +0000 Subject: More rdc-2.6 fixes by Daniel Gimpelevich, thanks ! git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8355 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../patches-2.6.22/001-eeprom_93cx6.patch | 46 ++++++++++++++++++++++ .../patches-2.6.22/002-eeprom_93cx6.patch | 36 +++++++++++++++++ .../patches-2.6.22/003-eeprom_93cx6.patch | 34 ++++++++++++++++ target/linux/rdc-2.6/Makefile | 4 +- target/linux/rdc-2.6/config/default | 2 + target/linux/rdc-2.6/profiles/AR525W.mk | 2 +- target/linux/rdc-2.6/profiles/WL-153.mk | 2 +- 7 files changed, 123 insertions(+), 3 deletions(-) create mode 100644 target/linux/generic-2.6/patches-2.6.22/001-eeprom_93cx6.patch create mode 100644 target/linux/generic-2.6/patches-2.6.22/002-eeprom_93cx6.patch create mode 100644 target/linux/generic-2.6/patches-2.6.22/003-eeprom_93cx6.patch (limited to 'target/linux') 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 index 000000000..9bc19fb49 --- /dev/null +++ b/target/linux/generic-2.6/patches-2.6.22/001-eeprom_93cx6.patch @@ -0,0 +1,46 @@ +From: Ivo van Doorn +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 +Signed-off-by: John W. Linville +--- + +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 index 000000000..7f2b12554 --- /dev/null +++ b/target/linux/generic-2.6/patches-2.6.22/002-eeprom_93cx6.patch @@ -0,0 +1,36 @@ +From: John W. Linville +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 +--- + +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 index 000000000..ae11f8226 --- /dev/null +++ b/target/linux/generic-2.6/patches-2.6.22/003-eeprom_93cx6.patch @@ -0,0 +1,34 @@ +From: Francois Romieu +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 +Signed-off-by: Jeff Garzik +--- + +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) diff --git a/target/linux/rdc-2.6/Makefile b/target/linux/rdc-2.6/Makefile index bf096f242..1b180cd41 100644 --- a/target/linux/rdc-2.6/Makefile +++ b/target/linux/rdc-2.6/Makefile @@ -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 diff --git a/target/linux/rdc-2.6/config/default b/target/linux/rdc-2.6/config/default index c28d44b45..b0990e42e 100644 --- a/target/linux/rdc-2.6/config/default +++ b/target/linux/rdc-2.6/config/default @@ -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 diff --git a/target/linux/rdc-2.6/profiles/AR525W.mk b/target/linux/rdc-2.6/profiles/AR525W.mk index 847607e8c..5c01554d4 100644 --- a/target/linux/rdc-2.6/profiles/AR525W.mk +++ b/target/linux/rdc-2.6/profiles/AR525W.mk @@ -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)) diff --git a/target/linux/rdc-2.6/profiles/WL-153.mk b/target/linux/rdc-2.6/profiles/WL-153.mk index 8a9489421..f030455b2 100644 --- a/target/linux/rdc-2.6/profiles/WL-153.mk +++ b/target/linux/rdc-2.6/profiles/WL-153.mk @@ -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)) -- cgit v1.2.3