]> git.baikalelectronics.ru Git - kernel.git/commit
mt76: mt76x02: reduce false positives in ED/CCA tx blocking
authorFelix Fietkau <nbd@nbd.name>
Sat, 2 Mar 2019 17:19:20 +0000 (18:19 +0100)
committerFelix Fietkau <nbd@nbd.name>
Thu, 7 Mar 2019 11:50:23 +0000 (12:50 +0100)
commitd2d2b9149eee014dc04e8b17b8c966aa0a95dff2
treee4b7911679fa82a927ee995077051c9be43e4504
parentec6f120ffb6ec65a49530f8f9f2e3dcdc16336f7
mt76: mt76x02: reduce false positives in ED/CCA tx blocking

Full tx blocking (as opposed to CCA blocking) should only happen if there
is a continuous non-802.11 signal above the energy detect threshold.
Unfortunately the ED/CCA counter can't detect that, as it also counts 802.11
signals as busy.

Similar to the vendor code, implement a learning mode that waits until the AGC
gain has already been adjusted to the lowest value (due to false CCA events),
and the number of false CCA events still remains high, and the blocking
threshold is exceeded for more than 5 seconds.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt76x02.h
drivers/net/wireless/mediatek/mt76/mt76x02_mac.c
drivers/net/wireless/mediatek/mt76/mt76x02_phy.c