Commit de66efca authored by Arend van Spriel's avatar Arend van Spriel Committed by John W. Linville
Browse files

brcmfmac: fix generation of the p2p related mac addresses

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: default avatarPieter-Paul Giesberts <>
Reviewed-by: default avatarHante Meuleman <>
Signed-off-by: default avatarArend van Spriel <>
Signed-off-by: default avatarJohn W. Linville <>
parent 33a6b157
......@@ -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
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment