From 3bf4b214e8a2f4f35b541a6180ac7d5cdd6786fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= Date: Thu, 29 Sep 2016 14:24:14 +0200 Subject: mac80211: brcmfmac: backport patch simplifying brcmf_alloc_vif MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is quite trivial and will be required for VIF fixes in the future. Signed-off-by: Rafał Miłecki --- ...cmfmac-drop-unused-pm_block-vif-attribute.patch | 103 +++++++++++++++++++++ ...ightly-simplify-building-interface-combin.patch | 10 +- ...x-lockup-when-removing-P2P-interface-afte.patch | 4 +- ...dd-missing-break-when-deleting-P2P_DEVICE.patch | 2 +- ...lete-interface-directly-in-code-that-sent.patch | 2 +- 5 files changed, 112 insertions(+), 9 deletions(-) create mode 100644 package/kernel/mac80211/patches/351-0017-brcmfmac-drop-unused-pm_block-vif-attribute.patch diff --git a/package/kernel/mac80211/patches/351-0017-brcmfmac-drop-unused-pm_block-vif-attribute.patch b/package/kernel/mac80211/patches/351-0017-brcmfmac-drop-unused-pm_block-vif-attribute.patch new file mode 100644 index 0000000000..6cf8135346 --- /dev/null +++ b/package/kernel/mac80211/patches/351-0017-brcmfmac-drop-unused-pm_block-vif-attribute.patch @@ -0,0 +1,103 @@ +From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= +Date: Mon, 6 Jun 2016 23:03:55 +0200 +Subject: [PATCH] brcmfmac: drop unused pm_block vif attribute +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This attribute was added 3 years ago by +commit 3eacf866559c ("brcmfmac: introduce brcmf_cfg80211_vif structure") +but it remains unused since then. It seems we can safely drop it. + +Signed-off-by: Rafał Miłecki +Signed-off-by: Kalle Valo +--- + +--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c ++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +@@ -566,7 +566,7 @@ struct wireless_dev *brcmf_ap_add_vif(st + + brcmf_dbg(INFO, "Adding vif \"%s\"\n", name); + +- vif = brcmf_alloc_vif(cfg, NL80211_IFTYPE_AP, false); ++ vif = brcmf_alloc_vif(cfg, NL80211_IFTYPE_AP); + if (IS_ERR(vif)) + return (struct wireless_dev *)vif; + +@@ -4995,8 +4995,7 @@ static struct cfg80211_ops wl_cfg80211_o + }; + + struct brcmf_cfg80211_vif *brcmf_alloc_vif(struct brcmf_cfg80211_info *cfg, +- enum nl80211_iftype type, +- bool pm_block) ++ enum nl80211_iftype type) + { + struct brcmf_cfg80211_vif *vif_walk; + struct brcmf_cfg80211_vif *vif; +@@ -5011,8 +5010,6 @@ struct brcmf_cfg80211_vif *brcmf_alloc_v + vif->wdev.wiphy = cfg->wiphy; + vif->wdev.iftype = type; + +- vif->pm_block = pm_block; +- + brcmf_init_prof(&vif->profile); + + if (type == NL80211_IFTYPE_AP) { +@@ -6582,7 +6579,7 @@ struct brcmf_cfg80211_info *brcmf_cfg802 + init_vif_event(&cfg->vif_event); + INIT_LIST_HEAD(&cfg->vif_list); + +- vif = brcmf_alloc_vif(cfg, NL80211_IFTYPE_STATION, false); ++ vif = brcmf_alloc_vif(cfg, NL80211_IFTYPE_STATION); + if (IS_ERR(vif)) + goto wiphy_out; + +--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.h ++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.h +@@ -165,7 +165,6 @@ struct vif_saved_ie { + * @wdev: wireless device. + * @profile: profile information. + * @sme_state: SME state using enum brcmf_vif_status bits. +- * @pm_block: power-management blocked. + * @list: linked list. + * @mgmt_rx_reg: registered rx mgmt frame types. + * @mbss: Multiple BSS type, set if not first AP (not relevant for P2P). +@@ -175,7 +174,6 @@ struct brcmf_cfg80211_vif { + struct wireless_dev wdev; + struct brcmf_cfg80211_profile profile; + unsigned long sme_state; +- bool pm_block; + struct vif_saved_ie saved_ie; + struct list_head list; + u16 mgmt_rx_reg; +@@ -386,8 +384,7 @@ s32 brcmf_cfg80211_down(struct net_devic + enum nl80211_iftype brcmf_cfg80211_get_iftype(struct brcmf_if *ifp); + + struct brcmf_cfg80211_vif *brcmf_alloc_vif(struct brcmf_cfg80211_info *cfg, +- enum nl80211_iftype type, +- bool pm_block); ++ enum nl80211_iftype type); + void brcmf_free_vif(struct brcmf_cfg80211_vif *vif); + + s32 brcmf_vif_set_mgmt_ie(struct brcmf_cfg80211_vif *vif, s32 pktflag, +--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c ++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c +@@ -2064,8 +2064,7 @@ static struct wireless_dev *brcmf_p2p_cr + if (p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif) + return ERR_PTR(-ENOSPC); + +- p2p_vif = brcmf_alloc_vif(p2p->cfg, NL80211_IFTYPE_P2P_DEVICE, +- false); ++ p2p_vif = brcmf_alloc_vif(p2p->cfg, NL80211_IFTYPE_P2P_DEVICE); + if (IS_ERR(p2p_vif)) { + brcmf_err("could not create discovery vif\n"); + return (struct wireless_dev *)p2p_vif; +@@ -2165,7 +2164,7 @@ struct wireless_dev *brcmf_p2p_add_vif(s + return ERR_PTR(-EOPNOTSUPP); + } + +- vif = brcmf_alloc_vif(cfg, type, false); ++ vif = brcmf_alloc_vif(cfg, type); + if (IS_ERR(vif)) + return (struct wireless_dev *)vif; + brcmf_cfg80211_arm_vif_event(cfg, vif); diff --git a/package/kernel/mac80211/patches/351-0019-brcmfmac-slightly-simplify-building-interface-combin.patch b/package/kernel/mac80211/patches/351-0019-brcmfmac-slightly-simplify-building-interface-combin.patch index 972851633a..be6606d25a 100644 --- a/package/kernel/mac80211/patches/351-0019-brcmfmac-slightly-simplify-building-interface-combin.patch +++ b/package/kernel/mac80211/patches/351-0019-brcmfmac-slightly-simplify-building-interface-combin.patch @@ -23,7 +23,7 @@ Signed-off-by: Kalle Valo --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c -@@ -6108,29 +6108,15 @@ static int brcmf_setup_ifmodes(struct wi +@@ -6105,29 +6105,15 @@ static int brcmf_setup_ifmodes(struct wi if (!combo) goto err; @@ -56,7 +56,7 @@ Signed-off-by: Kalle Valo c0_limits[i].max = 1; c0_limits[i++].types = BIT(NL80211_IFTYPE_STATION); if (p2p) { -@@ -6148,6 +6134,7 @@ static int brcmf_setup_ifmodes(struct wi +@@ -6145,6 +6131,7 @@ static int brcmf_setup_ifmodes(struct wi c0_limits[i].max = 1; c0_limits[i++].types = BIT(NL80211_IFTYPE_AP); } @@ -64,7 +64,7 @@ Signed-off-by: Kalle Valo combo[c].max_interfaces = i; combo[c].n_limits = i; combo[c].limits = c0_limits; -@@ -6155,7 +6142,9 @@ static int brcmf_setup_ifmodes(struct wi +@@ -6152,7 +6139,9 @@ static int brcmf_setup_ifmodes(struct wi if (p2p) { c++; i = 0; @@ -75,7 +75,7 @@ Signed-off-by: Kalle Valo p2p_limits[i].max = 1; p2p_limits[i++].types = BIT(NL80211_IFTYPE_STATION); p2p_limits[i].max = 1; -@@ -6164,6 +6153,7 @@ static int brcmf_setup_ifmodes(struct wi +@@ -6161,6 +6150,7 @@ static int brcmf_setup_ifmodes(struct wi p2p_limits[i++].types = BIT(NL80211_IFTYPE_P2P_CLIENT); p2p_limits[i].max = 1; p2p_limits[i++].types = BIT(NL80211_IFTYPE_P2P_DEVICE); @@ -83,7 +83,7 @@ Signed-off-by: Kalle Valo combo[c].max_interfaces = i; combo[c].n_limits = i; combo[c].limits = p2p_limits; -@@ -6171,14 +6161,19 @@ static int brcmf_setup_ifmodes(struct wi +@@ -6168,14 +6158,19 @@ static int brcmf_setup_ifmodes(struct wi if (mbss) { c++; diff --git a/package/kernel/mac80211/patches/351-0020-brcmfmac-fix-lockup-when-removing-P2P-interface-afte.patch b/package/kernel/mac80211/patches/351-0020-brcmfmac-fix-lockup-when-removing-P2P-interface-afte.patch index 174d9a41db..0472290f6c 100644 --- a/package/kernel/mac80211/patches/351-0020-brcmfmac-fix-lockup-when-removing-P2P-interface-afte.patch +++ b/package/kernel/mac80211/patches/351-0020-brcmfmac-fix-lockup-when-removing-P2P-interface-afte.patch @@ -134,7 +134,7 @@ Signed-off-by: Kalle Valo /** --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c -@@ -2280,7 +2280,7 @@ int brcmf_p2p_del_vif(struct wiphy *wiph +@@ -2279,7 +2279,7 @@ int brcmf_p2p_del_vif(struct wiphy *wiph err = 0; } if (err) @@ -143,7 +143,7 @@ Signed-off-by: Kalle Valo brcmf_cfg80211_arm_vif_event(cfg, NULL); if (vif->wdev.iftype != NL80211_IFTYPE_P2P_DEVICE) -@@ -2386,7 +2386,7 @@ void brcmf_p2p_detach(struct brcmf_p2p_i +@@ -2385,7 +2385,7 @@ void brcmf_p2p_detach(struct brcmf_p2p_i if (vif != NULL) { brcmf_p2p_cancel_remain_on_channel(vif->ifp); brcmf_p2p_deinit_discovery(p2p); diff --git a/package/kernel/mac80211/patches/351-0023-brcmfmac-add-missing-break-when-deleting-P2P_DEVICE.patch b/package/kernel/mac80211/patches/351-0023-brcmfmac-add-missing-break-when-deleting-P2P_DEVICE.patch index 4e01532228..1ed0fc14a2 100644 --- a/package/kernel/mac80211/patches/351-0023-brcmfmac-add-missing-break-when-deleting-P2P_DEVICE.patch +++ b/package/kernel/mac80211/patches/351-0023-brcmfmac-add-missing-break-when-deleting-P2P_DEVICE.patch @@ -16,7 +16,7 @@ Signed-off-by: Kalle Valo --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c -@@ -2254,6 +2254,8 @@ int brcmf_p2p_del_vif(struct wiphy *wiph +@@ -2253,6 +2253,8 @@ int brcmf_p2p_del_vif(struct wiphy *wiph return 0; brcmf_p2p_cancel_remain_on_channel(vif->ifp); brcmf_p2p_deinit_discovery(p2p); diff --git a/package/kernel/mac80211/patches/351-0024-brcmfmac-delete-interface-directly-in-code-that-sent.patch b/package/kernel/mac80211/patches/351-0024-brcmfmac-delete-interface-directly-in-code-that-sent.patch index f3f6cdb1d6..3268051aad 100644 --- a/package/kernel/mac80211/patches/351-0024-brcmfmac-delete-interface-directly-in-code-that-sent.patch +++ b/package/kernel/mac80211/patches/351-0024-brcmfmac-delete-interface-directly-in-code-that-sent.patch @@ -63,7 +63,7 @@ Signed-off-by: Kalle Valo /** --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c -@@ -2281,8 +2281,7 @@ int brcmf_p2p_del_vif(struct wiphy *wiph +@@ -2280,8 +2280,7 @@ int brcmf_p2p_del_vif(struct wiphy *wiph else err = 0; } -- cgit v1.2.3