diff options
Diffstat (limited to 'package/kernel/mac80211/patches/318-brcmfmac-slightly-simplify-building-interface-combin.patch')
-rw-r--r-- | package/kernel/mac80211/patches/318-brcmfmac-slightly-simplify-building-interface-combin.patch | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/package/kernel/mac80211/patches/318-brcmfmac-slightly-simplify-building-interface-combin.patch b/package/kernel/mac80211/patches/318-brcmfmac-slightly-simplify-building-interface-combin.patch deleted file mode 100644 index d946ecc..0000000 --- a/package/kernel/mac80211/patches/318-brcmfmac-slightly-simplify-building-interface-combin.patch +++ /dev/null @@ -1,108 +0,0 @@ -From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com> -Date: Tue, 7 Jun 2016 21:10:18 +0200 -Subject: [PATCH] brcmfmac: slightly simplify building interface combinations -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This change reorders some operations in brcmf_setup_ifmodes in hope to -make it simpler: -1) It allocates arrays right before filling them. This way it's easier - to follow requested array length as it's immediately followed by - code filling it. It's easier to check e.g. why we need 4 entries for - P2P. Other than that it deduplicates some checks (e.g. for P2P). -2) It reorders code to first prepare limits and then define a new combo. - Previously this was mixed (e.g. we were setting num of channels - before preparing limits). -3) It modifies mbss code to use i variable just like other combos do. - -Signed-off-by: Rafał Miłecki <zajec5@gmail.com> -Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com> -Signed-off-by: Kalle Valo <kvalo@codeaurora.org> ---- - ---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c -+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c -@@ -6284,29 +6284,15 @@ static int brcmf_setup_ifmodes(struct wi - if (!combo) - goto err; - -- c0_limits = kcalloc(p2p ? 3 : 2, sizeof(*c0_limits), GFP_KERNEL); -- if (!c0_limits) -- goto err; -- -- if (p2p) { -- p2p_limits = kcalloc(4, sizeof(*p2p_limits), GFP_KERNEL); -- if (!p2p_limits) -- goto err; -- } -- -- if (mbss) { -- mbss_limits = kcalloc(1, sizeof(*mbss_limits), GFP_KERNEL); -- if (!mbss_limits) -- goto err; -- } -- - wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) | - BIT(NL80211_IFTYPE_ADHOC) | - BIT(NL80211_IFTYPE_AP); - - c = 0; - i = 0; -- combo[c].num_different_channels = 1; -+ c0_limits = kcalloc(p2p ? 3 : 2, sizeof(*c0_limits), GFP_KERNEL); -+ if (!c0_limits) -+ goto err; - c0_limits[i].max = 1; - c0_limits[i++].types = BIT(NL80211_IFTYPE_STATION); - if (p2p) { -@@ -6324,6 +6310,7 @@ static int brcmf_setup_ifmodes(struct wi - c0_limits[i].max = 1; - c0_limits[i++].types = BIT(NL80211_IFTYPE_AP); - } -+ combo[c].num_different_channels = 1; - combo[c].max_interfaces = i; - combo[c].n_limits = i; - combo[c].limits = c0_limits; -@@ -6331,7 +6318,9 @@ static int brcmf_setup_ifmodes(struct wi - if (p2p) { - c++; - i = 0; -- combo[c].num_different_channels = 1; -+ p2p_limits = kcalloc(4, sizeof(*p2p_limits), GFP_KERNEL); -+ if (!p2p_limits) -+ goto err; - p2p_limits[i].max = 1; - p2p_limits[i++].types = BIT(NL80211_IFTYPE_STATION); - p2p_limits[i].max = 1; -@@ -6340,6 +6329,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); -+ combo[c].num_different_channels = 1; - combo[c].max_interfaces = i; - combo[c].n_limits = i; - combo[c].limits = p2p_limits; -@@ -6347,14 +6337,19 @@ static int brcmf_setup_ifmodes(struct wi - - if (mbss) { - c++; -+ i = 0; -+ mbss_limits = kcalloc(1, sizeof(*mbss_limits), GFP_KERNEL); -+ if (!mbss_limits) -+ goto err; -+ mbss_limits[i].max = 4; -+ mbss_limits[i++].types = BIT(NL80211_IFTYPE_AP); - combo[c].beacon_int_infra_match = true; - combo[c].num_different_channels = 1; -- mbss_limits[0].max = 4; -- mbss_limits[0].types = BIT(NL80211_IFTYPE_AP); - combo[c].max_interfaces = 4; -- combo[c].n_limits = 1; -+ combo[c].n_limits = i; - combo[c].limits = mbss_limits; - } -+ - wiphy->n_iface_combinations = n_combos; - wiphy->iface_combinations = combo; - return 0; |