mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-27 16:43:09 +02:00
[mac80211] adds eeprom endianess check to ath9k
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31068 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
a3f0c9fadf
commit
88bfa13565
48
package/mac80211/patches/999-ath9k.patch
Normal file
48
package/mac80211/patches/999-ath9k.patch
Normal file
@ -0,0 +1,48 @@
|
||||
--- a/drivers/net/wireless/ath/ath9k/eeprom_def.c
|
||||
+++ b/drivers/net/wireless/ath/ath9k/eeprom_def.c
|
||||
@@ -267,7 +267,7 @@ static int ath9k_hw_def_check_eeprom(str
|
||||
struct ar5416_eeprom_def *eep =
|
||||
(struct ar5416_eeprom_def *) &ah->eeprom.def;
|
||||
struct ath_common *common = ath9k_hw_common(ah);
|
||||
- u16 *eepdata, temp, magic, magic2;
|
||||
+ u16 *eepdata, temp, magic;
|
||||
u32 sum = 0, el;
|
||||
bool need_swap = false;
|
||||
int i, addr, size;
|
||||
@@ -277,27 +277,15 @@ static int ath9k_hw_def_check_eeprom(str
|
||||
return false;
|
||||
}
|
||||
|
||||
- if (!ath9k_hw_use_flash(ah)) {
|
||||
- ath_dbg(common, EEPROM, "Read Magic = 0x%04X\n", magic);
|
||||
-
|
||||
- if (magic != AR5416_EEPROM_MAGIC) {
|
||||
- magic2 = swab16(magic);
|
||||
-
|
||||
- if (magic2 == AR5416_EEPROM_MAGIC) {
|
||||
- size = sizeof(struct ar5416_eeprom_def);
|
||||
- need_swap = true;
|
||||
- eepdata = (u16 *) (&ah->eeprom);
|
||||
-
|
||||
- for (addr = 0; addr < size / sizeof(u16); addr++) {
|
||||
- temp = swab16(*eepdata);
|
||||
- *eepdata = temp;
|
||||
- eepdata++;
|
||||
- }
|
||||
- } else {
|
||||
- ath_err(common,
|
||||
- "Invalid EEPROM Magic. Endianness mismatch.\n");
|
||||
- return -EINVAL;
|
||||
- }
|
||||
+ if (swab16(magic) == AR5416_EEPROM_MAGIC) {
|
||||
+ size = sizeof(struct ar5416_eeprom_def);
|
||||
+ need_swap = true;
|
||||
+ eepdata = (u16 *) (&ah->eeprom);
|
||||
+
|
||||
+ for (addr = 0; addr < size / sizeof(u16); addr++) {
|
||||
+ temp = swab16(*eepdata);
|
||||
+ *eepdata = temp;
|
||||
+ eepdata++;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user