kernel: ath10k-ct: provide a build variant for small RAM devices
authorPaul Fertser <fercerpav@gmail.com>
Sun, 22 Dec 2019 18:20:57 +0000 (21:20 +0300)
committerHauke Mehrtens <hauke@hauke-m.de>
Mon, 23 Dec 2019 23:56:51 +0000 (00:56 +0100)
commit1ac627024de916eb157659caf49f93fa89d3b19a
treec6804526a1236399d745092307e775a4b6ff200f
parentc715f71bcee8cd9ec949ebb9f8d173983755f216
kernel: ath10k-ct: provide a build variant for small RAM devices

According to many bugreports [0][1][2] the default ath10k-ct kernel
module is unusable on devices with just 64 MiB RAM or with 128 MiB and
dual ath10k cards. The target boards boot but eventually oom-killer
starts to interfere with normal operation, so the current state is
effectively broken.

Since the two patches in question have a performance impact (and
possibly some other unexpected side-effects) a dedicated build variant
is added so that users of the low RAM devices can still benefit from all
the ath10k-ct advantages.

According to testing [3] results, the issue can be experienced even with
"a 256MB device with three radios". Measured performance impact of
implementing small buffers was lowering "the maximum 5 GHz throughput on
an IPQ40xx device without RPS/XPS optimizations from 494/432 Mbit/s for
TCP transfers (download/upload) to 438/343 Mbit/s"

The patches were apparently inspired by QSDK tweaks used by ODMs for the
affected devices.

[0] http://lists.infradead.org/pipermail/openwrt-devel/2019-December/020573.html
[1] https://github.com/openwrt/openwrt/pull/1077
[2] https://bugs.openwrt.org/index.php?do=details&task_id=2664
[3] https://github.com/freifunk-gluon/gluon/pull/1440#issue-195607701

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
[Remove double CONFIG_ATH10K-CT_LEDS entry]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
package/kernel/ath10k-ct/Makefile
package/kernel/ath10k-ct/patches/960-0010-ath10k-limit-htt-rx-ring-size.patch [new file with mode: 0644]
package/kernel/ath10k-ct/patches/960-0011-ath10k-limit-pci-buffer-size.patch [new file with mode: 0644]