OpenWrt Forum Archive

Topic: Update on Linksys WRT1900AC support

The content of this topic has been archived between 16 Sep 2014 and 7 May 2018. Unfortunately there are posts – most likely complete pages – missing.

NemoAlex wrote:
Armik wrote:
NemoAlex wrote:

Hello everyone,

I compiled the driver 10.3.0.14 that can be used on 15.05 final.

https://github.com/NemoAlex/openwrt-wrt … _mvebu.ipk

It runs on my router for days, feel great now.

Just download and install it if you need it.

how to put it?

Download the raw file, scp to router, opkg install it.

How to setup your driver:
opkg install /tmp/kmod-mwlwifi_3.18.20+10.3.0.14-20151107-1_mvebu.ipk
and then?

thx & so long

trustno1foxm wrote:

I have a WRT1200AC with 15.05 final and by using your command I got following cpu usage??!

root@OpenWrt:~# strings /lib/modules/*.*/mwlwifi.ko | grep "^10.3"
10.3.0.3
root@OpenWrt:~# grep mwl /proc/interrupts ; sleep 1; grep mwl /proc/interrupts
61:   98157674          0       GIC  61  mwlwifi
65:  124897225          0       GIC  65  mwlwifi
61:   98157791          0       GIC  61  mwlwifi
65:  124897333          0       GIC  65  mwlwifi

The bug is also in 10.3.0.3???

No....  .3 does not show this behavior....  look at second column....  you are seeing an increase of about 100/s

on .10/12/14 we are seeing 2000/s and hence core 0 is pegged at 50 to 60 % busy

Cheers

doITright wrote:
trustno1foxm wrote:

I have a WRT1200AC with 15.05 final and by using your command I got following cpu usage??!

root@OpenWrt:~# strings /lib/modules/*.*/mwlwifi.ko | grep "^10.3"
10.3.0.3
root@OpenWrt:~# grep mwl /proc/interrupts ; sleep 1; grep mwl /proc/interrupts
61:   98157674          0       GIC  61  mwlwifi
65:  124897225          0       GIC  65  mwlwifi
61:   98157791          0       GIC  61  mwlwifi
65:  124897333          0       GIC  65  mwlwifi

The bug is also in 10.3.0.3???

No....  .3 does not show this behavior....  look at second column....  you are seeing an increase of about 100/s

on .10/12/14 we are seeing 2000/s and hence core 0 is pegged at 50 to 60 % busy

Cheers

Ok, thx sorry! Didn't notice that!

"top" shows me 0% utilization.

so long

northbound wrote:

I can't answer that. I do the whole image to eliminate any possible variables.

Hmmm....  I only do it your way when jumping between many builds...  day to day or week to week sysupgrade is golden...

I will try the following in sequence and check for irq rate and cpu busy until I can confirm:

1. transfer and install the .13 ipk
2. sysupgrade to r47427 with .13
3. flash full r47427 with .13
4. flash full your build of r47417 with .13

Cheers

Chadster766 wrote:

I was doing some development on my WRT1900AC V2 and accidentally erased my u_env, s_env, devinfo mtd partitions.

Could someone with a WRT1900AC V2 post the output of the below commands so I can rebuild these mtd partitions?

For devinfo information:

Run while logged into OpenWRT or DD-WRT "cat /dev/mtd3" and Ctrl+c shortly after output starts.

For uboot environment variables at the uboot console:

printenv

I would like to test build the WRT1900AC V2 uboot bootloader like we have for the WRT1900AC V1. Does anyone have WRT1900AC V2 instructions for this?

http://wiki.openwrt.org/toh/linksys/wrt1900ac
Corrupt Bootloader Recovery

i have no serial connected, but a cat /dev/mtd3 | head -n 20  shows a lot of passphrases, mac-adresses, serialnumbers, WPS pincode and other uniquely identifiable things i'm not really happy to share. What is it exactly that you need?

@northbound:
I'll try it as soon as I got a little bit of free time ;-)
But two last questions:
- gufu's fan script: which version do you use? I got in mind there have been some changes? Could you please post your version?
- adblock: what is the advantage of adblocking at router-level vs. client-level? Could you post it please, too?

JohnnySL wrote:
Chadster766 wrote:

I was doing some development on my WRT1900AC V2 and accidentally erased my u_env, s_env, devinfo mtd partitions.

Could someone with a WRT1900AC V2 post the output of the below commands so I can rebuild these mtd partitions?

For devinfo information:

Run while logged into OpenWRT or DD-WRT "cat /dev/mtd3" and Ctrl+c shortly after output starts.

For uboot environment variables at the uboot console:

printenv

I would like to test build the WRT1900AC V2 uboot bootloader like we have for the WRT1900AC V1. Does anyone have WRT1900AC V2 instructions for this?

