Message ID | 20200330163551.1426-1-freifunk@adrianschmutzler.de |
---|---|
State | Accepted |
Headers | show |
diff --git a/bsp/ar71xx/.config b/bsp/ar71xx/.config index 6c2c730d..9a6cd0a2 100644 --- a/bsp/ar71xx/.config +++ b/bsp/ar71xx/.config @@ -5,15 +5,15 @@ CONFIG_TARGET_ar71xx=y CONFIG_TARGET_ar71xx_tiny=y CONFIG_TARGET_MULTI_PROFILE=y CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c25-v1=y -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c25-v1="" +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c25-v1="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca9887-ct ath10k-firmware-qca9887" CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c60-v1=y -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v1="" +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v1="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca9888-ct ath10k-firmware-qca9888" CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c60-v2=y -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v2="" +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v2="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca9888-ct ath10k-firmware-qca9888" CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c7-v2=y -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v2="" +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v2="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca988x-ct ath10k-firmware-qca988x" CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c7-v5=y -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v5="" +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v5="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca988x-ct ath10k-firmware-qca988x" CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe210-220-v1=y CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_cpe210-220-v1="-rssileds" CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe210-v2=y @@ -79,7 +79,7 @@ CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-nano-m="-rssileds" CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifi=y CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifi="" CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifiac-lite=y -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifiac-lite="" +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifiac-lite="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca988x-ct ath10k-firmware-qca988x" CONFIG_BUSYBOX_CUSTOM=y CONFIG_TARGET_PER_DEVICE_ROOTFS=y # CONFIG_BUSYBOX_CONFIG_BRCTL is not set @@ -102,4 +102,12 @@ CONFIG_PACKAGE_iwinfo=m CONFIG_PACKAGE_libiwinfo=m CONFIG_PACKAGE_opkg=m CONFIG_PACKAGE_wpad-mini=m +CONFIG_PACKAGE_ath10k-firmware-qca9887=m +CONFIG_PACKAGE_ath10k-firmware-qca9888=m +CONFIG_PACKAGE_ath10k-firmware-qca988x=m +CONFIG_PACKAGE_kmod-ath10k=m +CONFIG_PACKAGE_ath10k-firmware-qca9887-ct=m +CONFIG_PACKAGE_ath10k-firmware-qca9888-ct=m +CONFIG_PACKAGE_ath10k-firmware-qca988x-ct=m +CONFIG_PACKAGE_kmod-ath10k-ct=m CONFIG_STRIP_KERNEL_EXPORTS=y diff --git a/bsp/ipq806x/.config b/bsp/ipq806x/.config index cb8074eb..a02f76fa 100644 --- a/bsp/ipq806x/.config +++ b/bsp/ipq806x/.config @@ -5,10 +5,14 @@ CONFIG_TARGET_ipq806x=y CONFIG_TARGET_ipq806x_generic=y CONFIG_TARGET_MULTI_PROFILE=y CONFIG_TARGET_DEVICE_ipq806x_generic_DEVICE_tplink_c2600=y -CONFIG_TARGET_DEVICE_PACKAGES_ipq806x_generic_DEVICE_tplink_c2600="" +CONFIG_TARGET_DEVICE_PACKAGES_ipq806x_generic_DEVICE_tplink_c2600="-ath10k-firmware-qca99x0-ct ath10k-firmware-qca99x0" CONFIG_TARGET_PER_DEVICE_ROOTFS=y CONFIG_BUSYBOX_CUSTOM=y CONFIG_CLEAN_IPKG=y CONFIG_PACKAGE_kmod-hwmon-core=m CONFIG_PACKAGE_opkg=m +CONFIG_PACKAGE_ath10k-firmware-qca99x0=m +CONFIG_PACKAGE_kmod-ath10k=y +CONFIG_PACKAGE_ath10k-firmware-qca99x0-ct=m +CONFIG_PACKAGE_kmod-ath10k-ct=m CONFIG_STRIP_KERNEL_EXPORTS=y
Hallo Adrian, für den mainline ath10k gab es doch auch mal irgendwo einen Patch, der die Buffer verkleinert, oder? Ich kann ihn grade nicht mehr finden. Ohne den sind 64MB RAM Geräte ziemlich sicher auch mit dem mainline ath10k kaputt. Gruß Fabian On 30.03.20 18:35, Adrian Schmutzler wrote: > OpenWrt offers two variants of ath10k driver and firmware, the > "normal" mainline/QCA variant and the "CT" variant [1] > developed as fork by Candela Technologies. > Both deviate from each other with respect to their feature set, > level of support and system impact (i.e. memory consumption). > > Since the 19.07 release, OpenWrt has made the "CT" variant its > default for supporting (almost) all ath10k chips. [2] > However, for this firmware the CT driver/firmware introduces a number > of (potential) drawbacks: > > - CT memory consumption seems to be higher. (This still needs to be > verified for the new kmod-ath10k-ct-smallbuffers variant.) This > is particularly a problem on several ath10k devices with 64 MB RAM, > where the devices run into OOM regularly (i.e. C60 v1/v2). [3] > - Though CT has active support, it is still just a fork effectively > maintained by one person. > - With CT driver/firmware there are frequent reports that the > combination of AP and 802.11s is not working. [4] While this issue > couldn't be reproduced in recent tests, it still is explicitly > not supported, and there is no interest to change that at the > moment. [5] > > Due to these reasons, it seems more appropriate for us to use the > mainline/QCA variant of ath10k driver and firmwares. This patch > applies that to all affected devices. > > [1] https://github.com/greearb/ath10k-ct.git > [2] https://github.com/openwrt/openwrt/commit/61b5b4971e7d6aab6b0695997c3b5aaf73c53b5f > [3] https://github.com/openwrt/openwrt/commit/1ac627024de916eb157659caf49f93fa89d3b19a > [4] https://github.com/freifunk-berlin/firmware/issues/696 > https://forum.openwrt.org/t/ath10k-ct-and-802-11s-mesh-not-working-on-archer-c7/13877 > [5] https://github.com/openwrt/openwrt/pull/2341#issuecomment-580904873 > > Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> > > --- > > Dieser Patch ist weder run- noch build-tested. > --- > bsp/ar71xx/.config | 20 ++++++++++++++------ > bsp/ipq806x/.config | 6 +++++- > 2 files changed, 19 insertions(+), 7 deletions(-) > > diff --git a/bsp/ar71xx/.config b/bsp/ar71xx/.config > index 6c2c730d..9a6cd0a2 100644 > --- a/bsp/ar71xx/.config > +++ b/bsp/ar71xx/.config > @@ -5,15 +5,15 @@ CONFIG_TARGET_ar71xx=y > CONFIG_TARGET_ar71xx_tiny=y > CONFIG_TARGET_MULTI_PROFILE=y > CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c25-v1=y > -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c25-v1="" > +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c25-v1="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca9887-ct ath10k-firmware-qca9887" > CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c60-v1=y > -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v1="" > +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v1="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca9888-ct ath10k-firmware-qca9888" > CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c60-v2=y > -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v2="" > +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v2="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca9888-ct ath10k-firmware-qca9888" > CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c7-v2=y > -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v2="" > +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v2="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca988x-ct ath10k-firmware-qca988x" > CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c7-v5=y > -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v5="" > +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v5="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca988x-ct ath10k-firmware-qca988x" > CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe210-220-v1=y > CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_cpe210-220-v1="-rssileds" > CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe210-v2=y > @@ -79,7 +79,7 @@ CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-nano-m="-rssileds" > CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifi=y > CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifi="" > CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifiac-lite=y > -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifiac-lite="" > +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifiac-lite="-kmod-ath10k-ct kmod-ath10k -ath10k-firmware-qca988x-ct ath10k-firmware-qca988x" > CONFIG_BUSYBOX_CUSTOM=y > CONFIG_TARGET_PER_DEVICE_ROOTFS=y > # CONFIG_BUSYBOX_CONFIG_BRCTL is not set > @@ -102,4 +102,12 @@ CONFIG_PACKAGE_iwinfo=m > CONFIG_PACKAGE_libiwinfo=m > CONFIG_PACKAGE_opkg=m > CONFIG_PACKAGE_wpad-mini=m > +CONFIG_PACKAGE_ath10k-firmware-qca9887=m > +CONFIG_PACKAGE_ath10k-firmware-qca9888=m > +CONFIG_PACKAGE_ath10k-firmware-qca988x=m > +CONFIG_PACKAGE_kmod-ath10k=m > +CONFIG_PACKAGE_ath10k-firmware-qca9887-ct=m > +CONFIG_PACKAGE_ath10k-firmware-qca9888-ct=m > +CONFIG_PACKAGE_ath10k-firmware-qca988x-ct=m > +CONFIG_PACKAGE_kmod-ath10k-ct=m > CONFIG_STRIP_KERNEL_EXPORTS=y > diff --git a/bsp/ipq806x/.config b/bsp/ipq806x/.config > index cb8074eb..a02f76fa 100644 > --- a/bsp/ipq806x/.config > +++ b/bsp/ipq806x/.config > @@ -5,10 +5,14 @@ CONFIG_TARGET_ipq806x=y > CONFIG_TARGET_ipq806x_generic=y > CONFIG_TARGET_MULTI_PROFILE=y > CONFIG_TARGET_DEVICE_ipq806x_generic_DEVICE_tplink_c2600=y > -CONFIG_TARGET_DEVICE_PACKAGES_ipq806x_generic_DEVICE_tplink_c2600="" > +CONFIG_TARGET_DEVICE_PACKAGES_ipq806x_generic_DEVICE_tplink_c2600="-ath10k-firmware-qca99x0-ct ath10k-firmware-qca99x0" > CONFIG_TARGET_PER_DEVICE_ROOTFS=y > CONFIG_BUSYBOX_CUSTOM=y > CONFIG_CLEAN_IPKG=y > CONFIG_PACKAGE_kmod-hwmon-core=m > CONFIG_PACKAGE_opkg=m > +CONFIG_PACKAGE_ath10k-firmware-qca99x0=m > +CONFIG_PACKAGE_kmod-ath10k=y > +CONFIG_PACKAGE_ath10k-firmware-qca99x0-ct=m > +CONFIG_PACKAGE_kmod-ath10k-ct=m > CONFIG_STRIP_KERNEL_EXPORTS=y >
Hallo, dieser OpenWrt commit _entfernt_ den buffer-patch für mainline im master: https://github.com/openwrt/openwrt/commit/1e27befe63ff4c69f110c7310316f4af75ee63e9 (inkl. Diskussion) Dieser Commit ist in 19.07 _nicht_ enthalten, also _ist_ der buffer-patch für ath10k dort enthalten. Ggf. ergänze ich da noch einen Block in der Commit Message. Grüße Adrian
Nachtrag: Die C60 v1/v2 waren für mich aber eigentlich immer kaputt, sobald 5 GHz an war und mehr als fünf Clients drauf waren. Mit dem mainline Treiber waren es dann halt zwei oder drei mehr, die er ausgehalten hat. Ich habe für alle meine produktiven C60 inzwischen 5 GHz deaktiviert, seitdem laufen sie stabil. Grüße Adrian
Funktioniert auf einem C60v1 und auf dem C2600 scheinbar einwandfrei. Mesh zwischen Geräten habe ich nicht getestet. Reviewed-by: Fabian Bläse <fabian@blaese.de> Tested-by: Fabian Bläse <fabian@blaese.de> Gruß Fabian
Applied.
OpenWrt offers two variants of ath10k driver and firmware, the "normal" mainline/QCA variant and the "CT" variant [1] developed as fork by Candela Technologies. Both deviate from each other with respect to their feature set, level of support and system impact (i.e. memory consumption). Since the 19.07 release, OpenWrt has made the "CT" variant its default for supporting (almost) all ath10k chips. [2] However, for this firmware the CT driver/firmware introduces a number of (potential) drawbacks: - CT memory consumption seems to be higher. (This still needs to be verified for the new kmod-ath10k-ct-smallbuffers variant.) This is particularly a problem on several ath10k devices with 64 MB RAM, where the devices run into OOM regularly (i.e. C60 v1/v2). [3] - Though CT has active support, it is still just a fork effectively maintained by one person. - With CT driver/firmware there are frequent reports that the combination of AP and 802.11s is not working. [4] While this issue couldn't be reproduced in recent tests, it still is explicitly not supported, and there is no interest to change that at the moment. [5] Due to these reasons, it seems more appropriate for us to use the mainline/QCA variant of ath10k driver and firmwares. This patch applies that to all affected devices. [1] https://github.com/greearb/ath10k-ct.git [2] https://github.com/openwrt/openwrt/commit/61b5b4971e7d6aab6b0695997c3b5aaf73c53b5f [3] https://github.com/openwrt/openwrt/commit/1ac627024de916eb157659caf49f93fa89d3b19a [4] https://github.com/freifunk-berlin/firmware/issues/696 https://forum.openwrt.org/t/ath10k-ct-and-802-11s-mesh-not-working-on-archer-c7/13877 [5] https://github.com/openwrt/openwrt/pull/2341#issuecomment-580904873 Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> --- Dieser Patch ist weder run- noch build-tested. --- bsp/ar71xx/.config | 20 ++++++++++++++------ bsp/ipq806x/.config | 6 +++++- 2 files changed, 19 insertions(+), 7 deletions(-)