Ath79 builds with all kmod packages through opkg [flow offloading]


#1

Hello community,

i have build some images for my TP-Link devices with all packages that depends on kernel version for my own usage and want to share it with you.

If you want to test the new ath79 (replace ar71xx in the future) images on your devices, here is your chance to dive into this new target.
The greatest feature that the new target provides is flow offloading.

I´ve uploaded all target specific packages to my own server and included this target repo and public key into the images. All other generic packages are downloaded from openwrt.org.
Therefore you and i are able to install ALL packages through opkg.

Flow offloading NAT performance (TP-Link WDR3600@700MHz):

option flow_offloading '1'

[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-30.0 sec  3.24 GBytes   929 Mbits/sec

option flow_offloading '0'

[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-30.0 sec  2.13 GBytes   611 Mbits/sec

Tested devices by me:

  • TP-Link WDR3600 (Cable Router + AP)
  • TP-Link WDR4300 (dump AP)
  • TP-Link WR1043 V2 (dump AP)
  • TP-Link WR1043 V3 (dump AP)
  • TP-Link WR1043 V4 (dump AP)

Installation notes:

If you come from ar71xx you need to upgarde from console with the force option -F.
You should also consider to start with a clean config -n.
Example:

cd /tmp
wget http://openwrt.it-neuhauser.de/4.14.50-1-fe2188b9d396e2df6fa89108a4b4a2b3/ath79/generic/openwrt-ath79-generic-tl-wdr3600-squashfs-sysupgrade.bin
sysupgrade -n -F openwrt-ath79-generic-tl-wdr3600-squashfs-sysupgrade.bin

If you do not a clean sysupgrade you have to generate at least a new wireless config and adopt it to your needs.
Example for creating a new wifi config:

cd /etc/config    # change dir to config
mv wireless wireless.old    # do a backup of old config
wifi config    # create a new config
nano wireless    # modify it to your need or do a copy of essential parts from your backup

Current builds:

2018/11/23 (4.14.82-1-3f6379f96c9cbdee2d544e6019d873e7)

Included features / packages (build with: -O2):

default build:
  • same packages as on openwrt snapshot / trunk builds
  • support for ath9k dynack
  • luci
minimal build:
  • same packages as on openwrt snapshot / trunk builds
  • support for ath9k dynack

Supported device images:

  • D-LINK DIR-825 B1
  • NETGEAR WNDR3700
  • NETGEAR WNDR3700 V2
  • NETGEAR WNDR3800
  • Phicomm K2T
  • TP-Link Archer C7 V2
  • TP-Link RE450 V2
  • TP-Link WDR3600
  • TP-Link WDR4300
  • TP-Link WDR4900 V2
  • TP-Link WR1043 V1
  • TP-Link WR1043 V2
  • TP-Link WR1043 V3
  • TP-Link WR1043 V4
  • TP-Link WR2543 V1
  • Ubiquiti UniFi AC Pro
  • Ubiquiti UniFi AC-Mesh
  • Ubiquiti UniFi AC-Mesh Pro
  • Ubiquiti UniFi AC-Lite
  • Ubiquiti UniFi RouterStation Pro

Download 4.14.82 (default build)

Download 4.14.82 (minimal build)

I could include other devices too, but without testing it by my own.
Check if your device is already ported (ath79/dts) and post your model / dts name.

I will update the images if there is a new kernel version or if there are relevant bug fixes.

The old images and packages will be left on my server until i run into space issues.
Therefore a update of my images do not break package installs with opkg on old images and
if you encounter a bug with a new image you could easy do a rollback.

Greets

Issues:

  • Applying a new ip with luci or /etc/init.d/network reload does not work
    Workaround: use /etc/init.d/network restart or a reboot instead

Old builds:

2018/11/17 (4.14.81-1-3f6379f96c9cbdee2d544e6019d873e7)

Included features / packages (build with: -O2):

default build:
  • same packages as on openwrt snapshot / trunk builds
  • support for ath9k dynack
  • luci
minimal build:
  • same packages as on openwrt snapshot / trunk builds
  • support for ath9k dynack

Supported device images:

  • D-LINK DIR-825 B1
  • NETGEAR WNDR3700
  • NETGEAR WNDR3700 V2
  • NETGEAR WNDR3800
  • Phicomm K2T
  • TP-Link Archer C7 V2
  • TP-Link RE450 V2
  • TP-Link WDR3600
  • TP-Link WDR4300
  • TP-Link WDR4900 V2
  • TP-Link WR1043 V1
  • TP-Link WR1043 V2
  • TP-Link WR1043 V3
  • TP-Link WR1043 V4
  • TP-Link WR2543 V1
  • Ubiquiti UniFi AC Pro
  • Ubiquiti UniFi AC-Mesh
  • Ubiquiti UniFi AC-Mesh Pro
  • Ubiquiti UniFi AC-Lite
  • Ubiquiti UniFi RouterStation Pro

Download 4.14.81 (default build)

Download 4.14.81 (minimal build)

2018/11/13 (4.14.80-1-3f6379f96c9cbdee2d544e6019d873e7)

Included features / packages (build with: -O2):

default build:
  • same packages as on openwrt snapshot / trunk builds
  • luci
minimal build:
  • same packages as on openwrt snapshot / trunk builds

Supported device images:

  • D-LINK DIR-825 B1
  • NETGEAR WNDR3700
  • NETGEAR WNDR3700 V2
  • NETGEAR WNDR3800
  • Phicomm K2T
  • TP-Link Archer C7 V2
  • TP-Link RE450 V2
  • TP-Link WDR3600
  • TP-Link WDR4300
  • TP-Link WDR4900 V2
  • TP-Link WR1043 V1
  • TP-Link WR1043 V2
  • TP-Link WR1043 V3
  • TP-Link WR1043 V4
  • TP-Link WR2543 V1
  • Ubiquiti UniFi AC Pro
  • Ubiquiti UniFi AC-Mesh
  • Ubiquiti UniFi AC-Mesh Pro
  • Ubiquiti UniFi AC-Lite
  • Ubiquiti UniFi RouterStation Pro

Download 4.14.80 (default build)

Download 4.14.80 (minimal build)

2018/11/08 (4.14.79-1-43cce72c3461ef542e4e7f743325e045)

Included features / packages (build with: -O2):

default build:
  • same packages as on openwrt snapshot / trunk builds
  • luci
minimal build:
  • same packages as on openwrt snapshot / trunk builds

Supported device images:

  • D-LINK DIR-825 B1
  • NETGEAR WNDR3700
  • NETGEAR WNDR3700 V2
  • NETGEAR WNDR3800
  • Phicomm K2T
  • TP-Link Archer C7 V2
  • TP-Link RE450 V2
  • TP-Link WDR3600
  • TP-Link WDR4300
  • TP-Link WDR4900 V2
  • TP-Link WR1043 V1
  • TP-Link WR1043 V2
  • TP-Link WR1043 V3
  • TP-Link WR1043 V4
  • TP-Link WR2543 V1
  • Ubiquiti UniFi AC Pro
  • Ubiquiti UniFi AC-Mesh
  • Ubiquiti UniFi AC-Mesh Pro
  • Ubiquiti UniFi AC-Lite

Download 4.14.79 (default build)

Download 4.14.79 (minimal build)


Netfilter "Flow offload" / HW NAT
Porting guide ar71xx to ath79?
[GCC 7.2 BUILD] Optimized TP-Link Archer C7 V2 AC1750 LEDE Firmware
TP-Link RE450 V2 ( F/W: 1.0.2 Build 20170626 Rel. 60833)
[GCC 7.2 BUILD] Optimized TP-Link Archer C7 V2 AC1750 LEDE Firmware
[GCC 7.2 BUILD] Optimized TP-Link Archer C7 V2 AC1750 LEDE Firmware
Vdsl 100mbit wdr3600 and sqm?
TP Link Archer C7 v2 - OpenWrt 18.06.1 r7258-5eb055306f - Hw related bug?
[Solved] Wifi on/off slider Archer C7 V2
[Solved] Wifi on/off slider Archer C7 V2
Netgear WNDR3700 v2 upgrading from Chaos calmer 15.05.1 to LEDE
#2

I can vouch for the WDR4300 build, tested on both my WDR4310 and WDR4320. It's working perfectly stable.

Thanks for your effort.


#3

Thanks @juppin, I will test this on my 1043 v2 and I hope ath79 supports my old trusty WNDR3700 soon as well :slight_smile: .


#4

@juppin Thanks for your work. Did you make any modifications that are not in the master branch of openwrt? Two weeks ago I built the actual master and the 2.4G wifi did not worked on WDR3600.


#5

Is build from master now... Everything is working for this devices now... Check commit history ar9344_tl-wdr4300.dtsi


#6

So from jun 20th, thats my birthday :grinning: Thanks


#7

Happy birthday :slight_smile:


#9

If this PR get merged, than yes... I preferably build only from master branch.


#10

How can I be sure that soft offloading working? Does it work with explicit NAT configuration?
I don't use Mssfix and Masquerade. My NAT rule is:

config nat
	option src 'wan'
	option proto 'all'
	option target 'SNAT'
	option snat_ip 'ip_address'

#11

Enable the Software flow offloading checkbox in the Firewall settings in Luci or add option flow_offloading '1' to the /etc/config/firewall file under the config defaults section.


#12

Course I checked "Software flow offloading" but I'd like dig deeper a bit. How many connections are offloaded then? Is it possible to see the Software Offload statistics?


#13

try cat /proc/net/nf_conntrack | grep OFFLOAD


#14

Thanks @lucize!
Have found strange thing under Network->Switch
Screenshot-2018-6-25%20TL-WDR3600%20-%20Switch%20-%20LuCI
WebUI problem? WAN no link and strange 10baseT half-duplex


#15

Strange error... I have tested it on mine and i don not have this layout error.
Untitled
I see 1000Mbit WAN connection above wan and i only have six RJ45 pictures.
My delete button does not look as yours...
I tested Firefox and Chromium and no layout error s far.
What browser are you using?

This layout error could be related to minified JavaScript and CSS ressources.
I will not do it on netx build as there is only a small improvement with this.


#16

I´ve added a new build!

Changelog:

  • add TP-Link Archer C7 V2 (untested, but reports from PR are good)
  • new kernel version 4.14.51
  • remove luci-theme-material
  • no more minified luci
  • switched to per-device rootfs, because archer c7 is the only device with ath10k packages

Download 4.14.51

I will left the old images on my server as long as i need the storage to not break opkg package management on old images.

Greets


#17

Encountered this also on my own build based on your config.seed for my wdr3600. After this commit (which seems to fix the specific issue of the status images overflowing), WAN displays as 'no link' and LAN 1 as '1000baseT full-duplex' (even though it's not connected).
This seems to be because this loop requires the ports in the interface to be sorted numerically. I think this order is dependent on /etc/board.json, it prefers index over num for ordering.

Could be wrong though, took only a quick glance. Don't have the time to investigate further at the moment unfortunately. But it doesn't seem to be related to minified luci resources.


#18

My provided screenshot is from WDR3600, now i checked the switch page of WR1043v3 and here i see the same issue.
I see three connected physical ports but i have only two connected.

	"tplink,tl-wdr3600"|\
	"tplink,tl-wdr4300")
		ucidef_add_switch "switch0" \
			"0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
	"tplink,tl-wr1043nd-v2"|\
	"tplink,tl-wr1043nd-v3")
		ucidef_set_interfaces_lan_wan "eth1.1" "eth0.2"
		ucidef_add_switch "switch0" \
			"0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"

The main difference i see is the second cpu port...

@hitch @HimuraCarter On which devices are you encountering this issue?

Edit:

	"tplink,tl-wr1043nd-v4")
		ucidef_add_switch "switch0" \
			"0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"

Now i´ve checked also WR1043v4 (with only one cpu port) and i see the same issue :frowning :frowning:
Don´t have a clue what is going wrong, but i´d also have no time to dive deeper into this problem at the moment.


#19

I encountered this on my wdr3600 (Where LAN 1 seems to be WAN)

screenshot

After checking, my archer c7 v2 also seems to be having this issue. (See screenshot, no cables connected)

CPU (eth0) and WAN seem to be switched. LAN 1-4 work as expected.
photo_2018-06-26_17-14-56


#20

Allright, I couldn't resist. I created a patch: when applied to /usr/lib/lua/luci/view/admin_network/switch_status.htm, the indicators work as expected for me.
Seems like this commit seven days ago broke it and is not at all related to the new target.

Let me know if this works for you!


#21

Applied your patch to my running WR1043v3 and v4 manually and seems to fix the layout error on both devices.
But as i see @jow has fixed it currently on luci master too.