http://wiki.openwrt.org/toh/linksys/wrt1900ac
Corrupt Bootloader Recovery

i have no serial connected, but a cat /dev/mtd3 | head -n 20  shows a lot of passphrases, mac-adresses, serialnumbers, WPS pincode and other uniquely identifiable things i'm not really happy to share. What is it exactly that you need?

Thanks, like the example list below. As you can see I've masked "x" the values that are confidential.

Example:

cert_region=US
default_passphrase=xxxxxxxxxx
default_ssid=Linksys99999
deviceType=urn:home-linksys-com:device:Router:1
devinfo_version=20131025.1
hw_mac_addr=B4:75:0E:5A:xx:xx
hw_revision=1
hw_version=48SAM103.0GA
manufacturer=Linksys, LLC
manufacturerURL=http://www.linksys.com
manufacturer_date=2014/03/17
mfg_data_version=1
modelDescription=Simultaneous Dual-Band Wireless-AC Gigabit Router
modelNumber=WRT1900AC
serial_number=xxxxxxxxxxxxx
sw_version=v1.3.25
tc_passphrase=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
tc_ssid=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
euuid_key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
wps_device_pin=xxxxxxxxxx

doITright wrote:
northbound wrote:

I can't answer that. I do the whole image to eliminate any possible variables.

Hmmm....  I only do it your way when jumping between many builds...  day to day or week to week sysupgrade is golden...

I will try the following in sequence and check for irq rate and cpu busy until I can confirm:

1. transfer and install the .13 ipk
2. sysupgrade to r47427 with .13
3. flash full r47427 with .13
4. flash full your build of r47417 with .13

Cheers

I tried and scrapped 1.  Needed to force a downgrade or uninstall first etc.  Not worth the hassle....


Used step 2 above, and did not need to go further:


Firmware Version OpenWrt Designated Driver r47427 / LuCI (git-15.310.28416-524c918) 
Kernel Version 3.18.23
Local Time Mon Nov 9 13:37:33 2015
Uptime 0h 7m 32s
Load Average 0.00, 0.05, 0.05

root@WRT1900AC-P:/sbin# strings /lib/modules/*.*/mwlwifi.ko | grep "^10.3"
10.3.0.13
10.3.0.13
root@WRT1900AC-P:/sbin# grep mwl /proc/interrupts ; sleep 1; grep mwl /proc/interrupts
87:      19324          0  armada_370_xp_irq  59  mwlwifi
88:      18183          0  armada_370_xp_irq  60  mwlwifi
87:      19397          0  armada_370_xp_irq  59  mwlwifi
88:      18244          0  armada_370_xp_irq  60  mwlwifi

I can confirm that the irq and cpu problem is gone with .13 driver

So now the question is what changed between .13 and .14 and why?

Cheers

Chadster766 wrote:

Thanks, like the example list below. As you can see I've masked "x" the values that are confidential.

Example:

cert_region=US
default_passphrase=xxxxxxxxxx
default_ssid=Linksys99999
deviceType=urn:home-linksys-com:device:Router:1
devinfo_version=20131025.1
hw_mac_addr=B4:75:0E:5A:xx:xx
hw_revision=1
hw_version=48SAM103.0GA
manufacturer=Linksys, LLC
manufacturerURL=http://www.linksys.com
manufacturer_date=2014/03/17
mfg_data_version=1
modelDescription=Simultaneous Dual-Band Wireless-AC Gigabit Router
modelNumber=WRT1900AC
serial_number=xxxxxxxxxxxxx
sw_version=v1.3.25
tc_passphrase=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
tc_ssid=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
euuid_key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
wps_device_pin=xxxxxxxxxx

seems that you already have the structure...
here is mine:
~# cat /dev/mtd3 | head -n 20
cert_region=EU
default_passphrase=xxxxxxxxxx
default_ssid=Linksys00503
deviceType=urn:home-linksys-com:device:Router:1
devinfo_version=20141014.1
hw_mac_addr=C0:56:XX:XX:XX:XX
hw_revision=2
hw_version=48SAM201.0GA
manufacturer=Linksys, LLC
manufacturerURL=http://www.linksys.com
manufacturer_date=2015/06/10
mfg_data_version=1
modelDescription=Simultaneous Dual-Band Wireless-AC Gigabit Router
modelNumber=WRT1900AC-EU
serial_number=13J2XXXXXXXXXX
sw_version=v1.0.13
tc_passphrase=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
tc_ssid=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
uuid_key=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
wps_device_pin=xxxxxxxx

ssdnvv wrote:

@northbound:
I'll try it as soon as I got a little bit of free time ;-)
But two last questions:
- gufu's fan script: which version do you use? I got in mind there have been some changes? Could you please post your version?
- adblock: what is the advantage of adblocking at router-level vs. client-level? Could you post it please, too?

