mirror of
https://github.com/torvalds/linux.git
synced 2024-12-15 07:33:56 +00:00
mwifiex: update set_mac_address logic
In set_mac_address, driver check for interfaces with same bss_type For first STA entry, this would return 3 interfaces since all priv's have bss_type as 0 due to kzalloc. Thus mac address gets changed for STA unexpected. This patch adds check for first STA and avoids mac address change. This patch also adds mac_address change for p2p based on bss_num type. Signed-off-by: Sharvari Harisangam <sharvari@marvell.com> Signed-off-by: Ganapathi Bhat <gbhat@marvell.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
parent
2fc0aa4544
commit
7afb94da3c
@ -960,10 +960,10 @@ int mwifiex_set_mac_address(struct mwifiex_private *priv,
|
||||
|
||||
mac_addr = old_mac_addr;
|
||||
|
||||
if (priv->bss_type == MWIFIEX_BSS_TYPE_P2P)
|
||||
if (priv->bss_type == MWIFIEX_BSS_TYPE_P2P) {
|
||||
mac_addr |= BIT_ULL(MWIFIEX_MAC_LOCAL_ADMIN_BIT);
|
||||
|
||||
if (mwifiex_get_intf_num(priv->adapter, priv->bss_type) > 1) {
|
||||
mac_addr += priv->bss_num;
|
||||
} else if (priv->adapter->priv[0] != priv) {
|
||||
/* Set mac address based on bss_type/bss_num */
|
||||
mac_addr ^= BIT_ULL(priv->bss_type + 8);
|
||||
mac_addr += priv->bss_num;
|
||||
|
Loading…
Reference in New Issue
Block a user