Commit f97a7f06 authored by Arend van Spriel's avatar Arend van Spriel Committed by John W. Linville

brcmfmac: pass ifp pointer in brcmf_fws_find_mac_desc()

Instead of passing the ifidx and lookup the ifp inside the
function brcmf_fws_find_mac_desc() simply pass the ifp as
parameter.
Reviewed-by: default avatarHante Meuleman <meuleman@broadcom.com>
Reviewed-by: default avatarPieter-Paul Giesberts <pieterpg@broadcom.com>
Reviewed-by: default avatarPiotr Haber <phaber@broadcom.com>
Signed-off-by: default avatarArend van Spriel <arend@broadcom.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent a7965fbb
...@@ -681,19 +681,16 @@ brcmf_fws_mac_descriptor_lookup(struct brcmf_fws_info *fws, u8 *ea) ...@@ -681,19 +681,16 @@ brcmf_fws_mac_descriptor_lookup(struct brcmf_fws_info *fws, u8 *ea)
} }
static struct brcmf_fws_mac_descriptor* static struct brcmf_fws_mac_descriptor*
brcmf_fws_find_mac_desc(struct brcmf_fws_info *fws, int ifidx, u8 *da) brcmf_fws_find_mac_desc(struct brcmf_fws_info *fws, struct brcmf_if *ifp,
u8 *da)
{ {
struct brcmf_fws_mac_descriptor *entry = &fws->desc.other; struct brcmf_fws_mac_descriptor *entry = &fws->desc.other;
struct brcmf_if *ifp;
bool multicast; bool multicast;
enum nl80211_iftype iftype; enum nl80211_iftype iftype;
brcmf_dbg(TRACE, "enter: ifidx=%d\n", ifidx);
multicast = is_multicast_ether_addr(da); brcmf_dbg(TRACE, "enter: idx=%d\n", ifp->bssidx);
ifp = fws->drvr->iflist[ifidx ? ifidx + 1 : 0];
if (WARN_ON(!ifp))
goto done;
multicast = is_multicast_ether_addr(da);
iftype = brcmf_cfg80211_get_iftype(ifp); iftype = brcmf_cfg80211_get_iftype(ifp);
/* Multicast destination and P2P clients get the interface entry. /* Multicast destination and P2P clients get the interface entry.
...@@ -1750,7 +1747,7 @@ int brcmf_fws_process_skb(struct brcmf_if *ifp, struct sk_buff *skb) ...@@ -1750,7 +1747,7 @@ int brcmf_fws_process_skb(struct brcmf_if *ifp, struct sk_buff *skb)
/* set control buffer information */ /* set control buffer information */
skcb->if_flags = 0; skcb->if_flags = 0;
skcb->mac = brcmf_fws_find_mac_desc(drvr->fws, ifidx, eh->h_dest); skcb->mac = brcmf_fws_find_mac_desc(drvr->fws, ifp, eh->h_dest);
skcb->state = BRCMF_FWS_SKBSTATE_NEW; skcb->state = BRCMF_FWS_SKBSTATE_NEW;
brcmf_skb_if_flags_set_field(skb, INDEX, ifidx); brcmf_skb_if_flags_set_field(skb, INDEX, ifidx);
if (!multicast) if (!multicast)
......
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