mt76x0: eeprom: fix VHT mcs{8,9} rate power offset
authorLorenzo Bianconi <lorenzo.bianconi@redhat.com>
Tue, 5 Feb 2019 14:06:34 +0000 (15:06 +0100)
committerFelix Fietkau <nbd@nbd.name>
Mon, 18 Feb 2019 18:54:33 +0000 (19:54 +0100)
Fix rate power configuration for VHT mcs 8 and 9 in
mt76x0_get_tx_power_per_rate. Moreover use the rate power
offset used for HT/VHT mcs 6 even for HT/VHT mcs 7

Fixes: b37bbc8c8251 ("mt76x0: remove eeprom dependency from mt76x0_set_tx_power_per_rate")
Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@redhat.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt76x0/eeprom.c

index b2cabce..64f9656 100644 (file)
@@ -189,7 +189,7 @@ void mt76x0_get_tx_power_per_rate(struct mt76x02_dev *dev)
        addr = is_2ghz ? MT_EE_TX_POWER_BYRATE_BASE + 8 : 0x126;
        val = mt76x02_eeprom_get(dev, addr);
        t->ht[4] = t->ht[5] = t->vht[4] = t->vht[5] = s6_to_s8(val);
-       t->ht[6] = t->vht[6] = s6_to_s8(val >> 8);
+       t->ht[6] = t->ht[7] = t->vht[6] = t->vht[7] = s6_to_s8(val >> 8);
 
        /* ht-vht mcs 1ss 0, 1, 2, 3 stbc */
        addr = is_2ghz ? MT_EE_TX_POWER_BYRATE_BASE + 14 : 0xec;
@@ -205,8 +205,8 @@ void mt76x0_get_tx_power_per_rate(struct mt76x02_dev *dev)
 
        /* vht mcs 8, 9 5GHz */
        val = mt76x02_eeprom_get(dev, 0x132);
-       t->vht[7] = s6_to_s8(val);
-       t->vht[8] = s6_to_s8(val >> 8);
+       t->vht[8] = s6_to_s8(val);
+       t->vht[9] = s6_to_s8(val >> 8);
 
        delta = mt76x0_tssi_enabled(dev) ? 0 : mt76x0_get_delta(dev);
        mt76x02_add_rate_power_offset(t, delta);