2013-10-02 09:47:10

by Kevin Lo

[permalink] [raw]
Subject: [PATCH] rt2x00: rt2800lib: fix RF registers for RT5390/RT5392

Update rf registers to use the same values that the MediaTek/Ralink
reference driver DPO_RT5572_LinuxSTA_2.6.1.3_20121022 uses.

References:
RF5390RegTable in chips/rt5390.c
RF5392RegTable in chips/rt5390.c

Tested on TP-Link TL-WN727N and D-Link DWA-140 Rev.b3 usb wifi dongles.

Signed-off-by: Kevin Lo <[email protected]>
---

diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c
b/drivers/net/wireless/rt2x00/rt2800lib.c
index f414978..0bbd1b5 100644
--- a/drivers/net/wireless/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/rt2x00/rt2800lib.c
@@ -6449,7 +6449,7 @@ static void rt2800_init_rfcsr_5390(struct
rt2x00_dev *rt2x00dev)
rt2800_rfcsr_write(rt2x00dev, 28, 0x00);
rt2800_rfcsr_write(rt2x00dev, 29, 0x10);

- rt2800_rfcsr_write(rt2x00dev, 30, 0x00);
+ rt2800_rfcsr_write(rt2x00dev, 30, 0x10);
rt2800_rfcsr_write(rt2x00dev, 31, 0x80);
rt2800_rfcsr_write(rt2x00dev, 32, 0x80);
rt2800_rfcsr_write(rt2x00dev, 33, 0x00);
@@ -6487,7 +6487,7 @@ static void rt2800_init_rfcsr_5390(struct
rt2x00_dev *rt2x00dev)
rt2800_rfcsr_write(rt2x00dev, 56, 0x22);
rt2800_rfcsr_write(rt2x00dev, 57, 0x80);
rt2800_rfcsr_write(rt2x00dev, 58, 0x7f);
- rt2800_rfcsr_write(rt2x00dev, 59, 0x63);
+ rt2800_rfcsr_write(rt2x00dev, 59, 0x8f);

rt2800_rfcsr_write(rt2x00dev, 60, 0x45);
if (rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5390F))
@@ -6507,7 +6507,6 @@ static void rt2800_init_rfcsr_5392(struct
rt2x00_dev *rt2x00dev)
rt2800_rf_init_calibration(rt2x00dev, 2);

rt2800_rfcsr_write(rt2x00dev, 1, 0x17);
- rt2800_rfcsr_write(rt2x00dev, 2, 0x80);
rt2800_rfcsr_write(rt2x00dev, 3, 0x88);
rt2800_rfcsr_write(rt2x00dev, 5, 0x10);
rt2800_rfcsr_write(rt2x00dev, 6, 0xe0);



2013-10-10 18:00:10

by John W. Linville

[permalink] [raw]
Subject: Re: [PATCH] rt2x00: rt2800lib: fix RF registers for RT5390/RT5392

This patch is corrupt...

On Wed, Oct 02, 2013 at 05:46:34PM +0800, Kevin Lo wrote:
> Update rf registers to use the same values that the MediaTek/Ralink
> reference driver DPO_RT5572_LinuxSTA_2.6.1.3_20121022 uses.
>
> References:
> RF5390RegTable in chips/rt5390.c
> RF5392RegTable in chips/rt5390.c
>
> Tested on TP-Link TL-WN727N and D-Link DWA-140 Rev.b3 usb wifi dongles.
>
> Signed-off-by: Kevin Lo <[email protected]>
> ---
>
> diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c
> b/drivers/net/wireless/rt2x00/rt2800lib.c
> index f414978..0bbd1b5 100644
> --- a/drivers/net/wireless/rt2x00/rt2800lib.c
> +++ b/drivers/net/wireless/rt2x00/rt2800lib.c
> @@ -6449,7 +6449,7 @@ static void rt2800_init_rfcsr_5390(struct
> rt2x00_dev *rt2x00dev)
> rt2800_rfcsr_write(rt2x00dev, 28, 0x00);
> rt2800_rfcsr_write(rt2x00dev, 29, 0x10);
>
> - rt2800_rfcsr_write(rt2x00dev, 30, 0x00);
> + rt2800_rfcsr_write(rt2x00dev, 30, 0x10);
> rt2800_rfcsr_write(rt2x00dev, 31, 0x80);
> rt2800_rfcsr_write(rt2x00dev, 32, 0x80);
> rt2800_rfcsr_write(rt2x00dev, 33, 0x00);
> @@ -6487,7 +6487,7 @@ static void rt2800_init_rfcsr_5390(struct
> rt2x00_dev *rt2x00dev)
> rt2800_rfcsr_write(rt2x00dev, 56, 0x22);
> rt2800_rfcsr_write(rt2x00dev, 57, 0x80);
> rt2800_rfcsr_write(rt2x00dev, 58, 0x7f);
> - rt2800_rfcsr_write(rt2x00dev, 59, 0x63);
> + rt2800_rfcsr_write(rt2x00dev, 59, 0x8f);
>
> rt2800_rfcsr_write(rt2x00dev, 60, 0x45);
> if (rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5390F))
> @@ -6507,7 +6507,6 @@ static void rt2800_init_rfcsr_5392(struct
> rt2x00_dev *rt2x00dev)
> rt2800_rf_init_calibration(rt2x00dev, 2);
>
> rt2800_rfcsr_write(rt2x00dev, 1, 0x17);
> - rt2800_rfcsr_write(rt2x00dev, 2, 0x80);
> rt2800_rfcsr_write(rt2x00dev, 3, 0x88);
> rt2800_rfcsr_write(rt2x00dev, 5, 0x10);
> rt2800_rfcsr_write(rt2x00dev, 6, 0xe0);
>
>

--
John W. Linville Someday the world will need a hero, and you
[email protected] might be all we have. Be ready.

2013-10-04 13:56:20

by Stanislaw Gruszka

[permalink] [raw]
Subject: Re: [rt2x00-users] [PATCH] rt2x00: rt2800lib: fix RF registers for RT5390/RT5392

On Wed, Oct 02, 2013 at 05:46:34PM +0800, Kevin Lo wrote:
> Update rf registers to use the same values that the MediaTek/Ralink
> reference driver DPO_RT5572_LinuxSTA_2.6.1.3_20121022 uses.
>
> References:
> RF5390RegTable in chips/rt5390.c
> RF5392RegTable in chips/rt5390.c
>
> Tested on TP-Link TL-WN727N and D-Link DWA-140 Rev.b3 usb wifi dongles.
>
> Signed-off-by: Kevin Lo <[email protected]>

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