* [PATCH 1/2] rt2x00: reduce tx power to nominal level on RT6352
@ 2018-12-27 14:05 Tomislav Požega
2018-12-27 14:05 ` [PATCH 2/2] rt2x00: define RF5592 in init_eeprom routine Tomislav Požega
2019-02-01 12:05 ` [PATCH 1/2] rt2x00: reduce tx power to nominal level on RT6352 Kalle Valo
0 siblings, 2 replies; 5+ messages in thread
From: Tomislav Požega @ 2018-12-27 14:05 UTC (permalink / raw)
To: linux-wireless; +Cc: kvalo, hauke, nbd, john, sgruszka, daniel
Current implementation of RT6352 support provides too high tx power
at least on iPA/eLNA devices. Reduce amplification of variable gain
amplifier by 6dB to match board target power of 17dBm.
Transmited signal strength with this patch is similar to that of
stock firmware or pandorabox firmware. Throughput measured with iperf
improves. Device tested: Xiaomi Miwifi Mini.
Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
---
drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
index 0e95555..7f813f6 100644
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -5477,7 +5477,7 @@ static int rt2800_init_registers(struct rt2x00_dev *rt2x00dev)
rt2800_register_write(rt2x00dev, TX_SW_CFG2, 0x00000000);
rt2800_register_write(rt2x00dev, MIMO_PS_CFG, 0x00000002);
rt2800_register_write(rt2x00dev, TX_PIN_CFG, 0x00150F0F);
- rt2800_register_write(rt2x00dev, TX_ALC_VGA3, 0x06060606);
+ rt2800_register_write(rt2x00dev, TX_ALC_VGA3, 0x00000000);
rt2800_register_write(rt2x00dev, TX0_BB_GAIN_ATTEN, 0x0);
rt2800_register_write(rt2x00dev, TX1_BB_GAIN_ATTEN, 0x0);
rt2800_register_write(rt2x00dev, TX0_RF_GAIN_ATTEN, 0x6C6C666C);
--
1.7.0.4
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/2] rt2x00: define RF5592 in init_eeprom routine
2018-12-27 14:05 [PATCH 1/2] rt2x00: reduce tx power to nominal level on RT6352 Tomislav Požega
@ 2018-12-27 14:05 ` Tomislav Požega
2019-01-02 8:37 ` Stanislaw Gruszka
2019-02-01 12:05 ` [PATCH 1/2] rt2x00: reduce tx power to nominal level on RT6352 Kalle Valo
1 sibling, 1 reply; 5+ messages in thread
From: Tomislav Požega @ 2018-12-27 14:05 UTC (permalink / raw)
To: linux-wireless; +Cc: kvalo, hauke, nbd, john, sgruszka, daniel
This patch fixes following crash on Linksys EA2750 during 5GHz wifi
init:
[ 7.955153] rt2800pci 0000:01:00.0: card - bus=0x1, slot = 0x0 irq=4
[ 7.962259] rt2800pci 0000:01:00.0: loaded eeprom from mtd device "Factory"
[ 7.969435] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 5592, rev 0222 detected
[ 7.977348] ieee80211 phy0: rt2800_init_eeprom: Error - Invalid RF chipset 0x0000 detected
[ 7.985793] ieee80211 phy0: rt2x00lib_probe_dev: Error - Failed to allocate device
[ 7.993569] CPU 0 Unable to handle kernel paging request at virtual address 00000024, epc == 800c8f54, ra == 80249ff8
[ 8.004408] Oops[#1]:
Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
---
drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
index 7f813f6..86770e8 100644
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -8839,6 +8839,8 @@ static int rt2800_init_eeprom(struct rt2x00_dev *rt2x00dev)
rf = RF3322;
else if (rt2x00_rt(rt2x00dev, RT5350))
rf = RF5350;
+ else if (rt2x00_rt(rt2x00dev, RT5592))
+ rf = RF5592;
else
rf = rt2x00_get_field16(eeprom, EEPROM_NIC_CONF0_RF_TYPE);
--
1.7.0.4
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 2/2] rt2x00: define RF5592 in init_eeprom routine
2018-12-27 14:05 ` [PATCH 2/2] rt2x00: define RF5592 in init_eeprom routine Tomislav Požega
@ 2019-01-02 8:37 ` Stanislaw Gruszka
2020-07-06 11:14 ` Sebastian Gottschall
0 siblings, 1 reply; 5+ messages in thread
From: Stanislaw Gruszka @ 2019-01-02 8:37 UTC (permalink / raw)
To: Tomislav Požega
Cc: linux-wireless, kvalo, hauke, nbd, john, daniel, John Crispin
On Thu, Dec 27, 2018 at 03:05:26PM +0100, Tomislav Požega wrote:
> This patch fixes following crash on Linksys EA2750 during 5GHz wifi
> init:
>
> [ 7.955153] rt2800pci 0000:01:00.0: card - bus=0x1, slot = 0x0 irq=4
> [ 7.962259] rt2800pci 0000:01:00.0: loaded eeprom from mtd device "Factory"
> [ 7.969435] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 5592, rev 0222 detected
> [ 7.977348] ieee80211 phy0: rt2800_init_eeprom: Error - Invalid RF chipset 0x0000 detected
> [ 7.985793] ieee80211 phy0: rt2x00lib_probe_dev: Error - Failed to allocate device
> [ 7.993569] CPU 0 Unable to handle kernel paging request at virtual address 00000024, epc == 800c8f54, ra == 80249ff8
> [ 8.004408] Oops[#1]:
>
> Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
> ---
> drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 2 ++
> 1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> index 7f813f6..86770e8 100644
> --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> @@ -8839,6 +8839,8 @@ static int rt2800_init_eeprom(struct rt2x00_dev *rt2x00dev)
> rf = RF3322;
> else if (rt2x00_rt(rt2x00dev, RT5350))
> rf = RF5350;
> + else if (rt2x00_rt(rt2x00dev, RT5592))
> + rf = RF5592;
This looks like workaround for the crash and AFICT it is not needed
on upstream code. This most likely is a issue with below openwrt patch:
https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob;f=package/kernel/mac80211/patches/rt2x00/604-rt2x00-load-eeprom-on-SoC-from-a-mtd-device-defines-.patch;h=a98b49c541f5f76e73751c2fd2e5b85559854b87;hb=HEAD
which for some unknown reason set:
rt2x00dev->eeprom_file = &mtd_fw;
which then crash on rt2x00lib_free_eeprom_file() -> release_firmware();
Regards
Stanislaw
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] rt2x00: reduce tx power to nominal level on RT6352
2018-12-27 14:05 [PATCH 1/2] rt2x00: reduce tx power to nominal level on RT6352 Tomislav Požega
2018-12-27 14:05 ` [PATCH 2/2] rt2x00: define RF5592 in init_eeprom routine Tomislav Požega
@ 2019-02-01 12:05 ` Kalle Valo
1 sibling, 0 replies; 5+ messages in thread
From: Kalle Valo @ 2019-02-01 12:05 UTC (permalink / raw)
To: Tomislav Požega; +Cc: linux-wireless, hauke, nbd, john, sgruszka, daniel
Tomislav Požega wrote:
> Current implementation of RT6352 support provides too high tx power
> at least on iPA/eLNA devices. Reduce amplification of variable gain
> amplifier by 6dB to match board target power of 17dBm.
> Transmited signal strength with this patch is similar to that of
> stock firmware or pandorabox firmware. Throughput measured with iperf
> improves. Device tested: Xiaomi Miwifi Mini.
>
> Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
Patch applied to wireless-drivers-next.git, thanks.
c2e28ef7711f rt2x00: reduce tx power to nominal level on RT6352
--
https://patchwork.kernel.org/patch/10743705/
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 2/2] rt2x00: define RF5592 in init_eeprom routine
2019-01-02 8:37 ` Stanislaw Gruszka
@ 2020-07-06 11:14 ` Sebastian Gottschall
0 siblings, 0 replies; 5+ messages in thread
From: Sebastian Gottschall @ 2020-07-06 11:14 UTC (permalink / raw)
To: Stanislaw Gruszka, Tomislav Požega
Cc: linux-wireless, kvalo, hauke, nbd, john, daniel, John Crispin
you are wrong. this is not a workaround for the crash (this is just a
nice side effect). i had the same issue. the problem is that without
that patch the device RF is not properly detected.
since the device eeprom contains a rev 0. the same issue is present on
the Buffalo WHR-600D device
<6>rt2800pci 0000:01:00.0: loaded eeprom from mtd device "factory"
offset 8000
<6>ieee80211 phy1: rt2x00_set_rt: Info - RT chipset 5592, rev 0222 detected
<3>ieee80211 phy1: rt2800_init_eeprom: Error - Invalid RF chipset 0x0000
detected
<3>ieee80211 phy1: rt2x00lib_probe_dev: Error - Failed to allocate device
so this patch fixes the missdetection of the RF
Sebastian
Am 02.01.2019 um 09:37 schrieb Stanislaw Gruszka:
> On Thu, Dec 27, 2018 at 03:05:26PM +0100, Tomislav Požega wrote:
>> This patch fixes following crash on Linksys EA2750 during 5GHz wifi
>> init:
>>
>> [ 7.955153] rt2800pci 0000:01:00.0: card - bus=0x1, slot = 0x0 irq=4
>> [ 7.962259] rt2800pci 0000:01:00.0: loaded eeprom from mtd device "Factory"
>> [ 7.969435] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 5592, rev 0222 detected
>> [ 7.977348] ieee80211 phy0: rt2800_init_eeprom: Error - Invalid RF chipset 0x0000 detected
>> [ 7.985793] ieee80211 phy0: rt2x00lib_probe_dev: Error - Failed to allocate device
>> [ 7.993569] CPU 0 Unable to handle kernel paging request at virtual address 00000024, epc == 800c8f54, ra == 80249ff8
>> [ 8.004408] Oops[#1]:
>>
>> Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
>> ---
>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 2 ++
>> 1 files changed, 2 insertions(+), 0 deletions(-)
>>
>> diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
>> index 7f813f6..86770e8 100644
>> --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
>> +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
>> @@ -8839,6 +8839,8 @@ static int rt2800_init_eeprom(struct rt2x00_dev *rt2x00dev)
>> rf = RF3322;
>> else if (rt2x00_rt(rt2x00dev, RT5350))
>> rf = RF5350;
>> + else if (rt2x00_rt(rt2x00dev, RT5592))
>> + rf = RF5592;
> This looks like workaround for the crash and AFICT it is not needed
> on upstream code. This most likely is a issue with below openwrt patch:
>
> https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob;f=package/kernel/mac80211/patches/rt2x00/604-rt2x00-load-eeprom-on-SoC-from-a-mtd-device-defines-.patch;h=a98b49c541f5f76e73751c2fd2e5b85559854b87;hb=HEAD
>
> which for some unknown reason set:
>
> rt2x00dev->eeprom_file = &mtd_fw;
>
> which then crash on rt2x00lib_free_eeprom_file() -> release_firmware();
>
> Regards
> Stanislaw
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-07-06 11:42 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-27 14:05 [PATCH 1/2] rt2x00: reduce tx power to nominal level on RT6352 Tomislav Požega
2018-12-27 14:05 ` [PATCH 2/2] rt2x00: define RF5592 in init_eeprom routine Tomislav Požega
2019-01-02 8:37 ` Stanislaw Gruszka
2020-07-06 11:14 ` Sebastian Gottschall
2019-02-01 12:05 ` [PATCH 1/2] rt2x00: reduce tx power to nominal level on RT6352 Kalle Valo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).