Pre-compiled updated mwlwifi drivers for stable releases

Well, I can wait for 19.07

Has my eyesight worsened, or is the "config.seed" file missing at "http://downloads.openwrt.org/releases/18.06.5/targets/mvebu/cortexa9/"?

It seems to be missing from 18.06.5 entirely.

BTW: There seems to be a new package for WRT1900ACS in 19.07-rc1:

https://downloads.openwrt.org/releases/19.07.0-rc1/packages/arm_cortex-a9_vfpv3/base/mwlwifi-firmware-88w8864_2019-03-02-31d93860-1_arm_cortex-a9_vfpv3.ipk

But i cant find any changlog in kaloz repo - but here:

https://git.openwrt.org/?p=openwrt%2Fopenwrt.git&a=search&h=refs%2Fheads%2Fopenwrt-19.07&st=commit&s=mac80211

The driver seems to be under development ... am i right?

Regards, Andreas

Regards, Andreas

What is the practical usage of it?

It is pretty much just the defaults and "build all packages":

target defaults + luci + all_kmods + all_nonshared (+a few options for flagging a buildbot build and SDK & IB)

Yeah, I guess that you would prefer to use the exact same config for the driver build, but I guess you should be able to reach the same kernel options easily.

  1. This driver is not being developed any more. No new features, not even bugfixes. Right now, this driver is solely being maintained so that it maintains compatibility with the latest OpenWrt version.

  2. Marvell's entire wireless division has been bought and sold to NXP. Belkin, the parent company of Linksys, has been bought by Foxconn. This leaves little chance for future updates/development of the WRT AC Devices in terms of their wireless capability (which was never upstreamed to the official Linux kernel). If it was, it may have been still maintained.

  3. The patch that will make the kaloz repo match OpenWrt's version is this: https://github.com/kaloz/mwlwifi/pull/369. As you can see, no one with maintainer's rights is able to merge this patch into the official one. Kaloz's repo is now officially behind OpenWrt's version (at least for master and 19.07).

3 Likes

No, I do not prefer to use the same options, I have to use the exact same options, or the packages will not be compatible with the installed kernel.

I asked the developers about the missing file, and somebody answered that can use a configuration from the previous version and change a couple of lines. I will try this during the weekend.

1 Like

Anyone try this firmware? https://github.com/schm0/mwlwifi

Maintainer said it only affects regulatory rules

This fork uses 7.3.0.21. It works fine on by WRT1900ACS(v1).

Built it against master, but WiFi leds stopped working. Have yet to run an iPerf test.

Differences are that it uses SWBA (software beacon alert(?) or software block ack(?)).

EDIT:
Results from a simple iPerf2 test WiFi -> gigabit ethernet. 6 clients connected at the same time. (3 of which were active incl. the test client). Looks like it has a ramp up behavior, but it sustains +700Mbits/sec throughput really well.

