1 --- a/drivers/net/wireless/ath/ath9k/eeprom_def.c
2 +++ b/drivers/net/wireless/ath/ath9k/eeprom_def.c
3 @@ -267,7 +267,7 @@ static int ath9k_hw_def_check_eeprom(str
4 struct ar5416_eeprom_def *eep =
5 (struct ar5416_eeprom_def *) &ah->eeprom.def;
6 struct ath_common *common = ath9k_hw_common(ah);
7 - u16 *eepdata, temp, magic, magic2;
8 + u16 *eepdata, temp, magic;
10 bool need_swap = false;
12 @@ -277,27 +277,15 @@ static int ath9k_hw_def_check_eeprom(str
16 - if (!ath9k_hw_use_flash(ah)) {
17 - ath_dbg(common, EEPROM, "Read Magic = 0x%04X\n", magic);
19 - if (magic != AR5416_EEPROM_MAGIC) {
20 - magic2 = swab16(magic);
22 - if (magic2 == AR5416_EEPROM_MAGIC) {
23 - size = sizeof(struct ar5416_eeprom_def);
25 - eepdata = (u16 *) (&ah->eeprom);
27 - for (addr = 0; addr < size / sizeof(u16); addr++) {
28 - temp = swab16(*eepdata);
34 - "Invalid EEPROM Magic. Endianness mismatch.\n");
37 + if (swab16(magic) == AR5416_EEPROM_MAGIC) {
38 + size = sizeof(struct ar5416_eeprom_def);
40 + eepdata = (u16 *) (&ah->eeprom);
42 + for (addr = 0; addr < size / sizeof(u16); addr++) {
43 + temp = swab16(*eepdata);