Commit a21ee724 authored by Gertjan van Wingerde's avatar Gertjan van Wingerde Committed by John W. Linville

rt2x00: Fix HT40+/HT40- setting in rt2800.

Inspection of the Ralink vendor driver shows that the TX_BAND_CFG register
and BBP register 3 are about HT40- indication, not about HT40+ indication.
Inverse the meaning of these fields in the code.
Signed-off-by: default avatarGertjan van Wingerde <gwingerde@gmail.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 79a854f1
...@@ -845,7 +845,7 @@ ...@@ -845,7 +845,7 @@
* TX_BAND_CFG: 0x1 use upper 20MHz, 0x0 use lower 20MHz * TX_BAND_CFG: 0x1 use upper 20MHz, 0x0 use lower 20MHz
*/ */
#define TX_BAND_CFG 0x132c #define TX_BAND_CFG 0x132c
#define TX_BAND_CFG_HT40_PLUS FIELD32(0x00000001) #define TX_BAND_CFG_HT40_MINUS FIELD32(0x00000001)
#define TX_BAND_CFG_A FIELD32(0x00000002) #define TX_BAND_CFG_A FIELD32(0x00000002)
#define TX_BAND_CFG_BG FIELD32(0x00000004) #define TX_BAND_CFG_BG FIELD32(0x00000004)
...@@ -1519,7 +1519,7 @@ struct mac_iveiv_entry { ...@@ -1519,7 +1519,7 @@ struct mac_iveiv_entry {
* BBP 3: RX Antenna * BBP 3: RX Antenna
*/ */
#define BBP3_RX_ANTENNA FIELD8(0x18) #define BBP3_RX_ANTENNA FIELD8(0x18)
#define BBP3_HT40_PLUS FIELD8(0x20) #define BBP3_HT40_MINUS FIELD8(0x20)
/* /*
* BBP 4: Bandwidth * BBP 4: Bandwidth
......
...@@ -867,7 +867,7 @@ static void rt2800_config_channel(struct rt2x00_dev *rt2x00dev, ...@@ -867,7 +867,7 @@ static void rt2800_config_channel(struct rt2x00_dev *rt2x00dev,
} }
rt2800_register_read(rt2x00dev, TX_BAND_CFG, &reg); rt2800_register_read(rt2x00dev, TX_BAND_CFG, &reg);
rt2x00_set_field32(&reg, TX_BAND_CFG_HT40_PLUS, conf_is_ht40_plus(conf)); rt2x00_set_field32(&reg, TX_BAND_CFG_HT40_MINUS, conf_is_ht40_minus(conf));
rt2x00_set_field32(&reg, TX_BAND_CFG_A, rf->channel > 14); rt2x00_set_field32(&reg, TX_BAND_CFG_A, rf->channel > 14);
rt2x00_set_field32(&reg, TX_BAND_CFG_BG, rf->channel <= 14); rt2x00_set_field32(&reg, TX_BAND_CFG_BG, rf->channel <= 14);
rt2800_register_write(rt2x00dev, TX_BAND_CFG, reg); rt2800_register_write(rt2x00dev, TX_BAND_CFG, reg);
...@@ -900,7 +900,7 @@ static void rt2800_config_channel(struct rt2x00_dev *rt2x00dev, ...@@ -900,7 +900,7 @@ static void rt2800_config_channel(struct rt2x00_dev *rt2x00dev,
rt2800_bbp_write(rt2x00dev, 4, bbp); rt2800_bbp_write(rt2x00dev, 4, bbp);
rt2800_bbp_read(rt2x00dev, 3, &bbp); rt2800_bbp_read(rt2x00dev, 3, &bbp);
rt2x00_set_field8(&bbp, BBP3_HT40_PLUS, conf_is_ht40_plus(conf)); rt2x00_set_field8(&bbp, BBP3_HT40_MINUS, conf_is_ht40_minus(conf));
rt2800_bbp_write(rt2x00dev, 3, bbp); rt2800_bbp_write(rt2x00dev, 3, bbp);
if (rt2x00_rt_rev(rt2x00dev, RT2860, REV_RT2860C)) { if (rt2x00_rt_rev(rt2x00dev, RT2860, REV_RT2860C)) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment