From 928e893a11db11b350f47921e269cfba17789df0 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Sat, 3 Aug 2019 12:30:38 +0200 Subject: mac80211: Update to version 5.3-rc4-1 The removed patches were applied upstream. The type of the RT2X00_LIB_EEPROM config option was changed to bool, because boolean is an invalid value and the new kconfig system complained about this. Signed-off-by: Hauke Mehrtens --- .../subsys/100-remove-cryptoapi-dependencies.patch | 4 +-- .../subsys/110-mac80211_keep_keys_on_stop_ap.patch | 2 +- .../mac80211/patches/subsys/130-disable-fils.patch | 2 +- ...0211-aes-cmac-switch-to-shash-CMAC-driver.patch | 2 +- .../132-mac80211-remove-cmac-dependency.patch | 2 +- .../patches/subsys/150-disable_addr_notifier.patch | 6 ++-- .../mac80211/patches/subsys/210-ap_scan.patch | 2 +- ...-mac80211-add-hdrlen-to-ieee80211_tx_data.patch | 14 ++++---- ...c80211-add-TX_NEEDS_ALIGNED4_SKBS-hw-flag.patch | 16 ++++----- .../522-mac80211_configure_antenna_gain.patch | 40 +++++++++++----------- 10 files changed, 45 insertions(+), 45 deletions(-) (limited to 'package/kernel/mac80211/patches/subsys') diff --git a/package/kernel/mac80211/patches/subsys/100-remove-cryptoapi-dependencies.patch b/package/kernel/mac80211/patches/subsys/100-remove-cryptoapi-dependencies.patch index 1a13fdc56f..f5ec895f0b 100644 --- a/package/kernel/mac80211/patches/subsys/100-remove-cryptoapi-dependencies.patch +++ b/package/kernel/mac80211/patches/subsys/100-remove-cryptoapi-dependencies.patch @@ -648,7 +648,7 @@ +++ b/net/mac80211/Kconfig @@ -6,8 +6,6 @@ config MAC80211 depends on CRYPTO - depends on CRYPTO_ARC4 + select BPAUTO_CRYPTO_LIB_ARC4 depends on CRYPTO_AES - depends on CRYPTO_CCM - depends on CRYPTO_GCM @@ -687,7 +687,7 @@ #endif /* AES_GMAC_H */ --- a/net/mac80211/key.h +++ b/net/mac80211/key.h -@@ -86,7 +86,7 @@ struct ieee80211_key { +@@ -87,7 +87,7 @@ struct ieee80211_key { * Management frames. */ u8 rx_pn[IEEE80211_NUM_TIDS + 1][IEEE80211_CCMP_PN_LEN]; diff --git a/package/kernel/mac80211/patches/subsys/110-mac80211_keep_keys_on_stop_ap.patch b/package/kernel/mac80211/patches/subsys/110-mac80211_keep_keys_on_stop_ap.patch index 59144f7310..dcc0ac4dfb 100644 --- a/package/kernel/mac80211/patches/subsys/110-mac80211_keep_keys_on_stop_ap.patch +++ b/package/kernel/mac80211/patches/subsys/110-mac80211_keep_keys_on_stop_ap.patch @@ -2,7 +2,7 @@ Used for AP+STA support in OpenWrt - preserve AP mode keys across STA reconnects --- a/net/mac80211/cfg.c +++ b/net/mac80211/cfg.c -@@ -1162,7 +1162,6 @@ static int ieee80211_stop_ap(struct wiph +@@ -1169,7 +1169,6 @@ static int ieee80211_stop_ap(struct wiph sdata->vif.bss_conf.ftmr_params = NULL; __sta_info_flush(sdata, true); diff --git a/package/kernel/mac80211/patches/subsys/130-disable-fils.patch b/package/kernel/mac80211/patches/subsys/130-disable-fils.patch index dd1ccc8597..f370dd52ee 100644 --- a/package/kernel/mac80211/patches/subsys/130-disable-fils.patch +++ b/package/kernel/mac80211/patches/subsys/130-disable-fils.patch @@ -21,7 +21,7 @@ Disable FILS support, since it pulls in crypto hash support * FILS AEAD for (Re)Association Request/Response frames --- a/net/mac80211/main.c +++ b/net/mac80211/main.c -@@ -570,7 +570,7 @@ struct ieee80211_hw *ieee80211_alloc_hw_ +@@ -571,7 +571,7 @@ struct ieee80211_hw *ieee80211_alloc_hw_ NL80211_FEATURE_MAC_ON_CREATE | NL80211_FEATURE_USERSPACE_MPM | NL80211_FEATURE_FULL_AP_CLIENT_STATE; diff --git a/package/kernel/mac80211/patches/subsys/131-Revert-mac80211-aes-cmac-switch-to-shash-CMAC-driver.patch b/package/kernel/mac80211/patches/subsys/131-Revert-mac80211-aes-cmac-switch-to-shash-CMAC-driver.patch index 0c5f85236e..9830602ab0 100644 --- a/package/kernel/mac80211/patches/subsys/131-Revert-mac80211-aes-cmac-switch-to-shash-CMAC-driver.patch +++ b/package/kernel/mac80211/patches/subsys/131-Revert-mac80211-aes-cmac-switch-to-shash-CMAC-driver.patch @@ -188,7 +188,7 @@ Signed-off-by: Felix Fietkau #endif /* AES_CMAC_H */ --- a/net/mac80211/key.h +++ b/net/mac80211/key.h -@@ -91,7 +91,7 @@ struct ieee80211_key { +@@ -92,7 +92,7 @@ struct ieee80211_key { } ccmp; struct { u8 rx_pn[IEEE80211_CMAC_PN_LEN]; diff --git a/package/kernel/mac80211/patches/subsys/132-mac80211-remove-cmac-dependency.patch b/package/kernel/mac80211/patches/subsys/132-mac80211-remove-cmac-dependency.patch index a259d5816b..2a9c09b4ad 100644 --- a/package/kernel/mac80211/patches/subsys/132-mac80211-remove-cmac-dependency.patch +++ b/package/kernel/mac80211/patches/subsys/132-mac80211-remove-cmac-dependency.patch @@ -2,7 +2,7 @@ +++ b/net/mac80211/Kconfig @@ -6,7 +6,6 @@ config MAC80211 depends on CRYPTO - depends on CRYPTO_ARC4 + select BPAUTO_CRYPTO_LIB_ARC4 depends on CRYPTO_AES - depends on CRYPTO_CMAC depends on CRC32 diff --git a/package/kernel/mac80211/patches/subsys/150-disable_addr_notifier.patch b/package/kernel/mac80211/patches/subsys/150-disable_addr_notifier.patch index 39000e4f05..14ef714f68 100644 --- a/package/kernel/mac80211/patches/subsys/150-disable_addr_notifier.patch +++ b/package/kernel/mac80211/patches/subsys/150-disable_addr_notifier.patch @@ -1,6 +1,6 @@ --- a/net/mac80211/main.c +++ b/net/mac80211/main.c -@@ -313,7 +313,7 @@ void ieee80211_restart_hw(struct ieee802 +@@ -314,7 +314,7 @@ void ieee80211_restart_hw(struct ieee802 } EXPORT_SYMBOL(ieee80211_restart_hw); @@ -9,7 +9,7 @@ static int ieee80211_ifa_changed(struct notifier_block *nb, unsigned long data, void *arg) { -@@ -372,7 +372,7 @@ static int ieee80211_ifa_changed(struct +@@ -373,7 +373,7 @@ static int ieee80211_ifa_changed(struct } #endif @@ -52,7 +52,7 @@ fail_ifa: #endif rtnl_lock(); -@@ -1320,10 +1320,10 @@ void ieee80211_unregister_hw(struct ieee +@@ -1319,10 +1319,10 @@ void ieee80211_unregister_hw(struct ieee tasklet_kill(&local->tx_pending_tasklet); tasklet_kill(&local->tasklet); diff --git a/package/kernel/mac80211/patches/subsys/210-ap_scan.patch b/package/kernel/mac80211/patches/subsys/210-ap_scan.patch index 7e237a443e..634c531b00 100644 --- a/package/kernel/mac80211/patches/subsys/210-ap_scan.patch +++ b/package/kernel/mac80211/patches/subsys/210-ap_scan.patch @@ -1,6 +1,6 @@ --- a/net/mac80211/cfg.c +++ b/net/mac80211/cfg.c -@@ -2312,7 +2312,7 @@ static int ieee80211_scan(struct wiphy * +@@ -2319,7 +2319,7 @@ static int ieee80211_scan(struct wiphy * * the frames sent while scanning on other channel will be * lost) */ diff --git a/package/kernel/mac80211/patches/subsys/350-mac80211-add-hdrlen-to-ieee80211_tx_data.patch b/package/kernel/mac80211/patches/subsys/350-mac80211-add-hdrlen-to-ieee80211_tx_data.patch index e88163eb5d..86d296f52a 100644 --- a/package/kernel/mac80211/patches/subsys/350-mac80211-add-hdrlen-to-ieee80211_tx_data.patch +++ b/package/kernel/mac80211/patches/subsys/350-mac80211-add-hdrlen-to-ieee80211_tx_data.patch @@ -97,7 +97,7 @@ Signed-off-by: Felix Fietkau --- a/net/mac80211/wep.c +++ b/net/mac80211/wep.c -@@ -86,11 +86,11 @@ static void ieee80211_wep_get_iv(struct +@@ -65,11 +65,11 @@ static void ieee80211_wep_get_iv(struct static u8 *ieee80211_wep_add_iv(struct ieee80211_local *local, struct sk_buff *skb, @@ -110,7 +110,7 @@ Signed-off-by: Felix Fietkau u8 *newhdr; hdr->frame_control |= cpu_to_le16(IEEE80211_FCTL_PROTECTED); -@@ -98,7 +98,6 @@ static u8 *ieee80211_wep_add_iv(struct i +@@ -77,7 +77,6 @@ static u8 *ieee80211_wep_add_iv(struct i if (WARN_ON(skb_headroom(skb) < IEEE80211_WEP_IV_LEN)) return NULL; @@ -118,7 +118,7 @@ Signed-off-by: Felix Fietkau newhdr = skb_push(skb, IEEE80211_WEP_IV_LEN); memmove(newhdr, newhdr + IEEE80211_WEP_IV_LEN, hdrlen); -@@ -157,6 +156,7 @@ int ieee80211_wep_encrypt_data(struct cr +@@ -132,6 +131,7 @@ int ieee80211_wep_encrypt_data(struct ar */ int ieee80211_wep_encrypt(struct ieee80211_local *local, struct sk_buff *skb, @@ -126,7 +126,7 @@ Signed-off-by: Felix Fietkau const u8 *key, int keylen, int keyidx) { u8 *iv; -@@ -166,7 +166,7 @@ int ieee80211_wep_encrypt(struct ieee802 +@@ -141,7 +141,7 @@ int ieee80211_wep_encrypt(struct ieee802 if (WARN_ON(skb_tailroom(skb) < IEEE80211_WEP_ICV_LEN)) return -1; @@ -135,7 +135,7 @@ Signed-off-by: Felix Fietkau if (!iv) return -1; -@@ -304,13 +304,14 @@ static int wep_encrypt_skb(struct ieee80 +@@ -275,13 +275,14 @@ static int wep_encrypt_skb(struct ieee80 struct ieee80211_key_conf *hw_key = info->control.hw_key; if (!hw_key) { @@ -154,13 +154,13 @@ Signed-off-by: Felix Fietkau return -1; --- a/net/mac80211/wep.h +++ b/net/mac80211/wep.h -@@ -19,6 +19,7 @@ int ieee80211_wep_encrypt_data(struct cr +@@ -18,6 +18,7 @@ int ieee80211_wep_encrypt_data(struct ar size_t klen, u8 *data, size_t data_len); int ieee80211_wep_encrypt(struct ieee80211_local *local, struct sk_buff *skb, + unsigned int hdrlen, const u8 *key, int keylen, int keyidx); - int ieee80211_wep_decrypt_data(struct crypto_cipher *tfm, u8 *rc4key, + int ieee80211_wep_decrypt_data(struct arc4_ctx *ctx, u8 *rc4key, size_t klen, u8 *data, size_t data_len); --- a/net/mac80211/wpa.c +++ b/net/mac80211/wpa.c diff --git a/package/kernel/mac80211/patches/subsys/351-mac80211-add-TX_NEEDS_ALIGNED4_SKBS-hw-flag.patch b/package/kernel/mac80211/patches/subsys/351-mac80211-add-TX_NEEDS_ALIGNED4_SKBS-hw-flag.patch index fe113958d9..7f0122e536 100644 --- a/package/kernel/mac80211/patches/subsys/351-mac80211-add-TX_NEEDS_ALIGNED4_SKBS-hw-flag.patch +++ b/package/kernel/mac80211/patches/subsys/351-mac80211-add-TX_NEEDS_ALIGNED4_SKBS-hw-flag.patch @@ -20,9 +20,9 @@ Signed-off-by: Felix Fietkau --- a/include/net/mac80211.h +++ b/include/net/mac80211.h -@@ -2266,6 +2266,9 @@ struct ieee80211_txq { - * @IEEE80211_HW_EXT_KEY_ID_NATIVE: Driver and hardware are supporting Extended - * Key ID and can handle two unicast keys per station for Rx and Tx. +@@ -2274,6 +2274,9 @@ struct ieee80211_txq { + * @IEEE80211_HW_NO_AMPDU_KEYBORDER_SUPPORT: The card/driver can't handle + * active Tx A-MPDU sessions with Extended Key IDs during rekey. * + * @IEEE80211_HW_TX_NEEDS_ALIGNED4_SKBS: Driver need aligned skbs to four-byte. + * Padding will be added after ieee80211_hdr, before IV/LLC. @@ -30,15 +30,15 @@ Signed-off-by: Felix Fietkau * @NUM_IEEE80211_HW_FLAGS: number of hardware flags, used for sizing arrays */ enum ieee80211_hw_flags { -@@ -2318,6 +2321,7 @@ enum ieee80211_hw_flags { - IEEE80211_HW_SUPPORTS_MULTI_BSSID, +@@ -2327,6 +2330,7 @@ enum ieee80211_hw_flags { IEEE80211_HW_SUPPORTS_ONLY_HE_MULTI_BSSID, IEEE80211_HW_EXT_KEY_ID_NATIVE, + IEEE80211_HW_NO_AMPDU_KEYBORDER_SUPPORT, + IEEE80211_HW_TX_NEEDS_ALIGNED4_SKBS, /* keep last, obviously */ NUM_IEEE80211_HW_FLAGS -@@ -2611,6 +2615,40 @@ ieee80211_get_alt_retry_rate(const struc +@@ -2620,6 +2624,40 @@ ieee80211_get_alt_retry_rate(const struc void ieee80211_free_txskb(struct ieee80211_hw *hw, struct sk_buff *skb); /** @@ -294,10 +294,10 @@ Signed-off-by: Felix Fietkau rcu_read_unlock(); --- a/net/mac80211/debugfs.c +++ b/net/mac80211/debugfs.c -@@ -272,6 +272,7 @@ static const char *hw_flag_names[] = { - FLAG(SUPPORTS_MULTI_BSSID), +@@ -273,6 +273,7 @@ static const char *hw_flag_names[] = { FLAG(SUPPORTS_ONLY_HE_MULTI_BSSID), FLAG(EXT_KEY_ID_NATIVE), + FLAG(NO_AMPDU_KEYBORDER_SUPPORT), + FLAG(TX_NEEDS_ALIGNED4_SKBS), #undef FLAG }; diff --git a/package/kernel/mac80211/patches/subsys/522-mac80211_configure_antenna_gain.patch b/package/kernel/mac80211/patches/subsys/522-mac80211_configure_antenna_gain.patch index 7960039fd7..580e043f22 100644 --- a/package/kernel/mac80211/patches/subsys/522-mac80211_configure_antenna_gain.patch +++ b/package/kernel/mac80211/patches/subsys/522-mac80211_configure_antenna_gain.patch @@ -1,6 +1,6 @@ --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h -@@ -3322,6 +3322,7 @@ struct cfg80211_update_owe_info { +@@ -3344,6 +3344,7 @@ struct cfg80211_update_owe_info { * (as advertised by the nl80211 feature flag.) * @get_tx_power: store the current TX power into the dbm variable; * return 0 if successful @@ -8,7 +8,7 @@ * * @set_wds_peer: set the WDS peer for a WDS interface * -@@ -3634,6 +3635,7 @@ struct cfg80211_ops { +@@ -3656,6 +3657,7 @@ struct cfg80211_ops { enum nl80211_tx_power_setting type, int mbm); int (*get_tx_power)(struct wiphy *wiphy, struct wireless_dev *wdev, int *dbm); @@ -18,7 +18,7 @@ const u8 *addr); --- a/include/net/mac80211.h +++ b/include/net/mac80211.h -@@ -1471,6 +1471,7 @@ enum ieee80211_smps_mode { +@@ -1476,6 +1476,7 @@ enum ieee80211_smps_mode { * * @power_level: requested transmit power (in dBm), backward compatibility * value only that is set to the minimum of all interfaces @@ -26,7 +26,7 @@ * * @chandef: the channel definition to tune to * @radar_enabled: whether radar detection is enabled -@@ -1491,6 +1492,7 @@ enum ieee80211_smps_mode { +@@ -1496,6 +1497,7 @@ enum ieee80211_smps_mode { struct ieee80211_conf { u32 flags; int power_level, dynamic_ps_timeout; @@ -36,9 +36,9 @@ u8 ps_dtim_period; --- a/include/uapi/linux/nl80211.h +++ b/include/uapi/linux/nl80211.h -@@ -2341,6 +2341,9 @@ enum nl80211_commands { - * should be picking up the lowest tx power, either tx power per-interface - * or per-station. +@@ -2356,6 +2356,9 @@ enum nl80211_commands { + * + * @NL80211_ATTR_TWT_RESPONDER: Enable target wait time responder support. * + * @NL80211_ATTR_WIPHY_ANTENNA_GAIN: Configured antenna gain. Used to reduce + * transmit power to stay within regulatory limits. u32, dBi. @@ -46,9 +46,9 @@ * @NUM_NL80211_ATTR: total number of nl80211_attrs available * @NL80211_ATTR_MAX: highest attribute number currently defined * @__NL80211_ATTR_AFTER_LAST: internal use -@@ -2794,6 +2797,8 @@ enum nl80211_attrs { - NL80211_ATTR_STA_TX_POWER_SETTING, - NL80211_ATTR_STA_TX_POWER, +@@ -2813,6 +2816,8 @@ enum nl80211_attrs { + + NL80211_ATTR_TWT_RESPONDER, + NL80211_ATTR_WIPHY_ANTENNA_GAIN, + @@ -57,7 +57,7 @@ __NL80211_ATTR_AFTER_LAST, --- a/net/mac80211/cfg.c +++ b/net/mac80211/cfg.c -@@ -2577,6 +2577,19 @@ static int ieee80211_get_tx_power(struct +@@ -2584,6 +2584,19 @@ static int ieee80211_get_tx_power(struct return 0; } @@ -77,7 +77,7 @@ static int ieee80211_set_wds_peer(struct wiphy *wiphy, struct net_device *dev, const u8 *addr) { -@@ -3990,6 +4003,7 @@ const struct cfg80211_ops mac80211_confi +@@ -3997,6 +4010,7 @@ const struct cfg80211_ops mac80211_confi .set_wiphy_params = ieee80211_set_wiphy_params, .set_tx_power = ieee80211_set_tx_power, .get_tx_power = ieee80211_get_tx_power, @@ -97,7 +97,7 @@ --- a/net/mac80211/main.c +++ b/net/mac80211/main.c -@@ -92,7 +92,7 @@ static u32 ieee80211_hw_conf_chan(struct +@@ -93,7 +93,7 @@ static u32 ieee80211_hw_conf_chan(struct struct ieee80211_sub_if_data *sdata; struct cfg80211_chan_def chandef = {}; u32 changed = 0; @@ -106,7 +106,7 @@ u32 offchannel_flag; offchannel_flag = local->hw.conf.flags & IEEE80211_CONF_OFFCHANNEL; -@@ -149,6 +149,12 @@ static u32 ieee80211_hw_conf_chan(struct +@@ -150,6 +150,12 @@ static u32 ieee80211_hw_conf_chan(struct } rcu_read_unlock(); @@ -119,7 +119,7 @@ if (local->hw.conf.power_level != power) { changed |= IEEE80211_CONF_CHANGE_POWER; local->hw.conf.power_level = power; -@@ -638,6 +644,7 @@ struct ieee80211_hw *ieee80211_alloc_hw_ +@@ -639,6 +645,7 @@ struct ieee80211_hw *ieee80211_alloc_hw_ IEEE80211_RADIOTAP_MCS_HAVE_BW; local->hw.radiotap_vht_details = IEEE80211_RADIOTAP_VHT_KNOWN_GI | IEEE80211_RADIOTAP_VHT_KNOWN_BANDWIDTH; @@ -129,15 +129,15 @@ local->user_power_level = IEEE80211_UNSET_POWER_LEVEL; --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c -@@ -571,6 +571,7 @@ const struct nla_policy nl80211_policy[N - [NL80211_ATTR_PEER_MEASUREMENTS] = - NLA_POLICY_NESTED(nl80211_pmsr_attr_policy), - [NL80211_ATTR_AIRTIME_WEIGHT] = NLA_POLICY_MIN(NLA_U16, 1), +@@ -574,6 +574,7 @@ const struct nla_policy nl80211_policy[N + [NL80211_ATTR_SAE_PASSWORD] = { .type = NLA_BINARY, + .len = SAE_PASSWORD_MAX_LEN }, + [NL80211_ATTR_TWT_RESPONDER] = { .type = NLA_FLAG }, + [NL80211_ATTR_WIPHY_ANTENNA_GAIN] = { .type = NLA_U32 }, }; /* policy for the key attributes */ -@@ -2866,6 +2867,20 @@ static int nl80211_set_wiphy(struct sk_b +@@ -2869,6 +2870,20 @@ static int nl80211_set_wiphy(struct sk_b if (result) return result; } -- cgit v1.2.3