From 52df74715be7c6a815a581b88e01bc0b392952f0 Mon Sep 17 00:00:00 2001 From: juhosg Date: Sat, 28 Nov 2009 18:01:09 +0000 Subject: ar71xx: fix mac address for 5GHz interface on WNDR3700 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18586 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- target/linux/ar71xx/files/arch/mips/ar71xx/mach-wndr3700.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'target/linux/ar71xx') diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wndr3700.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wndr3700.c index 472d603ba..5f95270ad 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wndr3700.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wndr3700.c @@ -107,7 +107,9 @@ static struct ar71xx_pci_irq wndr3700_pci_irqs[] __initdata = { }; static struct ath9k_platform_data wndr3700_wmac0_data; +static u8 wndr3700_wmac0_macaddr[6]; static struct ath9k_platform_data wndr3700_wmac1_data; +static u8 wndr3700_wmac1_macaddr[6]; static void wndr3700_pci_fixup(struct pci_dev *dev) { @@ -201,15 +203,17 @@ static int wndr3700_pci_plat_dev_init(struct pci_dev *dev) static void __init wndr3700_pci_init(void) { - u8 *ee; + u8 *ee = (u8 *) KSEG1ADDR(0x1fff0000); - ee = (u8 *) KSEG1ADDR(0x1fff1000); - memcpy(wndr3700_wmac0_data.eeprom_data, ee, + memcpy(wndr3700_wmac0_data.eeprom_data, ee + 0x1000, sizeof(wndr3700_wmac0_data.eeprom_data)); + memcpy(wndr3700_wmac0_macaddr, ee, sizeof(wndr3700_wmac0_macaddr)); + wndr3700_wmac0_data.macaddr = wndr3700_wmac0_macaddr; - ee = (u8 *) KSEG1ADDR(0x1fff5000); - memcpy(wndr3700_wmac1_data.eeprom_data, ee, + memcpy(wndr3700_wmac1_data.eeprom_data, ee + 0x5000, sizeof(wndr3700_wmac1_data.eeprom_data)); + memcpy(wndr3700_wmac1_macaddr, ee + 12, sizeof(wndr3700_wmac1_macaddr)); + wndr3700_wmac1_data.macaddr = wndr3700_wmac1_macaddr; ar71xx_pci_plat_dev_init = wndr3700_pci_plat_dev_init; ar71xx_pci_init(ARRAY_SIZE(wndr3700_pci_irqs), wndr3700_pci_irqs); -- cgit v1.2.3