Skip to content
Snippets Groups Projects
Commit 7ec2cd8a authored by juhosg's avatar juhosg
Browse files

ath9k: add workaround for AR9331 USB host controller hang with USB1.1 devices

When wifi radio is reset, some bits in (undocumented) USB registers may
flip. Patch adds setting them after radio reset (channel change, up/down).
With this patch stability of USB1.1 full-speed devices, connected directly
to AR9331 host port (no USB2.0 hub) is improved.

See "ar9331's usb stability issue" OpenWrt forum thread for details:
  <https://forum.openwrt.org/viewtopic.php?id=39956>

Based on QCA's Open HAL WAR_USB_DISABLE_PLL_LOCK_DETECT() macro:
  <https://github.com/qca/qcamain_open_hal_public/blob/master/hal/ar9300/ar9300_reset.c#L74>

Adapted to Linux mac80211 driver for 8Devices Carambola2 board by Mantas Pucka:
  <https://github.com/8devices/carambola2/commit/b08b59ceb4e7f0bad4c0b17e703e1e5c4e168923

>

Ported to latest OpenWrt BB branch and tested on TP-Link TL-WR703N by
Michel Stempin <michel.stempin@wanadoo.fr>.

Signed-off-by: default avatarMichel Stempin <michel.stempin@wanadoo.fr>
[juhosg: refresh and clean up the ath9k patch]
Signed-off-by: default avatarGabor Juhos <juhosg@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39212 3c298f89-4303-0410-b956-a3cf2f4a3e73
parent 1f17399d
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment