atheros: fix up the wlan mac address if the board data is missing
SVN-Revision: 15330
This commit is contained in:
parent
f73b4e0b8c
commit
b31ce584a3
2 changed files with 5 additions and 3 deletions
|
@ -82,7 +82,7 @@
|
||||||
+obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
|
+obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/arch/mips/ar231x/board.c
|
+++ 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
|
+ * 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
|
+ * License. See the file "COPYING" in the main directory of this archive
|
||||||
|
@ -251,6 +251,8 @@
|
||||||
+ config = ar231x_board.config;
|
+ config = ar231x_board.config;
|
||||||
+ if (!memcmp(config->enet0_mac, "\x00\x00\x00\x00\x00\x00", 6)) {
|
+ if (!memcmp(config->enet0_mac, "\x00\x00\x00\x00\x00\x00", 6)) {
|
||||||
+ printk(KERN_INFO "Fixing up empty mac addresses\n");
|
+ 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->enet0_mac);
|
||||||
+ random_ether_addr(config->enet1_mac);
|
+ random_ether_addr(config->enet1_mac);
|
||||||
+ }
|
+ }
|
||||||
|
|
|
@ -256,7 +256,7 @@
|
||||||
+ default y
|
+ default y
|
||||||
--- a/arch/mips/ar231x/ar2315.c
|
--- a/arch/mips/ar231x/ar2315.c
|
||||||
+++ b/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);
|
do_IRQ(AR531X_GPIO_IRQ_BASE + bit);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -284,7 +284,7 @@
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Called when an interrupt is received, this function
|
* 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);
|
do_IRQ(AR2315_IRQ_WLAN0_INTRS);
|
||||||
else if (pending & CAUSEF_IP4)
|
else if (pending & CAUSEF_IP4)
|
||||||
do_IRQ(AR2315_IRQ_ENET0_INTRS);
|
do_IRQ(AR2315_IRQ_ENET0_INTRS);
|
||||||
|
|
Loading…
Reference in a new issue