mwifiex: toggle carrier state in start_ap/stop_ap.
authorMarty Faltesek <mfaltesek@google.com>
Mon, 26 Oct 2015 05:54:01 +0000 (22:54 -0700)
committerKalle Valo <kvalo@codeaurora.org>
Wed, 28 Oct 2015 19:00:01 +0000 (21:00 +0200)
commit0117e78aec73f1c0869e50d11a255b28aa4db8f0
treeb667a7027e03c5aaa62e87105235dd16ae05fb15
parent072255241d2e3e9c1e23fc693f0333be72adfe2a
mwifiex: toggle carrier state in start_ap/stop_ap.

In uap mode the carrier is not enabled until after the first STA joins.
The carrier triggers the bridge to start its state machine, and if STP
is enabled, it takes 4 seconds as it transitions from disabled to
forwarding. During this time the bridge drops all traffic, and the EAPOL
handshake times out after 3 seconds, preventing stations from joining.

Follow the logic used in mac80211 and start the carrier in start_ap
and disable it in stop_ap. This has a nice benefit of allowing the
first station connection time to be reduced by up to 75% when STP is
in use.

Signed-off-by: Martin Faltesek <mfaltesek@google.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/mwifiex/cfg80211.c
drivers/net/wireless/mwifiex/uap_event.c