From 63c08f0f0b41e1ab3f453ab811a8b51ae54542c6 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Sat, 9 Apr 2011 18:25:59 +0000 Subject: [PATCH] atheros: fix up empty radio data mac address (based on patch from #8601) SVN-Revision: 26555 --- target/linux/atheros/patches-2.6.37/100-board.patch | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/target/linux/atheros/patches-2.6.37/100-board.patch b/target/linux/atheros/patches-2.6.37/100-board.patch index 97d51f4798..b72d32109c 100644 --- a/target/linux/atheros/patches-2.6.37/100-board.patch +++ b/target/linux/atheros/patches-2.6.37/100-board.patch @@ -85,7 +85,7 @@ +obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o --- /dev/null +++ b/arch/mips/ar231x/board.c -@@ -0,0 +1,251 @@ +@@ -0,0 +1,258 @@ +/* + * 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 @@ -225,6 +225,7 @@ + u8 *bcfg, *rcfg; + u8 *board_data; + u8 *radio_data; ++ u8 *mac_addr; + u32 offset; + + ar231x_board.config = NULL; @@ -282,6 +283,12 @@ + rcfg_size = BOARD_CONFIG_BUFSZ - offset; + memcpy(radio_data, rcfg, rcfg_size); + ++ mac_addr = &radio_data[0x1d * 2]; ++ if (is_broadcast_ether_addr(mac_addr)) { ++ printk(KERN_INFO "Radio MAC is blank; using board-data\n"); ++ memcpy(mac_addr, ar231x_board.config->wlan0_mac, ETH_ALEN); ++ } ++ + return 0; +} +