mac80211: Update to version 5.1-rc2-1
[openwrt/staging/hauke.git] / package / kernel / mac80211 / patches / subsys / 351-mac80211-add-TX_NEEDS_ALIGNED4_SKBS-hw-flag.patch
index 85a788d2b9956dc0037da0673bd8778c33fd84f6..86ea15827765c9aa04d33cd5f19c37c6ba2aad75 100644 (file)
@@ -20,9 +20,9 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 
 --- a/include/net/mac80211.h
 +++ b/include/net/mac80211.h
-@@ -2193,6 +2193,9 @@ struct ieee80211_txq {
-  * @IEEE80211_HW_TX_STATUS_NO_AMPDU_LEN: Driver does not report accurate A-MPDU
-  *    length in tx status information
+@@ -2243,6 +2243,9 @@ struct ieee80211_txq {
+  * @IEEE80211_HW_SUPPORTS_ONLY_HE_MULTI_BSSID: Hardware supports multi BSSID
+  *    only for HE APs. Applies if @IEEE80211_HW_SUPPORTS_MULTI_BSSID is set.
   *
 + * @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 <nbd@nbd.name>
   * @NUM_IEEE80211_HW_FLAGS: number of hardware flags, used for sizing arrays
   */
  enum ieee80211_hw_flags {
-@@ -2242,6 +2245,7 @@ enum ieee80211_hw_flags {
-       IEEE80211_HW_SUPPORTS_VHT_EXT_NSS_BW,
-       IEEE80211_HW_STA_MMPDU_TXQ,
+@@ -2294,6 +2297,7 @@ enum ieee80211_hw_flags {
        IEEE80211_HW_TX_STATUS_NO_AMPDU_LEN,
+       IEEE80211_HW_SUPPORTS_MULTI_BSSID,
+       IEEE80211_HW_SUPPORTS_ONLY_HE_MULTI_BSSID,
 +      IEEE80211_HW_TX_NEEDS_ALIGNED4_SKBS,
  
        /* keep last, obviously */
        NUM_IEEE80211_HW_FLAGS
-@@ -2533,6 +2537,40 @@ ieee80211_get_alt_retry_rate(const struc
+@@ -2587,6 +2591,40 @@ ieee80211_get_alt_retry_rate(const struc
  void ieee80211_free_txskb(struct ieee80211_hw *hw, struct sk_buff *skb);
  
  /**
@@ -113,7 +113,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        if (!(mshdr->flags & MESH_FLAGS_AE)) {
 --- a/net/mac80211/rx.c
 +++ b/net/mac80211/rx.c
-@@ -2643,7 +2643,7 @@ ieee80211_rx_h_mesh_fwding(struct ieee80
+@@ -2660,7 +2660,7 @@ ieee80211_rx_h_mesh_fwding(struct ieee80
        struct ieee80211_local *local = rx->local;
        struct ieee80211_sub_if_data *sdata = rx->sdata;
        struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
@@ -122,7 +122,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        int tailroom = 0;
  
        hdr = (struct ieee80211_hdr *) skb->data;
-@@ -2736,7 +2736,9 @@ ieee80211_rx_h_mesh_fwding(struct ieee80
+@@ -2753,7 +2753,9 @@ ieee80211_rx_h_mesh_fwding(struct ieee80
        if (sdata->crypto_tx_tailroom_needed_cnt)
                tailroom = IEEE80211_ENCRYPT_TAILROOM;
  
@@ -133,7 +133,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                                       sdata->encrypt_headroom,
                                  tailroom, GFP_ATOMIC);
        if (!fwd_skb)
-@@ -2768,6 +2770,12 @@ ieee80211_rx_h_mesh_fwding(struct ieee80
+@@ -2785,6 +2787,12 @@ ieee80211_rx_h_mesh_fwding(struct ieee80
                return RX_DROP_MONITOR;
        }
  
@@ -283,7 +283,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
        if (txq->sta)
                tx.sta = container_of(txq->sta, struct sta_info, sta);
-@@ -4042,7 +4048,7 @@ ieee80211_build_data_template(struct iee
+@@ -4041,7 +4047,7 @@ ieee80211_build_data_template(struct iee
        hdr = (void *)skb->data;
        tx.sta = sta_info_get(sdata, hdr->addr1);
        tx.skb = skb;
@@ -294,10 +294,10 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                rcu_read_unlock();
 --- a/net/mac80211/debugfs.c
 +++ b/net/mac80211/debugfs.c
-@@ -219,6 +219,7 @@ static const char *hw_flag_names[] = {
-       FLAG(SUPPORTS_VHT_EXT_NSS_BW),
-       FLAG(STA_MMPDU_TXQ),
+@@ -221,6 +221,7 @@ static const char *hw_flag_names[] = {
        FLAG(TX_STATUS_NO_AMPDU_LEN),
+       FLAG(SUPPORTS_MULTI_BSSID),
+       FLAG(SUPPORTS_ONLY_HE_MULTI_BSSID),
 +      FLAG(TX_NEEDS_ALIGNED4_SKBS),
  #undef FLAG
  };