2018-04-05 12:22:37

by Xose Vazquez Perez

[permalink] [raw]
Subject: [PATCH] wireless: rt2x00: rt2800: add antenna diversity for RT5370G

RT5370G has hardware RX antenna diversity like RT5390R.
Based on DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2 manufacturer driver:
https://d86o2zu8ugzlg.cloudfront.net/mediatek-craft/drivers/DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2

Cc: Stanislaw Gruszka <[email protected]>
Cc: Helmut Schaa <[email protected]>
Cc: Gertjan van Wingerde <[email protected]>
Cc: Jakub Kicinski <[email protected]>
Cc: wireless newbie <[email protected]>
Cc: Kalle Valo <[email protected]>
Cc: linux wireless ml <[email protected]>
Signed-off-by: Xose Vazquez Perez <[email protected]>
---
drivers/net/wireless/ralink/rt2x00/rt2800.h | 1 +
drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 9 ++++++---
2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800.h b/drivers/net/wireless/ralink/rt2x00/rt2800.h
index 6a8c93fb6a43..7a133e94b1bf 100644
--- a/drivers/net/wireless/ralink/rt2x00/rt2800.h
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800.h
@@ -94,6 +94,7 @@
#define REV_RT3390E 0x0211
#define REV_RT3593E 0x0211
#define REV_RT5390F 0x0502
+#define REV_RT5370G 0x0503
#define REV_RT5390R 0x1502
#define REV_RT5592C 0x0221

diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
index 429d07b651dd..e827dc522580 100644
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -6220,8 +6220,9 @@ static void rt2800_init_bbp_53xx(struct rt2x00_dev *rt2x00dev)
rt2800_register_write(rt2x00dev, GPIO_CTRL, reg);
}

- /* This chip has hardware antenna diversity*/
- if (rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5390R)) {
+ /* These chips have hardware RX antenna diversity */
+ if (rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5390R) ||
+ rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5370G)) {
rt2800_bbp_write(rt2x00dev, 150, 0); /* Disable Antenna Software OFDM */
rt2800_bbp_write(rt2x00dev, 151, 0); /* Disable Antenna Software CCK */
rt2800_bbp_write(rt2x00dev, 154, 0); /* Clear previously selected antenna */
@@ -8748,7 +8749,9 @@ static int rt2800_init_eeprom(struct rt2x00_dev *rt2x00dev)
rt2x00dev->default_ant.rx = ANTENNA_A;
}

- if (rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5390R)) {
+ /* These chips have hardware RX antenna diversity */
+ if (rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5390R) ||
+ rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5370G)) {
rt2x00dev->default_ant.tx = ANTENNA_HW_DIVERSITY; /* Unused */
rt2x00dev->default_ant.rx = ANTENNA_HW_DIVERSITY; /* Unused */
}
--
2.14.3


2018-04-25 08:25:15

by Kalle Valo

[permalink] [raw]
Subject: Re: rt2x00: rt2800: add antenna diversity for RT5370G

Xose Vazquez Perez <[email protected]> wrote:

> RT5370G has hardware RX antenna diversity like RT5390R.
> Based on DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2 manufacturer driver:
> https://d86o2zu8ugzlg.cloudfront.net/mediatek-craft/drivers/DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2
>
> Cc: Stanislaw Gruszka <[email protected]>
> Cc: Helmut Schaa <[email protected]>
> Cc: Gertjan van Wingerde <[email protected]>
> Cc: Jakub Kicinski <[email protected]>
> Cc: wireless newbie <[email protected]>
> Cc: Kalle Valo <[email protected]>
> Cc: linux wireless ml <[email protected]>
> Signed-off-by: Xose Vazquez Perez <[email protected]>
> Acked-by: Stanislaw Gruszka <[email protected]>

Patch applied to wireless-drivers-next.git, thanks.

9d81ecde4dce rt2x00: rt2800: add antenna diversity for RT5370G

--
https://patchwork.kernel.org/patch/10324503/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches

2018-04-05 12:27:38

by Stanislaw Gruszka

[permalink] [raw]
Subject: Re: [PATCH] wireless: rt2x00: rt2800: add antenna diversity for RT5370G

On Thu, Apr 05, 2018 at 02:22:32PM +0200, Xose Vazquez Perez wrote:
> RT5370G has hardware RX antenna diversity like RT5390R.
> Based on DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2 manufacturer driver:
> https://d86o2zu8ugzlg.cloudfront.net/mediatek-craft/drivers/DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2
>
> Cc: Stanislaw Gruszka <[email protected]>
> Cc: Helmut Schaa <[email protected]>
> Cc: Gertjan van Wingerde <[email protected]>
> Cc: Jakub Kicinski <[email protected]>
> Cc: wireless newbie <[email protected]>
> Cc: Kalle Valo <[email protected]>
> Cc: linux wireless ml <[email protected]>
> Signed-off-by: Xose Vazquez Perez <[email protected]>

Acked-by: Stanislaw Gruszka <[email protected]>