diff options
Diffstat (limited to 'package/kernel/mac80211/patches/subsys/318-mac80211-rework-tx-encapsulation-offload-API.patch')
-rw-r--r-- | package/kernel/mac80211/patches/subsys/318-mac80211-rework-tx-encapsulation-offload-API.patch | 52 |
1 files changed, 26 insertions, 26 deletions
diff --git a/package/kernel/mac80211/patches/subsys/318-mac80211-rework-tx-encapsulation-offload-API.patch b/package/kernel/mac80211/patches/subsys/318-mac80211-rework-tx-encapsulation-offload-API.patch index 7593c41da0..811c66499b 100644 --- a/package/kernel/mac80211/patches/subsys/318-mac80211-rework-tx-encapsulation-offload-API.patch +++ b/package/kernel/mac80211/patches/subsys/318-mac80211-rework-tx-encapsulation-offload-API.patch @@ -26,7 +26,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> --- a/drivers/net/wireless/ath/ath11k/mac.c +++ b/drivers/net/wireless/ath/ath11k/mac.c -@@ -4150,6 +4150,35 @@ static int ath11k_set_he_mu_sounding_mod +@@ -4304,6 +4304,35 @@ static int ath11k_set_he_mu_sounding_mod return ret; } @@ -62,7 +62,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> static int ath11k_mac_op_add_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif) { -@@ -4159,7 +4188,6 @@ static int ath11k_mac_op_add_interface(s +@@ -4313,7 +4342,6 @@ static int ath11k_mac_op_add_interface(s struct vdev_create_params vdev_param = {0}; struct peer_create_params peer_param; u32 param_id, param_value; @@ -70,7 +70,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> u16 nss; int i; int ret; -@@ -4253,30 +4281,7 @@ static int ath11k_mac_op_add_interface(s +@@ -4407,30 +4435,7 @@ static int ath11k_mac_op_add_interface(s list_add(&arvif->list, &ar->arvifs); spin_unlock_bh(&ar->data_lock); @@ -102,7 +102,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> nss = get_num_chains(ar->cfg_tx_chainmask) ? : 1; ret = ath11k_wmi_vdev_set_param_cmd(ar, arvif->vdev_id, -@@ -5599,6 +5604,7 @@ static const struct ieee80211_ops ath11k +@@ -5753,6 +5758,7 @@ static const struct ieee80211_ops ath11k .reconfig_complete = ath11k_mac_op_reconfig_complete, .add_interface = ath11k_mac_op_add_interface, .remove_interface = ath11k_mac_op_remove_interface, @@ -110,7 +110,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> .config = ath11k_mac_op_config, .bss_info_changed = ath11k_mac_op_bss_info_changed, .configure_filter = ath11k_mac_op_configure_filter, -@@ -5852,6 +5858,7 @@ static int __ath11k_mac_register(struct +@@ -6034,6 +6040,7 @@ static int __ath11k_mac_register(struct ieee80211_hw_set(ar->hw, QUEUE_CONTROL); ieee80211_hw_set(ar->hw, SUPPORTS_TX_FRAG); ieee80211_hw_set(ar->hw, REPORTS_LOW_ACK); @@ -120,7 +120,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> ieee80211_hw_set(ar->hw, TX_AMPDU_SETUP_IN_HW); --- a/include/net/mac80211.h +++ b/include/net/mac80211.h -@@ -1603,6 +1603,21 @@ enum ieee80211_vif_flags { +@@ -1606,6 +1606,21 @@ enum ieee80211_vif_flags { IEEE80211_VIF_GET_NOA_UPDATE = BIT(3), }; @@ -142,7 +142,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> /** * struct ieee80211_vif - per-interface data * -@@ -1623,6 +1638,11 @@ enum ieee80211_vif_flags { +@@ -1626,6 +1641,11 @@ enum ieee80211_vif_flags { * these need to be set (or cleared) when the interface is added * or, if supported by the driver, the interface type is changed * at runtime, mac80211 will never touch this field @@ -154,7 +154,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> * @hw_queue: hardware queue for each AC * @cab_queue: content-after-beacon (DTIM beacon really) queue, AP mode only * @chanctx_conf: The channel context this interface is assigned to, or %NULL -@@ -1659,6 +1679,7 @@ struct ieee80211_vif { +@@ -1662,6 +1682,7 @@ struct ieee80211_vif { struct ieee80211_chanctx_conf __rcu *chanctx_conf; u32 driver_flags; @@ -162,7 +162,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> #ifdef CPTCFG_MAC80211_DEBUGFS struct dentry *debugfs_dir; -@@ -2325,6 +2346,9 @@ struct ieee80211_txq { +@@ -2328,6 +2349,9 @@ struct ieee80211_txq { * aggregating MPDUs with the same keyid, allowing mac80211 to keep Tx * A-MPDU sessions active while rekeying with Extended Key ID. * @@ -172,7 +172,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> * @NUM_IEEE80211_HW_FLAGS: number of hardware flags, used for sizing arrays */ enum ieee80211_hw_flags { -@@ -2377,6 +2401,7 @@ enum ieee80211_hw_flags { +@@ -2380,6 +2404,7 @@ enum ieee80211_hw_flags { IEEE80211_HW_SUPPORTS_MULTI_BSSID, IEEE80211_HW_SUPPORTS_ONLY_HE_MULTI_BSSID, IEEE80211_HW_AMPDU_KEYBORDER_SUPPORT, @@ -180,7 +180,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> /* keep last, obviously */ NUM_IEEE80211_HW_FLAGS -@@ -3811,6 +3836,8 @@ enum ieee80211_reconfig_type { +@@ -3814,6 +3839,8 @@ enum ieee80211_reconfig_type { * @set_tid_config: Apply TID specific configurations. This callback may sleep. * @reset_tid_config: Reset TID specific configuration for the peer. * This callback may sleep. @@ -189,7 +189,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> */ struct ieee80211_ops { void (*tx)(struct ieee80211_hw *hw, -@@ -4122,6 +4149,8 @@ struct ieee80211_ops { +@@ -4125,6 +4152,8 @@ struct ieee80211_ops { int (*reset_tid_config)(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta, u8 tids); @@ -210,7 +210,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> --- a/net/mac80211/driver-ops.h +++ b/net/mac80211/driver-ops.h -@@ -1385,4 +1385,19 @@ static inline int drv_reset_tid_config(s +@@ -1384,4 +1384,19 @@ static inline int drv_reset_tid_config(s return ret; } @@ -232,7 +232,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> #endif /* __MAC80211_DRIVER_OPS */ --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h -@@ -990,8 +990,6 @@ struct ieee80211_sub_if_data { +@@ -993,8 +993,6 @@ struct ieee80211_sub_if_data { } debugfs; #endif @@ -241,7 +241,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> /* must be last, dynamically sized area in this! */ struct ieee80211_vif vif; }; -@@ -1769,6 +1767,7 @@ void ieee80211_del_virtual_monitor(struc +@@ -1772,6 +1770,7 @@ void ieee80211_del_virtual_monitor(struc bool __ieee80211_recalc_txpower(struct ieee80211_sub_if_data *sdata); void ieee80211_recalc_txpower(struct ieee80211_sub_if_data *sdata, bool update_bss); @@ -375,7 +375,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> res = ieee80211_check_queues(sdata, ieee80211_vif_type_p2p(&sdata->vif)); if (res) -@@ -1286,61 +1371,6 @@ static const struct net_device_ops ieee8 +@@ -1293,61 +1378,6 @@ static const struct net_device_ops ieee8 }; @@ -437,7 +437,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> static void ieee80211_if_free(struct net_device *dev) { free_percpu(netdev_tstats(dev)); -@@ -1371,6 +1401,32 @@ static void ieee80211_if_setup_no_queue( +@@ -1378,6 +1408,32 @@ static void ieee80211_if_setup_no_queue( #endif } @@ -470,7 +470,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> static void ieee80211_iface_work(struct work_struct *work) { struct ieee80211_sub_if_data *sdata = -@@ -1553,7 +1609,6 @@ static void ieee80211_setup_sdata(struct +@@ -1560,7 +1616,6 @@ static void ieee80211_setup_sdata(struct sdata->vif.bss_conf.txpower = INT_MIN; /* unset */ sdata->noack_map = 0; @@ -478,7 +478,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> /* only monitor/p2p-device differ */ if (sdata->dev) { -@@ -1688,6 +1743,7 @@ static int ieee80211_runtime_change_ifty +@@ -1695,6 +1750,7 @@ static int ieee80211_runtime_change_ifty ieee80211_teardown_sdata(sdata); @@ -486,7 +486,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> ret = drv_change_interface(local, sdata, internal_type, p2p); if (ret) type = ieee80211_vif_type_p2p(&sdata->vif); -@@ -1700,6 +1756,7 @@ static int ieee80211_runtime_change_ifty +@@ -1707,6 +1763,7 @@ static int ieee80211_runtime_change_ifty ieee80211_check_queues(sdata, type); ieee80211_setup_sdata(sdata, type); @@ -520,14 +520,14 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> - */ - if (sdata->hw_80211_encap) - return -EINVAL; -- /* Fall through */ +- fallthrough; - case WLAN_CIPHER_SUITE_AES_CMAC: case WLAN_CIPHER_SUITE_BIP_CMAC_256: case WLAN_CIPHER_SUITE_BIP_GMAC_128: --- a/net/mac80211/trace.h +++ b/net/mac80211/trace.h -@@ -2733,6 +2733,12 @@ TRACE_EVENT(drv_get_ftm_responder_stats, +@@ -2734,6 +2734,12 @@ TRACE_EVENT(drv_get_ftm_responder_stats, ) ); @@ -542,7 +542,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> #undef TRACE_INCLUDE_PATH --- a/net/mac80211/tx.c +++ b/net/mac80211/tx.c -@@ -4181,11 +4181,10 @@ static bool ieee80211_tx_8023(struct iee +@@ -4178,11 +4178,10 @@ static bool ieee80211_tx_8023(struct iee static void ieee80211_8023_xmit(struct ieee80211_sub_if_data *sdata, struct net_device *dev, struct sta_info *sta, @@ -555,7 +555,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> struct tid_ampdu_tx *tid_tx; u8 tid; -@@ -4234,7 +4233,6 @@ static void ieee80211_8023_xmit(struct i +@@ -4231,7 +4230,6 @@ static void ieee80211_8023_xmit(struct i info->control.flags |= IEEE80211_TX_CTRL_HW_80211_ENCAP; info->control.vif = &sdata->vif; @@ -563,7 +563,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> if (key) info->control.hw_key = &key->conf; -@@ -4251,12 +4249,9 @@ netdev_tx_t ieee80211_subif_start_xmit_8 +@@ -4248,12 +4246,9 @@ netdev_tx_t ieee80211_subif_start_xmit_8 { struct ieee80211_sub_if_data *sdata = IEEE80211_DEV_TO_SUB_IF(dev); struct ethhdr *ehdr = (struct ethhdr *)skb->data; @@ -578,7 +578,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> if (unlikely(skb->len < ETH_HLEN)) { kfree_skb(skb); -@@ -4265,15 +4260,26 @@ netdev_tx_t ieee80211_subif_start_xmit_8 +@@ -4262,15 +4257,26 @@ netdev_tx_t ieee80211_subif_start_xmit_8 rcu_read_lock(); |