aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2011-07-17 19:27:14 +0000
committerJohn Crispin <john@openwrt.org>2011-07-17 19:27:14 +0000
commita6ceecd9738671fbbf36b1a0508f449c446a8ed2 (patch)
treeb6b615be871d4428e9517d0da1f5dd85d34a5ae4
parente80af9da6b46766cf31b7ba6972a4006cb8c29d7 (diff)
downloadupstream-a6ceecd9738671fbbf36b1a0508f449c446a8ed2.tar.gz
upstream-a6ceecd9738671fbbf36b1a0508f449c446a8ed2.tar.bz2
upstream-a6ceecd9738671fbbf36b1a0508f449c446a8ed2.zip
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 <openwrt@lukaperkov.net> SVN-Revision: 27662
-rw-r--r--package/madwifi/patches/353-devid.patch4
-rw-r--r--package/madwifi/patches/354-ifxmips_eeprom.patch9
2 files changed, 8 insertions, 5 deletions
diff --git a/package/madwifi/patches/353-devid.patch b/package/madwifi/patches/353-devid.patch
index bcc214b8fd..ee149ff0c2 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 134253466d..59036b1b4b 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;