I like router level since every client does not have to maintain it. I posted the three things I add after install with instructions.
Also I have tweaked gufus's fan script but only temps.

https://onedrive.live.com/redir?resid=E … =folder%2c

doITright wrote:
doITright wrote:
northbound wrote:

I can't answer that. I do the whole image to eliminate any possible variables.

Hmmm....  I only do it your way when jumping between many builds...  day to day or week to week sysupgrade is golden...

I will try the following in sequence and check for irq rate and cpu busy until I can confirm:

1. transfer and install the .13 ipk
2. sysupgrade to r47427 with .13
3. flash full r47427 with .13
4. flash full your build of r47417 with .13

Cheers

I tried and scrapped 1.  Needed to force a downgrade or uninstall first etc.  Not worth the hassle....


Used step 2 above, and did not need to go further:


Firmware Version OpenWrt Designated Driver r47427 / LuCI (git-15.310.28416-524c918) 
Kernel Version 3.18.23
Local Time Mon Nov 9 13:37:33 2015
Uptime 0h 7m 32s
Load Average 0.00, 0.05, 0.05

root@WRT1900AC-P:/sbin# strings /lib/modules/*.*/mwlwifi.ko | grep "^10.3"
10.3.0.13
10.3.0.13
root@WRT1900AC-P:/sbin# grep mwl /proc/interrupts ; sleep 1; grep mwl /proc/interrupts
87:      19324          0  armada_370_xp_irq  59  mwlwifi
88:      18183          0  armada_370_xp_irq  60  mwlwifi
87:      19397          0  armada_370_xp_irq  59  mwlwifi
88:      18244          0  armada_370_xp_irq  60  mwlwifi

I can confirm that the irq and cpu problem is gone with .13 driver

So now the question is what changed between .13 and .14 and why?

Cheers

This will answer your question I just don't want .14's way shoved down my throat just because it may work better on a v2.
Did you check transfer speeds?

https://github.com/kaloz/mwlwifi/issues/43#

JohnnySL wrote:
Chadster766 wrote:

Thanks, like the example list below. As you can see I've masked "x" the values that are confidential.

Example:

cert_region=US
default_passphrase=xxxxxxxxxx
default_ssid=Linksys99999
deviceType=urn:home-linksys-com:device:Router:1
devinfo_version=20131025.1
hw_mac_addr=B4:75:0E:5A:xx:xx
hw_revision=1
hw_version=48SAM103.0GA
manufacturer=Linksys, LLC
manufacturerURL=http://www.linksys.com
manufacturer_date=2014/03/17
mfg_data_version=1
modelDescription=Simultaneous Dual-Band Wireless-AC Gigabit Router
modelNumber=WRT1900AC
serial_number=xxxxxxxxxxxxx
sw_version=v1.3.25
tc_passphrase=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
tc_ssid=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
euuid_key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
wps_device_pin=xxxxxxxxxx

seems that you already have the structure...
here is mine:
~# cat /dev/mtd3 | head -n 20
cert_region=EU
default_passphrase=xxxxxxxxxx
default_ssid=Linksys00503
deviceType=urn:home-linksys-com:device:Router:1
devinfo_version=20141014.1
hw_mac_addr=C0:56:XX:XX:XX:XX
hw_revision=2
hw_version=48SAM201.0GA
manufacturer=Linksys, LLC
manufacturerURL=http://www.linksys.com
manufacturer_date=2015/06/10
mfg_data_version=1
modelDescription=Simultaneous Dual-Band Wireless-AC Gigabit Router
modelNumber=WRT1900AC-EU
serial_number=13J2XXXXXXXXXX
sw_version=v1.0.13
tc_passphrase=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
tc_ssid=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
uuid_key=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
wps_device_pin=xxxxxxxx

Great, thank you and it's nice Linksys kept the same structure.

Now I need someone with a WRT1900AC V2 to post the uboot envars.

Chadster766 wrote:
JohnnySL wrote:

hw_version=48SAM201.0GA
mfg_data_version=1
modelDescription=Simultaneous Dual-Band Wireless-AC Gigabit Router
modelNumber=WRT1900AC-EU
sw_version=v1.0.13

Great, thank you and it's nice Linksys kept the same structure.

Now I need someone with a WRT1900AC V2 to post the uboot envars.

Can someone confirm that the North America sold WRT1900AC V2 have the same devinfo entries for the above?

northbound wrote:

This will answer your question I just don't want .14's way shoved down my throat just because it may work better on a v2.
Did you check transfer speeds?

https://github.com/kaloz/mwlwifi/issues/43#

A quick test shows that the transfer rate is ~ 80 % of .12/14

oh and temps are ~ 5 C lower with same fan script/settings (makes sense - no cpu load)

