All of lore.kernel.org
 help / color / mirror / Atom feed
* Problem with brcmfmac removing extra interface
@ 2016-03-03 22:37 Rafał Miłecki
  2016-03-22  6:36 ` Rafał Miłecki
  0 siblings, 1 reply; 9+ messages in thread
From: Rafał Miłecki @ 2016-03-03 22:37 UTC (permalink / raw)
  To: brcm80211 development
  Cc: linux-wireless, Brett Rudley, Arend van Spriel,
	Franky (Zhenhui) Lin, Hante Meuleman

Hi,

brcmfmac in general is not capable of removing interfaces. If you take
a look at brcmf_cfg80211_del_iface implementation, you'll see it
returns -EOPNOTSUPP (except for p2p interfaces).

However there is problem in handling NL80211_CMD_STOP_AP (with the
brcmf_cfg80211_stop_ap callback). Current implementation calls
brcmf_fil_cmd_int_set(ifp, BRCMF_C_DOWN, 1)
if mbss support is enabled/used.

Above call results in firmware generating BRCMF_E_LINK event. This
event is handled with the following forward-traced functions chain:
1) brcmf_notify_connect_status
2) brcmf_notify_connect_status_ap
3) brcmf_remove_interface
4) brcmf_del_if
5) brcmf_net_detach
6) unregister_netdev

So the result of NL80211_CMD_STOP_AP is interface being removed. The
problem with this behavior is that interface can't be recreated after
that:
# iw phy phy1 interface add wlan1-1 type __ap
[ 3602.929199] brcmfmac: brcmf_ap_add_vif: timeout occurred
command failed: I/O error (-5)

I hit this problem when trying to restart hostapd using BCM43602 and 2 BSSes.

Could you analyze this problem and see if you see some way of solving
this problem, please?

-- 
Rafał

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2016-05-25  7:56 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-03 22:37 Problem with brcmfmac removing extra interface Rafał Miłecki
2016-03-22  6:36 ` Rafał Miłecki
2016-03-22 20:24   ` Arend van Spriel
2016-03-23  8:47     ` Rafał Miłecki
2016-03-23 10:44       ` Arend Van Spriel
2016-03-23 19:13         ` Rafał Miłecki
2016-05-06 22:43           ` Rafał Miłecki
2016-05-24 19:49           ` Arend Van Spriel
2016-05-25  7:56             ` Rafał Miłecki

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.