From f3bcdcf9ed89f7d8636136c7b7b1a7c3c690e63e Mon Sep 17 00:00:00 2001 From: blogic Date: Sun, 17 Jul 2011 19:27:14 +0000 Subject: better lantiq support in madwifi Allow for each lantiq target (without wifi eeprom) to define where wireless configuration data is on flash. Patch also adds support for sx763 lantiq target. Signed-off-by: Luka Perkov git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27662 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/madwifi/patches/353-devid.patch | 4 +++- package/madwifi/patches/354-ifxmips_eeprom.patch | 9 +++++---- 2 files changed, 8 insertions(+), 5 deletions(-) (limited to 'package') diff --git a/package/madwifi/patches/353-devid.patch b/package/madwifi/patches/353-devid.patch index bcc214b8f..ee149ff0c 100644 --- a/package/madwifi/patches/353-devid.patch +++ b/package/madwifi/patches/353-devid.patch @@ -1,9 +1,10 @@ --- a/ath/if_ath_pci.c +++ b/ath/if_ath_pci.c -@@ -114,11 +114,13 @@ static struct pci_device_id ath_pci_id_t +@@ -114,11 +114,15 @@ static struct pci_device_id ath_pci_id_t { 0x168c, 0x0023, PCI_ANY_ID, PCI_ANY_ID }, { 0x168c, 0x0024, PCI_ANY_ID, PCI_ANY_ID }, { 0x168c, 0x9013, PCI_ANY_ID, PCI_ANY_ID }, /* sonicwall */ ++ { 0x168c, 0xff16, PCI_ANY_ID, PCI_ANY_ID }, + { 0x168c, 0xff1a, PCI_ANY_ID, PCI_ANY_ID }, { 0 } }; @@ -11,6 +12,7 @@ static u16 ath_devidmap[][2] = { - { 0x9013, 0x0013 } + { 0x9013, 0x0013 }, ++ { 0xff16, 0x0013 }, + { 0xff1a, 0x001a } }; diff --git a/package/madwifi/patches/354-ifxmips_eeprom.patch b/package/madwifi/patches/354-ifxmips_eeprom.patch index 134253466..59036b1b4 100644 --- a/package/madwifi/patches/354-ifxmips_eeprom.patch +++ b/package/madwifi/patches/354-ifxmips_eeprom.patch @@ -1,12 +1,13 @@ --- a/ath_hal/ah_os.c +++ b/ath_hal/ah_os.c -@@ -343,6 +343,45 @@ +@@ -343,6 +343,46 @@ EXPORT_SYMBOL(ath_hal_func); * NB: see the comments in ah_osdep.h about byte-swapping register * reads and writes to understand what's going on below. */ + +#ifdef CONFIG_LANTIQ +extern int lantiq_emulate_madwifi_eep; ++extern unsigned long long lantiq_madwifi_eep_addr; +#define EEPROM_EMULATION 1 +#endif + @@ -31,7 +32,7 @@ + val = 0x00000002; + break; + case 0x6004: -+ val = cpu_to_le16(__raw_readw((u16 *) KSEG1ADDR(0xb07f0400 + addrsel))); ++ val = cpu_to_le16(__raw_readw((u16 *) KSEG1ADDR(lantiq_madwifi_eep_addr + addrsel))); + /* this forces the regdomain to 0x00 (worldwide), as the original setting + * causes issues with the HAL */ + if (addrsel == 0x17e) @@ -46,7 +47,7 @@ void __ahdecl ath_hal_reg_write(struct ath_hal *ah, u_int reg, u_int32_t val) { -@@ -351,20 +390,33 @@ +@@ -351,20 +391,33 @@ ath_hal_reg_write(struct ath_hal *ah, u_ ath_hal_printf(ah, "%s: WRITE 0x%x <= 0x%x\n", (ath_hal_func ?: "unknown"), reg, val); #endif @@ -84,7 +85,7 @@ (ath_hal_func ?: "unknown"), reg, val); #endif return val; -@@ -581,7 +633,6 @@ +@@ -581,7 +634,6 @@ init_ath_hal(void) { const char *sep; int i; -- cgit v1.2.3