root@WRT1900AC-P:~# sensors
tmp421-i2c-0-4c
Adapter: mv64xxx_i2c adapter
temp1:        +39.3°C
temp2:        +40.9°C

armada_thermal-virtual-0
Adapter: Virtual device
temp1:        +49.4°C

It looks like .13 is better for v1 and .14 is better for v2

Since trunk is still at .12, I imagine .15 is around the corner smile

Cheers

doITright wrote:
northbound wrote:

This will answer your question I just don't want .14's way shoved down my throat just because it may work better on a v2.
Did you check transfer speeds?

https://github.com/kaloz/mwlwifi/issues/43#

A quick test shows that the transfer rate is ~ 80 % of .12/14

oh and temps are ~ 5 C lower with same fan script/settings (makes sense - no cpu load)

root@WRT1900AC-P:~# sensors
tmp421-i2c-0-4c
Adapter: mv64xxx_i2c adapter
temp1:        +39.3°C
temp2:        +40.9°C

armada_thermal-virtual-0
Adapter: Virtual device
temp1:        +49.4°C

It looks like .13 is better for v1 and .14 is better for v2

Since trunk is still at .12, I imagine .15 is around the corner smile

Cheers

Hmm, I did not notice that large of a difference in transfer speed. Hopefully they develop something that works good on both or separate them. smile

Chadster766 wrote:

Can someone confirm that the North America sold WRT1900AC V2 have the same devinfo entries for the above?

Why wouldn't they? would be nuts to change the layout for that, especially as it is the same between V1 and V2, i'd just remove the -EU as that seems to be the only difference?

BTW: would this help for the U-boot info? -> http://www.right.com.cn/forum/thread-171405-1-1.html

(Last edited by JohnnySL on 9 Nov 2015, 22:14)

doITright wrote:

So now the question is what changed between .13 and .14 and why?

Based on the commit note the whole point of .14 was to undo the changes in .13 that eliminated the 2000 soft IRQs per second.  The why has been left unanswered but the indication is that Marvell will likely stick with .14 rather than .13.

I'm likely going to branch from .13 and merge any subsequent changes (not looking forward to this), or just stick with .13.  I see no benefit to .14 over .13.  So far 3+ days uptime with no issues.

Why is easy, .13 kills the performance on a V2 and the newer ACS models.
It would be nicer if it would get properly fixed though, such that it runs ok on all hardware models.

I can live with .12/13/14 but the v1 does take a perf hit (at least with my set up) at .13

It does seem strange though that with the cpu overhead gone my throughput would suffer some 20 % over 5 GHz

Still...  we are making good progress...

Cheers

@DoITright
Just curious, how are you seeing this hit in performance?

:edit
Or should I say where?

(Last edited by northbound on 10 Nov 2015, 02:06)

trustno1foxm wrote:
NemoAlex wrote:
Armik wrote:

how to put it?

Download the raw file, scp to router, opkg install it.

How to setup your driver:
opkg install /tmp/kmod-mwlwifi_3.18.20+10.3.0.14-20151107-1_mvebu.ipk
and then?

thx & so long

Then you done. Reboot the router.
Input:
strings /lib/modules/*.*/mwlwifi.ko | grep "^10.3"
to see the version.

And yes, I'll compile .13 driver for you.

NemoAlex wrote:
trustno1foxm wrote:
NemoAlex wrote:

Download the raw file, scp to router, opkg install it.

How to setup your driver:
opkg install /tmp/kmod-mwlwifi_3.18.20+10.3.0.14-20151107-1_mvebu.ipk
and then?

thx & so long

Then you done. Reboot the router.
Input:
strings /lib/modules/*.*/mwlwifi.ko | grep "^10.3"
to see the version.

And yes, I'll compile .13 driver for you.

@NemoAlex, your 10.3.0.14 has worked well so far for 12 hours on my WRT1200AC (cc final). The 2.4GHz problem does not show up (while over 2 SSIDs was setup on 2.4GHz, the devices of 2.4GHz would not be stuck to the radio after a few hours until a fresh reboot fixes it). I will continue to watch it in the next few days. Thanks a lot!

@trustno1foxm, you can try 10.3.0.14 now. This was also what Marvell guy advised thru the email. And your test on .13 is also appreciated :-)

(Last edited by muronghan on 10 Nov 2015, 02:27)

I am just wondering out loud... If instead of every clock cycle or close to it like .14. (In which I did see a decrease in softirq under no load after a while) But it is negligible on the v1, 10% maybe. Why not set a reasonable flush rate...Then ramp it up when needed.

@muronghan
What does your   grep mwl /proc/interrupts ; sleep 1; grep mwl /proc/interrupts      look like?
And temp? sensors if you have lm-sensors installed.