diff --git a/drivers/net/wireless/ath/ath9k/common.c b/drivers/net/wireless/ath/ath9k/common.c
index 4a13632e3e4d2d6d29b045d06dbba294f505970e..d96751ccee96abc78a29a48b2ffa3e16ba503e02 100644
--- a/drivers/net/wireless/ath/ath9k/common.c
+++ b/drivers/net/wireless/ath/ath9k/common.c
@@ -181,8 +181,6 @@ static void ath9k_process_rssi(struct ath_common *common,
 					      ATH_RSSI_EP_MULTIPLIER);
 	if (rx_stats->rs_rssi < 0)
 		rx_stats->rs_rssi = 0;
-	else if (rx_stats->rs_rssi > 127)
-		rx_stats->rs_rssi = 127;
 
 	/* Update Beacon RSSI, this is used by ANI. */
 	if (ieee80211_is_beacon(fc))
diff --git a/drivers/net/wireless/ath/ath9k/hw.h b/drivers/net/wireless/ath/ath9k/hw.h
index f8f5e997162cd693d52ecf9d163cb636233da106..a22ed766b6ae25f1b62628769883081addb54005 100644
--- a/drivers/net/wireless/ath/ath9k/hw.h
+++ b/drivers/net/wireless/ath/ath9k/hw.h
@@ -60,7 +60,7 @@
 
 #define	ATH_DEFAULT_NOISE_FLOOR -95
 
-#define ATH9K_RSSI_BAD			0x80
+#define ATH9K_RSSI_BAD			-128
 
 /* Register read/write primitives */
 #define REG_WRITE(_ah, _reg, _val) \