mac80211: rt2x00: backport accepted and pending patches from upstream
[openwrt/staging/wigyori.git] / package / kernel / mac80211 / patches / rt2x00 / 018-rt2800-enable-TX_PIN_CFG_RFRX_EN-only-for-MT7620.patch
1 From 4c0475ad8b73072b5b638163c2eb8309310406ed Mon Sep 17 00:00:00 2001
2 From: Stanislaw Gruszka <sgruszka@redhat.com>
3 Date: Wed, 13 Feb 2019 11:09:15 +0100
4 Subject: [PATCH 18/28] rt2800: enable TX_PIN_CFG_RFRX_EN only for MT7620
5
6 The TX_PIN_CFG_RFRX_EN bit was not set on other devices than MT7620,
7 restore old behavaviour since setting this bit maight not be
8 correct for older devices.
9
10 Fixes: 41977e86c984 ("rt2x00: add support for MT7620")
11 Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
12 ---
13 drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 7 ++++---
14 1 file changed, 4 insertions(+), 3 deletions(-)
15
16 --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
17 +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
18 @@ -3858,10 +3858,12 @@ static void rt2800_config_channel(struct
19 if (rt2x00_rt(rt2x00dev, RT3572))
20 rt2800_rfcsr_write(rt2x00dev, 8, 0);
21
22 - if (rt2x00_rt(rt2x00dev, RT6352))
23 + if (rt2x00_rt(rt2x00dev, RT6352)) {
24 tx_pin = rt2800_register_read(rt2x00dev, TX_PIN_CFG);
25 - else
26 + rt2x00_set_field32(&tx_pin, TX_PIN_CFG_RFRX_EN, 1);
27 + } else {
28 tx_pin = 0;
29 + }
30
31 switch (rt2x00dev->default_ant.tx_chain_num) {
32 case 3:
33 @@ -3916,7 +3918,6 @@ static void rt2800_config_channel(struct
34
35 rt2x00_set_field32(&tx_pin, TX_PIN_CFG_RFTR_EN, 1);
36 rt2x00_set_field32(&tx_pin, TX_PIN_CFG_TRSW_EN, 1);
37 - rt2x00_set_field32(&tx_pin, TX_PIN_CFG_RFRX_EN, 1); /* mt7620 */
38
39 rt2800_register_write(rt2x00dev, TX_PIN_CFG, tx_pin);
40