Skip to content

Commit

Permalink
brcmfmac: fix generation of the p2p related mac addresses
Browse files Browse the repository at this point in the history
The driver determines the P2P interface address and device
address from the primary mac address. However, the function
used an invalid input. This caused a mac address mismatch
between firmware and driver. This was hidden because the
brcmf_if_add() function corrected the error upon receiving
the IF_ADD event from firmware.

Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Reviewed-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Arend van Spriel authored and John W. Linville committed Feb 8, 2013
1 parent 33a6b15 commit de66efc
Showing 1 changed file with 1 addition and 3 deletions.
4 changes: 1 addition & 3 deletions drivers/net/wireless/brcm80211/brcmfmac/p2p.c
Original file line number Diff line number Diff line change
Expand Up @@ -132,12 +132,10 @@ static int brcmf_p2p_set_firmware(struct brcmf_p2p_info *p2p)
*/
static void brcmf_p2p_generate_bss_mac(struct brcmf_p2p_info *p2p)
{
struct net_device *ndev = cfg_to_ndev(p2p->cfg);

/* Generate the P2P Device Address. This consists of the device's
* primary MAC address with the locally administered bit set.
*/
memcpy(p2p->dev_addr, ndev->dev_addr, ETH_ALEN);
memcpy(p2p->dev_addr, p2p->cfg->pub->mac, ETH_ALEN);
p2p->dev_addr[0] |= 0x02;

/* Generate the P2P Interface Address. If the discovery and connection
Expand Down

0 comments on commit de66efc

Please sign in to comment.