ath9k_hw: fix sparse complaint on ar9003_switch_com_spdt_get()
authorLuis R. Rodriguez <mcgrof@qca.qualcomm.com>
Tue, 20 Dec 2011 18:46:11 +0000 (10:46 -0800)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 4 Jan 2012 19:30:40 +0000 (14:30 -0500)
This fixes this sparse complaint:

make C=2 CF="-D__CHECK_ENDIAN__" M=drivers/net/wireless/ath/

  CHECK   drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
drivers/net/wireless/ath/ath9k/ar9003_eeprom.c:3544:21: warning: incorrect type in assignment (different base types)
drivers/net/wireless/ath/ath9k/ar9003_eeprom.c:3544:21:    expected restricted __le32 [usertype] val
drivers/net/wireless/ath/ath9k/ar9003_eeprom.c:3544:21:    got restricted __le16 [usertype] switchcomspdt
drivers/net/wireless/ath/ath9k/ar9003_eeprom.c:3546:21: warning: incorrect type in assignment (different base types)
drivers/net/wireless/ath/ath9k/ar9003_eeprom.c:3546:21:    expected restricted __le32 [usertype] val
drivers/net/wireless/ath/ath9k/ar9003_eeprom.c:3546:21:    got restricted __le16 [usertype] switchcomspdt

The eep->modalHeader5G.switchcomspdt is a le16 and we return u16,
so just return le16_to_cpu().

Cc: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Luis R. Rodriguez <mcgrof@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/ar9003_eeprom.c

index 391def99314ce560bc2ddaac64d376e039142cab..9fbcbddea1658ece3080bc286eec0e8a353ee583 100644 (file)
@@ -3538,13 +3538,13 @@ static void ar9003_hw_xpa_bias_level_apply(struct ath_hw *ah, bool is2ghz)
 static u16 ar9003_switch_com_spdt_get(struct ath_hw *ah, bool is_2ghz)
 {
        struct ar9300_eeprom *eep = &ah->eeprom.ar9300_eep;
-       __le32 val;
+       __le16 val;
 
        if (is_2ghz)
                val = eep->modalHeader2G.switchcomspdt;
        else
                val = eep->modalHeader5G.switchcomspdt;
-       return le32_to_cpu(val);
+       return le16_to_cpu(val);
 }