iperf -c 192.168.2.123 -t 60 -i 1
Client connecting to 192.168.2.123, TCP port 5001
TCP window size:  129 KByte (default)
------------------------------------------------------------
[  4] local 192.168.2.108 port 54926 connected with 192.168.2.123 port 5001
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0- 1.0 sec   128 KBytes  1.05 Mbits/sec
[  4]  1.0- 2.0 sec   512 KBytes  4.19 Mbits/sec
[  4]  2.0- 3.0 sec   512 KBytes  4.19 Mbits/sec
[  4]  3.0- 4.0 sec   768 KBytes  6.29 Mbits/sec
[  4]  4.0- 5.0 sec  1.25 MBytes  10.5 Mbits/sec
[  4]  5.0- 6.0 sec  2.12 MBytes  17.8 Mbits/sec
[  4]  6.0- 7.0 sec  3.75 MBytes  31.5 Mbits/sec
[  4]  7.0- 8.0 sec  11.2 MBytes  94.4 Mbits/sec
[  4]  8.0- 9.0 sec  16.0 MBytes   134 Mbits/sec
[  4]  9.0-10.0 sec  27.6 MBytes   232 Mbits/sec
[  4] 10.0-11.0 sec  36.8 MBytes   308 Mbits/sec
[  4] 11.0-12.0 sec  48.2 MBytes   405 Mbits/sec
[  4] 12.0-13.0 sec  58.0 MBytes   487 Mbits/sec
[  4] 13.0-14.0 sec  66.0 MBytes   554 Mbits/sec
[  4] 14.0-15.0 sec  74.6 MBytes   626 Mbits/sec
[  4] 15.0-16.0 sec  76.0 MBytes   638 Mbits/sec
[  4] 16.0-17.0 sec  69.9 MBytes   586 Mbits/sec
[  4] 17.0-18.0 sec  73.4 MBytes   616 Mbits/sec
[  4] 18.0-19.0 sec  69.8 MBytes   585 Mbits/sec
[  4] 19.0-20.0 sec  73.4 MBytes   616 Mbits/sec
[  4] 20.0-21.0 sec  76.6 MBytes   643 Mbits/sec
[  4] 21.0-22.0 sec  78.2 MBytes   656 Mbits/sec
[  4] 22.0-23.0 sec  78.6 MBytes   660 Mbits/sec
[  4] 23.0-24.0 sec  78.8 MBytes   661 Mbits/sec
[  4] 24.0-25.0 sec  79.4 MBytes   666 Mbits/sec
[  4] 25.0-26.0 sec  79.1 MBytes   664 Mbits/sec
[  4] 26.0-27.0 sec  85.6 MBytes   718 Mbits/sec
[  4] 27.0-28.0 sec  85.6 MBytes   718 Mbits/sec
[  4] 28.0-29.0 sec  88.5 MBytes   742 Mbits/sec
[  4] 29.0-30.0 sec  87.0 MBytes   730 Mbits/sec
[  4] 30.0-31.0 sec  85.1 MBytes   714 Mbits/sec
[  4] 31.0-32.0 sec  88.0 MBytes   738 Mbits/sec
[  4] 32.0-33.0 sec  85.6 MBytes   718 Mbits/sec
[  4] 33.0-34.0 sec  86.1 MBytes   722 Mbits/sec
[  4] 34.0-35.0 sec  88.5 MBytes   742 Mbits/sec
[  4] 35.0-36.0 sec  87.0 MBytes   730 Mbits/sec
[  4] 36.0-37.0 sec  87.2 MBytes   732 Mbits/sec
[  4] 37.0-38.0 sec  88.0 MBytes   738 Mbits/sec
[  4] 38.0-39.0 sec  90.2 MBytes   757 Mbits/sec
[  4] 39.0-40.0 sec  87.1 MBytes   731 Mbits/sec
[  4] 40.0-41.0 sec  88.8 MBytes   744 Mbits/sec
[  4] 41.0-42.0 sec  89.8 MBytes   753 Mbits/sec
[  4] 42.0-43.0 sec  90.6 MBytes   760 Mbits/sec
[  4] 43.0-44.0 sec  88.9 MBytes   746 Mbits/sec
[  4] 44.0-45.0 sec  90.6 MBytes   760 Mbits/sec
[  4] 45.0-46.0 sec  85.6 MBytes   718 Mbits/sec
[  4] 46.0-47.0 sec  86.2 MBytes   724 Mbits/sec
[  4] 47.0-48.0 sec  87.0 MBytes   730 Mbits/sec
[  4] 48.0-49.0 sec  87.2 MBytes   732 Mbits/sec
[  4] 49.0-50.0 sec  88.2 MBytes   740 Mbits/sec
[  4] 50.0-51.0 sec  89.4 MBytes   750 Mbits/sec
[  4] 51.0-52.0 sec  88.1 MBytes   739 Mbits/sec
[  4] 52.0-53.0 sec  89.6 MBytes   752 Mbits/sec
[  4] 53.0-54.0 sec  88.8 MBytes   744 Mbits/sec
[  4] 54.0-55.0 sec  89.2 MBytes   749 Mbits/sec
[  4] 55.0-56.0 sec  88.2 MBytes   740 Mbits/sec
[  4] 56.0-57.0 sec  90.1 MBytes   756 Mbits/sec
[  4] 57.0-58.0 sec  88.6 MBytes   743 Mbits/sec
[  4] 58.0-59.0 sec  88.9 MBytes   746 Mbits/sec
[  4] 59.0-60.0 sec  84.9 MBytes   712 Mbits/sec
[  4]  0.0-60.1 sec  4.07 GBytes   582 Mbits/sec

