aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm47xx
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@openwrt.org>2013-02-16 13:46:00 +0000
committerHauke Mehrtens <hauke@openwrt.org>2013-02-16 13:46:00 +0000
commit2a28660d300176ce13dd419be469e91767c9c076 (patch)
treeb28c4659646327389c5e7fd5c245347653fa79f6 /target/linux/brcm47xx
parent117f7697ec09d0ca69959882c4454d41b6794e7f (diff)
downloadupstream-2a28660d300176ce13dd419be469e91767c9c076.tar.gz
upstream-2a28660d300176ce13dd419be469e91767c9c076.tar.bz2
upstream-2a28660d300176ce13dd419be469e91767c9c076.zip
brcm47xx: fix unaligned access to mac address
The mac address should be aligned to u16 to prevent an unaligned access in drivers/ssb/pci.c where it is casted to __be16. This closes #9824. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35618 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm47xx')
-rw-r--r--target/linux/brcm47xx/patches-3.6/270-ssb-fix-unaligned-access-to-mac-address.patch18
1 files changed, 18 insertions, 0 deletions
diff --git a/target/linux/brcm47xx/patches-3.6/270-ssb-fix-unaligned-access-to-mac-address.patch b/target/linux/brcm47xx/patches-3.6/270-ssb-fix-unaligned-access-to-mac-address.patch
new file mode 100644
index 0000000000..0a4dd62487
--- /dev/null
+++ b/target/linux/brcm47xx/patches-3.6/270-ssb-fix-unaligned-access-to-mac-address.patch
@@ -0,0 +1,18 @@
+--- a/include/linux/ssb/ssb.h
++++ b/include/linux/ssb/ssb.h
+@@ -26,6 +26,7 @@ struct ssb_sprom_core_pwr_info {
+
+ struct ssb_sprom {
+ u8 revision;
++ u8 country_code; /* Country Code */
+ u8 il0mac[6]; /* MAC address for 802.11b/g */
+ u8 et0mac[6]; /* MAC address for Ethernet */
+ u8 et1mac[6]; /* MAC address for 802.11a */
+@@ -36,7 +37,6 @@ struct ssb_sprom {
+ u16 board_rev; /* Board revision number from SPROM. */
+ u16 board_num; /* Board number from SPROM. */
+ u16 board_type; /* Board type from SPROM. */
+- u8 country_code; /* Country Code */
+ char alpha2[2]; /* Country Code as two chars like EU or US */
+ u8 leddc_on_time; /* LED Powersave Duty Cycle On Count */
+ u8 leddc_off_time; /* LED Powersave Duty Cycle Off Count */