From b31ce584a3408ba4682db5c175dd39ed32371654 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Tue, 21 Apr 2009 18:48:59 +0000 Subject: atheros: fix up the wlan mac address if the board data is missing SVN-Revision: 15330 --- target/linux/atheros/patches-2.6.28/100-board.patch | 4 +++- target/linux/atheros/patches-2.6.28/105-ar2315_pci.patch | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'target/linux') diff --git a/target/linux/atheros/patches-2.6.28/100-board.patch b/target/linux/atheros/patches-2.6.28/100-board.patch index 8b76d07c38..587094d268 100644 --- a/target/linux/atheros/patches-2.6.28/100-board.patch +++ b/target/linux/atheros/patches-2.6.28/100-board.patch @@ -82,7 +82,7 @@ +obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o --- /dev/null +++ b/arch/mips/ar231x/board.c -@@ -0,0 +1,247 @@ +@@ -0,0 +1,249 @@ +/* + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file "COPYING" in the main directory of this archive @@ -251,6 +251,8 @@ + config = ar231x_board.config; + if (!memcmp(config->enet0_mac, "\x00\x00\x00\x00\x00\x00", 6)) { + printk(KERN_INFO "Fixing up empty mac addresses\n"); ++ random_ether_addr(config->wlan0_mac); ++ config->wlan0_mac[0] &= ~0x06; + random_ether_addr(config->enet0_mac); + random_ether_addr(config->enet1_mac); + } diff --git a/target/linux/atheros/patches-2.6.28/105-ar2315_pci.patch b/target/linux/atheros/patches-2.6.28/105-ar2315_pci.patch index 9b76dfee46..7c5afbdb83 100644 --- a/target/linux/atheros/patches-2.6.28/105-ar2315_pci.patch +++ b/target/linux/atheros/patches-2.6.28/105-ar2315_pci.patch @@ -256,7 +256,7 @@ + default y --- a/arch/mips/ar231x/ar2315.c +++ b/arch/mips/ar231x/ar2315.c -@@ -63,6 +63,27 @@ static inline void ar2315_gpio_irq(void) +@@ -61,6 +61,27 @@ static inline void ar2315_gpio_irq(void) do_IRQ(AR531X_GPIO_IRQ_BASE + bit); } @@ -284,7 +284,7 @@ /* * Called when an interrupt is received, this function -@@ -81,6 +102,10 @@ ar2315_irq_dispatch(void) +@@ -79,6 +100,10 @@ ar2315_irq_dispatch(void) do_IRQ(AR2315_IRQ_WLAN0_INTRS); else if (pending & CAUSEF_IP4) do_IRQ(AR2315_IRQ_ENET0_INTRS); -- cgit v1.2.3