Nice results there.

Unfortunate

I rebased the marvell repo against the kaloz repo. These commits are what I got:

commit 1a54a1e42ec476a47e717ee127841824d331f6a6 (HEAD)
Author: panda-mute <wxuzju@gmail.com>
Date:   Fri Mar 30 16:43:16 2018 +0800

    Revert "Add missing "int (*mcast_cts)(struct ieee80211_hw *hw, bool enable)""
    
    This reverts commit 9baa8bdae352b24cf52d96e02e21b26e4218e3a6.

commit cc4b39b2a32d7a363ec086ededfeef5c7b03a814
Author: panda-mute <wxuzju@gmail.com>
Date:   Fri Mar 30 14:39:22 2018 +0800

    use utils_tid_to_ac instead of mwl_tx_tid_queue_mapping

commit 78dbff5633a06c1a9f5ba388daafa89964818822
Author: panda-mute <wxuzju@gmail.com>
Date:   Thu Mar 29 13:51:50 2018 +0800

    add missing function mwl_tx_tid_queue_mapping

commit b444d4072111f4c53662a735960c44ba1bbdda44
Author: panda-mute <wxuzju@gmail.com>
Date:   Thu Nov 16 10:27:58 2017 +0800

    fix invalid multicast rate issue

commit a87b51fd8a3930ca27d56345f15f4e8b25923beb
Author: panda-mute <wxuzju@gmail.com>
Date:   Wed Nov 15 10:08:20 2017 +0800

    Change multicast rate from 1Mbps to 54Mbps

commit 4b75de0aad10091e758ea78be726de2f2a327931
Author: panda-mute <wxuzju@gmail.com>
Date:   Wed Sep 20 23:22:33 2017 +0800

    Added code to support software BA streams.

commit 3a1a957f54837be2abbb5b9874ea5915e4206804
Author: panda-mute <wxuzju@gmail.com>
Date:   Wed Sep 20 23:06:45 2017 +0800

    Upgrade 88W8864 firmware to 7.3.0.21

No idea if there's anything useful here.

edit: I did the opposite. No extra commits. Meaning the marvell wireless repo has more stuff.

Revert "Add missing "int (*mcast_cts)(struct ieee80211_hw *hw, bool enable)""

This was reverted because it was upstreamed.

use utils_tid_to_ac instead of mwl_tx_tid_queue_mapping
add missing function mwl_tx_tid_queue_mapping

Same as above.

fix invalid multicast rate issue
Change multicast rate from 1Mbps to 54Mbps

I think I reverted this. You must live/work in an open home/office for this to generate any benefits. The higher the rate, the lower the distance a client can be from the AP to still maintain a connection.

Added code to support software BA streams.

This is either Software Block Acknowledgement or Software Beacon Alerts, I don't think we can ever be sure.

We need to run more testing to be sure to switch to this repo. At the moment, I think I'm getting sudden dropouts (but not disconnects) - I think the data path is being messed up.

Is there a Marvel repo? Where is it?

https://github.com/marvell-wireless/mwlwifi

Updated to 18.06.5: https://github.com/eduperez/mwlwifi_LEDE/releases/tag/31d9386

4 Likes

I'm not sure but shouldn't multicast rate = lowest basic rate?

https://tools.ietf.org/id/draft-ietf-mboned-ieee802-mcast-problems-01.html

basic rate

The "lowest common denominator" data rate at which multicast and broadcast traffic is generally transmitted.

I think, that is just a clone og kaloz Repo with no further development:

Merge branch 'master' of https://github.com/kaloz/mwlwifi

1 Like