brcmfmac: assure P2P discovery is disabled when setting P2P_DEVICE mac address
authorArend van Spriel <arend@broadcom.com>
Tue, 30 Sep 2014 08:23:16 +0000 (10:23 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 30 Sep 2014 17:17:47 +0000 (13:17 -0400)
In order to provision the P2P_DEVICE mac address using p2p_da_override iovar
the discovery interface must be disabled. On some targets setting the mac
address failed so disable the discovery interface to be certain.

Reviewed-by: Hante Meuleman <meuleman@broadcom.com>
Reviewed-by: Franky (Zhenhui) Lin <frankyl@broadcom.com>
Reviewed-by: Daniel (Deognyoun) Kim <dekim@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/brcm80211/brcmfmac/p2p.c

index 1d78a91db59428a137bb829cbd3203bac69fea36..d54c58a32faa52bf9b6dc2cb36edd35c07993302 100644 (file)
@@ -440,8 +440,11 @@ static int brcmf_p2p_set_firmware(struct brcmf_if *ifp, u8 *p2p_mac)
 
        /* In case of COB type, firmware has default mac address
         * After Initializing firmware, we have to set current mac address to
-        * firmware for P2P device address
+        * firmware for P2P device address. This must be done with discovery
+        * disabled.
         */
+       brcmf_fil_iovar_int_set(ifp, "p2p_disc", 0);
+
        ret = brcmf_fil_iovar_data_set(ifp, "p2p_da_override", p2p_mac,
                                       ETH_ALEN);
        if (ret)