]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
mac80211: Update to version 5.15.162-1 15900/head
authorHauke Mehrtens <hauke@hauke-m.de>
Sun, 7 Jul 2024 21:21:05 +0000 (23:21 +0200)
committerHauke Mehrtens <hauke@hauke-m.de>
Wed, 10 Jul 2024 20:41:31 +0000 (22:41 +0200)
This updates mac80211 to version 5.15.162-1. This includes multiple
bugfixes. Some of these bugfixes are fixing security relevant bugs.

Link: https://github.com/openwrt/openwrt/pull/15900
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
21 files changed:
package/kernel/mac80211/Makefile
package/kernel/mac80211/patches/ath/400-ath_move_debug_code.patch
package/kernel/mac80211/patches/ath10k/080-ath10k_thermal_config.patch
package/kernel/mac80211/patches/ath10k/100-ath10k-support-bus-and-device-specific-API-1-BDF-sel.patch
package/kernel/mac80211/patches/ath10k/120-ath10k-fetch-calibration-data-via-nvmem-subsystem.patch
package/kernel/mac80211/patches/ath10k/921-ath10k_init_devices_synchronously.patch
package/kernel/mac80211/patches/ath10k/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patch
package/kernel/mac80211/patches/ath10k/984-ath10k-Try-to-get-mac-address-from-dts.patch
package/kernel/mac80211/patches/ath9k/542-ath9k_debugfs_diag.patch
package/kernel/mac80211/patches/ath9k/551-ath9k_ubnt_uap_plus_hsr.patch
package/kernel/mac80211/patches/brcm/862-brcmfmac-Disable-power-management.patch
package/kernel/mac80211/patches/brcm/998-survey.patch
package/kernel/mac80211/patches/build/001-fix_build.patch
package/kernel/mac80211/patches/subsys/210-ap_scan.patch
package/kernel/mac80211/patches/subsys/313-nl80211-MBSSID-and-EMA-support-in-AP-mode.patch
package/kernel/mac80211/patches/subsys/318-cfg80211-allow-continuous-radar-monitoring-on-offcha.patch
package/kernel/mac80211/patches/subsys/319-mac80211-introduce-set_radar_offchan-callback.patch
package/kernel/mac80211/patches/subsys/320-cfg80211-rename-offchannel_chain-structs-to-backgrou.patch
package/kernel/mac80211/patches/subsys/324-mac80211-MBSSID-beacon-handling-in-AP-mode.patch
package/kernel/mac80211/patches/subsys/325-mac80211-MBSSID-channel-switch.patch
package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch

index 0bcbd8d29491daeba46c7cc2b3d20061dcc26ed3..8f2b98a83a4c0aad1831fe51f889f4e1f735da4d 100644 (file)
@@ -10,10 +10,10 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=mac80211
 
-PKG_VERSION:=5.15.153-1
+PKG_VERSION:=5.15.162-1
 PKG_RELEASE:=1
-PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v5.15.153
-PKG_HASH:=eaa24df968c79385c57707068a209fb1ea43271b573f24885805ae96a58ee3a8
+PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v5.15.162
+PKG_HASH:=00444ab103f5e4ce34d3ba7895289d2b78b84f14a35f9021b60cb1a0270dfec5
 
 PKG_SOURCE:=backports-$(PKG_VERSION).tar.xz
 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/backports-$(PKG_VERSION)
index 5583a6e841a58b656c7d85fb2c8621e1ad82e0b4..b2c8c0161abfa9859fc68b056483202e3510047d 100644 (file)
@@ -14,7 +14,7 @@
  CFLAGS_trace.o := -I$(src)
 --- a/drivers/net/wireless/ath/ath.h
 +++ b/drivers/net/wireless/ath/ath.h
-@@ -319,14 +319,7 @@ void _ath_dbg(struct ath_common *common,
+@@ -321,14 +321,7 @@ void _ath_dbg(struct ath_common *common,
  #endif /* CPTCFG_ATH_DEBUG */
  
  /** Returns string describing opmode, or NULL if unknown mode. */
index d9a3cd534c8b7df25869ee6f5200965a4ae6dc72..29d073099338eb629d285d6404317f1e325f93e5 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/wireless/ath/ath10k/Kconfig
 +++ b/drivers/net/wireless/ath/ath10k/Kconfig
-@@ -86,6 +86,12 @@ config ATH10K_TRACING
+@@ -87,6 +87,12 @@ config ATH10K_TRACING
        help
          Select this to ath10k use tracing infrastructure.
  
index 74d5b374fb294ea99b0acc0ac0c51d395b91e50e..7ef418e506a0a2609c87b8f62e096a0083958e0a 100644 (file)
@@ -34,7 +34,7 @@ Link: https://lore.kernel.org/r/20211009221711.2315352-1-robimarko@gmail.com
 
 --- a/drivers/net/wireless/ath/ath10k/core.c
 +++ b/drivers/net/wireless/ath/ath10k/core.c
-@@ -1199,6 +1199,7 @@ success:
+@@ -1202,6 +1202,7 @@ success:
  static int ath10k_core_fetch_board_data_api_1(struct ath10k *ar, int bd_ie_type)
  {
        const struct firmware *fw;
@@ -42,7 +42,7 @@ Link: https://lore.kernel.org/r/20211009221711.2315352-1-robimarko@gmail.com
  
        if (bd_ie_type == ATH10K_BD_IE_BOARD) {
                if (!ar->hw_params.fw.board) {
-@@ -1206,9 +1207,19 @@ static int ath10k_core_fetch_board_data_
+@@ -1209,9 +1210,19 @@ static int ath10k_core_fetch_board_data_
                        return -EINVAL;
                }
  
index ab42c6e1e0c44dba8c6437d8dce6da6fe0b2c6e6..c7a00b7e4bb9d980f2215e42256d98e1545365a4 100644 (file)
@@ -34,7 +34,7 @@ Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
  #include <asm/byteorder.h>
  
  #include "core.h"
-@@ -952,7 +953,8 @@ static int ath10k_core_get_board_id_from
+@@ -955,7 +956,8 @@ static int ath10k_core_get_board_id_from
        }
  
        if (ar->cal_mode == ATH10K_PRE_CAL_MODE_DT ||
@@ -44,7 +44,7 @@ Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
                bmi_board_id_param = BMI_PARAM_GET_FLASH_BOARD_ID;
        else
                bmi_board_id_param = BMI_PARAM_GET_EEPROM_BOARD_ID;
-@@ -1754,7 +1756,8 @@ static int ath10k_download_and_run_otp(s
+@@ -1757,7 +1759,8 @@ static int ath10k_download_and_run_otp(s
  
        /* As of now pre-cal is valid for 10_4 variants */
        if (ar->cal_mode == ATH10K_PRE_CAL_MODE_DT ||
@@ -54,7 +54,7 @@ Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
                bmi_otp_exe_param = BMI_PARAM_FLASH_SECTION_ALL;
  
        ret = ath10k_bmi_execute(ar, address, bmi_otp_exe_param, &result);
-@@ -1881,6 +1884,39 @@ out_free:
+@@ -1884,6 +1887,39 @@ out_free:
        return ret;
  }
  
@@ -94,7 +94,7 @@ Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
  int ath10k_core_fetch_firmware_api_n(struct ath10k *ar, const char *name,
                                     struct ath10k_fw_file *fw_file)
  {
-@@ -2115,6 +2151,18 @@ static int ath10k_core_pre_cal_download(
+@@ -2118,6 +2154,18 @@ static int ath10k_core_pre_cal_download(
  {
        int ret;
  
@@ -113,7 +113,7 @@ Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
        ret = ath10k_download_cal_file(ar, ar->pre_cal_file);
        if (ret == 0) {
                ar->cal_mode = ATH10K_PRE_CAL_MODE_FILE;
-@@ -2181,6 +2229,18 @@ static int ath10k_download_cal_data(stru
+@@ -2184,6 +2232,18 @@ static int ath10k_download_cal_data(stru
                   "pre cal download procedure failed, try cal file: %d\n",
                   ret);
  
index 5362c2436d87d8de1cbef698895603ff8e73b8bd..e47fb012fa3af45421cd763f320fa859ffdf6767 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Sven Eckelmann <sven@open-mesh.com>
 
 --- a/drivers/net/wireless/ath/ath10k/core.c
 +++ b/drivers/net/wireless/ath/ath10k/core.c
-@@ -3440,6 +3440,16 @@ int ath10k_core_register(struct ath10k *
+@@ -3443,6 +3443,16 @@ int ath10k_core_register(struct ath10k *
  
        queue_work(ar->workqueue, &ar->register_work);
  
index 603b309d979a6fed6203ba82433af0908d9a6ff8..2d1dff431903d1b81c3f0347c91ba029fa856db4 100644 (file)
@@ -85,7 +85,7 @@ v13:
  create mode 100644 drivers/net/wireless/ath/ath10k/leds.h
 --- a/drivers/net/wireless/ath/ath10k/Kconfig
 +++ b/drivers/net/wireless/ath/ath10k/Kconfig
-@@ -71,6 +71,16 @@ config ATH10K_DEBUGFS
+@@ -72,6 +72,16 @@ config ATH10K_DEBUGFS
  
          If unsure, say Y to make it easier to debug problems.
  
@@ -172,7 +172,7 @@ v13:
                .patch_load_addr = QCA9888_HW_2_0_PATCH_LOAD_ADDR,
                .uart_pin = 7,
                .cc_wraparound_type = ATH10K_HW_CC_WRAP_SHIFTED_EACH,
-@@ -3155,6 +3161,10 @@ int ath10k_core_start(struct ath10k *ar,
+@@ -3158,6 +3164,10 @@ int ath10k_core_start(struct ath10k *ar,
                goto err_hif_stop;
        }
  
@@ -183,7 +183,7 @@ v13:
        return 0;
  
  err_hif_stop:
-@@ -3413,9 +3423,18 @@ static void ath10k_core_register_work(st
+@@ -3416,9 +3426,18 @@ static void ath10k_core_register_work(st
                goto err_spectral_destroy;
        }
  
@@ -202,7 +202,7 @@ v13:
  err_spectral_destroy:
        ath10k_spectral_destroy(ar);
  err_debug_destroy:
-@@ -3461,6 +3480,8 @@ void ath10k_core_unregister(struct ath10
+@@ -3464,6 +3483,8 @@ void ath10k_core_unregister(struct ath10
        if (!test_bit(ATH10K_FLAG_CORE_REGISTERED, &ar->dev_flags))
                return;
  
@@ -237,7 +237,7 @@ v13:
                u32 fw_crash_counter;
 --- a/drivers/net/wireless/ath/ath10k/hw.h
 +++ b/drivers/net/wireless/ath/ath10k/hw.h
-@@ -517,6 +517,7 @@ struct ath10k_hw_params {
+@@ -518,6 +518,7 @@ struct ath10k_hw_params {
        const char *name;
        u32 patch_load_addr;
        int uart_pin;
@@ -467,7 +467,7 @@ v13:
  static const struct wmi_peer_flags_map wmi_tlv_peer_flags_map = {
 --- a/drivers/net/wireless/ath/ath10k/wmi.c
 +++ b/drivers/net/wireless/ath/ath10k/wmi.c
-@@ -7472,6 +7472,49 @@ ath10k_wmi_op_gen_peer_set_param(struct
+@@ -7492,6 +7492,49 @@ ath10k_wmi_op_gen_peer_set_param(struct
        return skb;
  }
  
@@ -517,7 +517,7 @@ v13:
  static struct sk_buff *
  ath10k_wmi_op_gen_set_psmode(struct ath10k *ar, u32 vdev_id,
                             enum wmi_sta_ps_mode psmode)
-@@ -9160,6 +9203,9 @@ static const struct wmi_ops wmi_ops = {
+@@ -9180,6 +9223,9 @@ static const struct wmi_ops wmi_ops = {
        .fw_stats_fill = ath10k_wmi_main_op_fw_stats_fill,
        .get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
        .gen_echo = ath10k_wmi_op_gen_echo,
@@ -527,7 +527,7 @@ v13:
        /* .gen_bcn_tmpl not implemented */
        /* .gen_prb_tmpl not implemented */
        /* .gen_p2p_go_bcn_ie not implemented */
-@@ -9230,6 +9276,8 @@ static const struct wmi_ops wmi_10_1_ops
+@@ -9250,6 +9296,8 @@ static const struct wmi_ops wmi_10_1_ops
        .fw_stats_fill = ath10k_wmi_10x_op_fw_stats_fill,
        .get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
        .gen_echo = ath10k_wmi_op_gen_echo,
@@ -536,7 +536,7 @@ v13:
        /* .gen_bcn_tmpl not implemented */
        /* .gen_prb_tmpl not implemented */
        /* .gen_p2p_go_bcn_ie not implemented */
-@@ -9302,6 +9350,8 @@ static const struct wmi_ops wmi_10_2_ops
+@@ -9322,6 +9370,8 @@ static const struct wmi_ops wmi_10_2_ops
        .gen_delba_send = ath10k_wmi_op_gen_delba_send,
        .fw_stats_fill = ath10k_wmi_10x_op_fw_stats_fill,
        .get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
@@ -545,7 +545,7 @@ v13:
        /* .gen_pdev_enable_adaptive_cca not implemented */
  };
  
-@@ -9373,6 +9423,8 @@ static const struct wmi_ops wmi_10_2_4_o
+@@ -9393,6 +9443,8 @@ static const struct wmi_ops wmi_10_2_4_o
                ath10k_wmi_op_gen_pdev_enable_adaptive_cca,
        .get_vdev_subtype = ath10k_wmi_10_2_4_op_get_vdev_subtype,
        .gen_bb_timing = ath10k_wmi_10_2_4_op_gen_bb_timing,
@@ -554,7 +554,7 @@ v13:
        /* .gen_bcn_tmpl not implemented */
        /* .gen_prb_tmpl not implemented */
        /* .gen_p2p_go_bcn_ie not implemented */
-@@ -9454,6 +9506,8 @@ static const struct wmi_ops wmi_10_4_ops
+@@ -9474,6 +9526,8 @@ static const struct wmi_ops wmi_10_4_ops
        .gen_pdev_bss_chan_info_req = ath10k_wmi_10_2_op_gen_pdev_bss_chan_info,
        .gen_echo = ath10k_wmi_op_gen_echo,
        .gen_pdev_get_tpc_config = ath10k_wmi_10_2_4_op_gen_pdev_get_tpc_config,
index d94a8a85969cfda4b6e477c039ad7745c4675caa..80da07de8a4c8c0089898924961690364fb60c9c 100644 (file)
@@ -26,7 +26,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
  #include <linux/property.h>
  #include <linux/dmi.h>
  #include <linux/ctype.h>
-@@ -3331,6 +3332,8 @@ static int ath10k_core_probe_fw(struct a
+@@ -3334,6 +3335,8 @@ static int ath10k_core_probe_fw(struct a
  
        device_get_mac_address(ar->dev, ar->mac_addr, sizeof(ar->mac_addr));
  
index 5b64f560fdc531b6feb8c355215cc86de91ab92b..a954be169b3c6d3c37fb089c4767cd77e638f4c6 100644 (file)
                REG_SET_BIT(ah, AR_BTCOEX_WL_LNADIV, AR_BTCOEX_WL_LNADIV_FORCE_ON);
 --- a/drivers/net/wireless/ath/ath9k/main.c
 +++ b/drivers/net/wireless/ath/ath9k/main.c
-@@ -538,6 +538,11 @@ irqreturn_t ath_isr(int irq, void *dev)
+@@ -537,6 +537,11 @@ irqreturn_t ath_isr(int irq, void *dev)
                return IRQ_HANDLED;
        }
  
index 6b5c0dc514939d41979c8f5bbccaf2413101903f..203064c76620b7d65acc1a54d4f952dc9e5da1bb 100644 (file)
  
  static void ath9k_flush(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
                        u32 queues, bool drop);
-@@ -659,6 +660,7 @@ void ath_reset_work(struct work_struct *
+@@ -658,6 +659,7 @@ void ath_reset_work(struct work_struct *
  static int ath9k_start(struct ieee80211_hw *hw)
  {
        struct ath_softc *sc = hw->priv;
        struct ath_hw *ah = sc->sc_ah;
        struct ath_common *common = ath9k_hw_common(ah);
        struct ieee80211_channel *curchan = sc->cur_chan->chandef.chan;
-@@ -737,6 +739,11 @@ static int ath9k_start(struct ieee80211_
+@@ -736,6 +738,11 @@ static int ath9k_start(struct ieee80211_
                                          AR_GPIO_OUTPUT_MUX_AS_OUTPUT);
        }
  
index cce62d971da2f14ee5ccace9a95775fa20375226..edab7ed2cde6ac73821ba0d60f0deda671f2d260 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
 +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
-@@ -2978,6 +2978,10 @@ brcmf_cfg80211_set_power_mgmt(struct wip
+@@ -2977,6 +2977,10 @@ brcmf_cfg80211_set_power_mgmt(struct wip
         * preference in cfg struct to apply this to
         * FW later while initializing the dongle
         */
index d85dac2a512f05fbc5de92e8628a671c85ec7037..82e1b559d01e60065ec930196419fd597880bc47 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
 +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
-@@ -2925,6 +2925,63 @@ done:
+@@ -2924,6 +2924,63 @@ done:
  }
  
  static int
@@ -64,7 +64,7 @@
  brcmf_cfg80211_dump_station(struct wiphy *wiphy, struct net_device *ndev,
                            int idx, u8 *mac, struct station_info *sinfo)
  {
-@@ -3025,6 +3082,7 @@ static s32 brcmf_inform_single_bss(struc
+@@ -3024,6 +3081,7 @@ static s32 brcmf_inform_single_bss(struc
        struct brcmu_chan ch;
        u16 channel;
        u32 freq;
@@ -72,7 +72,7 @@
        u16 notify_capability;
        u16 notify_interval;
        u8 *notify_ie;
-@@ -3049,6 +3107,17 @@ static s32 brcmf_inform_single_bss(struc
+@@ -3048,6 +3106,17 @@ static s32 brcmf_inform_single_bss(struc
                band = NL80211_BAND_5GHZ;
  
        freq = ieee80211_channel_to_frequency(channel, band);
@@ -90,7 +90,7 @@
        bss_data.chan = ieee80211_get_channel(wiphy, freq);
        bss_data.scan_width = NL80211_BSS_CHAN_WIDTH_20;
        bss_data.boottime_ns = ktime_to_ns(ktime_get_boottime());
-@@ -5577,6 +5646,7 @@ static struct cfg80211_ops brcmf_cfg8021
+@@ -5576,6 +5645,7 @@ static struct cfg80211_ops brcmf_cfg8021
        .leave_ibss = brcmf_cfg80211_leave_ibss,
        .get_station = brcmf_cfg80211_get_station,
        .dump_station = brcmf_cfg80211_dump_station,
index 8f63d36e2e860e2a2e89bf07e89e0ec47fe23728..aaea4a8f267a717afcb932434451a75b5614dec3 100644 (file)
@@ -27,7 +27,7 @@
        @set -e ; test -f local-symbols || (                                            \
        echo "/--------------"                                                          ;\
        echo "| You shouldn't run make in the backports tree, but only in"              ;\
-@@ -60,58 +62,62 @@ mrproper:
+@@ -60,57 +62,61 @@ mrproper:
        echo "| (that isn't currently running.)"                                        ;\
        echo "\\--"                                                                     ;\
        false)
 -                      done                                                            \
 -              ) > Kconfig.kernel                                                      ;\
 -              kver=$$($(MAKE) --no-print-directory -C $(KLIB_BUILD) M=$(BACKPORT_DIR) \
--                      kernelversion | sed 's/^\(\([3-5]\|2\.6\)\.[0-9]\+\).*/\1/;t;d');\
+-                      kernelversion | sed 's/^\(\([3-6]\|2\.6\)\.[0-9]\+\).*/\1/;t;d');\
 -              test "$$kver" != "" || echo "Kernel version parse failed!"              ;\
 -              test "$$kver" != ""                                                     ;\
--              kvers="$$(seq 14 39 | sed 's/^/2.6./')"                                 ;\
--              kvers="$$kvers $$(seq 0 19 | sed 's/^/3./')"                            ;\
 -              kvers="$$kvers $$(seq 0 20 | sed 's/^/4./')"                            ;\
--              kvers="$$kvers $$(seq 0 99 | sed 's/^/5./')"                            ;\
+-              kvers="$$kvers $$(seq 0 19 | sed 's/^/5./')"                            ;\
+-              kvers="$$kvers $$(seq 0 20 | sed 's/^/6./')"                            ;\
 -              print=0                                                                 ;\
 -              for v in $$kvers ; do                                                   \
 -                      if [ "$$print" = "1" ] ; then                                   \
 +
 +Kconfig.versions: Kconfig.kernel
 +      @kver=$$($(MAKE) --no-print-directory -C $(KLIB_BUILD) M=$(BACKPORT_DIR) \
-+              kernelversion | sed 's/^\(\([3-5]\|2\.6\)\.[0-9]\+\).*/\1/;t;d');\
++              kernelversion | sed 's/^\(\([3-6]\|2\.6\)\.[0-9]\+\).*/\1/;t;d');\
 +      test "$$kver" != "" || echo "Kernel version parse failed!"              ;\
 +      test "$$kver" != ""                                                     ;\
-+      kvers="$$(seq 14 39 | sed 's/^/2.6./')"                                 ;\
-+      kvers="$$kvers $$(seq 0 19 | sed 's/^/3./')"                            ;\
 +      kvers="$$kvers $$(seq 0 20 | sed 's/^/4./')"                            ;\
-+      kvers="$$kvers $$(seq 0 99 | sed 's/^/5./')"                            ;\
++      kvers="$$kvers $$(seq 0 19 | sed 's/^/5./')"                            ;\
++      kvers="$$kvers $$(seq 0 20 | sed 's/^/6./')"                            ;\
 +      print=0                                                                 ;\
 +      for v in $$kvers ; do                                                   \
 +              if [ "$$print" = "1" ] ; then                                   \
index 0c06829ce486b3621c80c9ffd73f75f264f84b4d..c6e3d9b3ad86fe1e96376b831e33f51d4db155fc 100644 (file)
@@ -1,6 +1,6 @@
 --- a/net/mac80211/cfg.c
 +++ b/net/mac80211/cfg.c
-@@ -2497,7 +2497,7 @@ static int ieee80211_scan(struct wiphy *
+@@ -2496,7 +2496,7 @@ static int ieee80211_scan(struct wiphy *
                 * the  frames sent while scanning on other channel will be
                 * lost)
                 */
index 9302483c19a688311005cb35721ab18f2155d10e..a95174c3411c4cebf5533c8a5b10b5a39e858e90 100644 (file)
@@ -482,7 +482,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
        kfree(csa_attrs);
        return err;
  }
-@@ -14963,6 +15131,8 @@ static int nl80211_color_change(struct s
+@@ -14965,6 +15133,8 @@ static int nl80211_color_change(struct s
        wdev_unlock(wdev);
  
  out:
index 988ebf09d5094d3c2ce11bbeb7728944e901781a..402052ac52f41a61db4cd6819459095fd8b7b87d 100644 (file)
@@ -208,7 +208,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
        return err;
  }
  
-@@ -15965,7 +15986,8 @@ static const struct genl_small_ops nl802
+@@ -15967,7 +15988,8 @@ static const struct genl_small_ops nl802
                .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP,
                .doit = nl80211_start_radar_detection,
                .flags = GENL_UNS_ADMIN_PERM,
index e9e3d37037996cd67eebe1e6bada3a726dc29103..eb80afbccbc2a7b8679e69e9ee9d1ee872751cce 100644 (file)
@@ -40,7 +40,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
                                     struct ieee80211_vif *vif,
 --- a/net/mac80211/cfg.c
 +++ b/net/mac80211/cfg.c
-@@ -4345,6 +4345,18 @@ out:
+@@ -4344,6 +4344,18 @@ out:
        return err;
  }
  
@@ -59,7 +59,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
  const struct cfg80211_ops mac80211_config_ops = {
        .add_virtual_intf = ieee80211_add_iface,
        .del_virtual_intf = ieee80211_del_iface,
-@@ -4449,4 +4461,5 @@ const struct cfg80211_ops mac80211_confi
+@@ -4448,4 +4460,5 @@ const struct cfg80211_ops mac80211_confi
        .reset_tid_config = ieee80211_reset_tid_config,
        .set_sar_specs = ieee80211_set_sar_specs,
        .color_change = ieee80211_color_change,
index 9358844500bd6f6e01ec03fcb83164859d255c1f..c8a112c932b11becf18a02502789f9aacd80c4b7 100644 (file)
@@ -156,7 +156,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
        NUM_NL80211_EXT_FEATURES,
 --- a/net/mac80211/cfg.c
 +++ b/net/mac80211/cfg.c
-@@ -4346,15 +4346,15 @@ out:
+@@ -4345,15 +4345,15 @@ out:
  }
  
  static int
@@ -176,7 +176,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
  }
  
  const struct cfg80211_ops mac80211_config_ops = {
-@@ -4461,5 +4461,5 @@ const struct cfg80211_ops mac80211_confi
+@@ -4460,5 +4460,5 @@ const struct cfg80211_ops mac80211_confi
        .reset_tid_config = ieee80211_reset_tid_config,
        .set_sar_specs = ieee80211_set_sar_specs,
        .color_change = ieee80211_color_change,
index 3e89207101c8f7546f4d56cb18e17c23ff03ca6b..317bc91fae51fe050cc8ec4267df8610f5a1ef98 100644 (file)
@@ -120,7 +120,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
  
        /* turn off carrier for this interface and dependent VLANs */
        list_for_each_entry(vlan, &sdata->u.ap.vlans, u.vlan.list)
-@@ -3130,12 +3170,24 @@ cfg80211_beacon_dup(struct cfg80211_beac
+@@ -3129,12 +3169,24 @@ cfg80211_beacon_dup(struct cfg80211_beac
  
        len = beacon->head_len + beacon->tail_len + beacon->beacon_ies_len +
              beacon->proberesp_ies_len + beacon->assocresp_ies_len +
@@ -146,7 +146,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
        pos = (u8 *)(new_beacon + 1);
        if (beacon->head_len) {
                new_beacon->head_len = beacon->head_len;
-@@ -3173,6 +3225,10 @@ cfg80211_beacon_dup(struct cfg80211_beac
+@@ -3172,6 +3224,10 @@ cfg80211_beacon_dup(struct cfg80211_beac
                memcpy(pos, beacon->probe_resp, beacon->probe_resp_len);
                pos += beacon->probe_resp_len;
        }
@@ -157,7 +157,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
  
        /* might copy -1, meaning no changes requested */
        new_beacon->ftm_responder = beacon->ftm_responder;
-@@ -3210,8 +3266,11 @@ static int ieee80211_set_after_csa_beaco
+@@ -3209,8 +3265,11 @@ static int ieee80211_set_after_csa_beaco
        case NL80211_IFTYPE_AP:
                err = ieee80211_assign_beacon(sdata, sdata->u.ap.next_beacon,
                                              NULL, NULL);
@@ -171,7 +171,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
  
                if (err < 0)
                        return err;
-@@ -3366,8 +3425,12 @@ static int ieee80211_set_csa_beacon(stru
+@@ -3365,8 +3424,12 @@ static int ieee80211_set_csa_beacon(stru
                if ((params->n_counter_offsets_beacon >
                     IEEE80211_MAX_CNTDWN_COUNTERS_NUM) ||
                    (params->n_counter_offsets_presp >
@@ -185,7 +185,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
  
                csa.counter_offsets_beacon = params->counter_offsets_beacon;
                csa.counter_offsets_presp = params->counter_offsets_presp;
-@@ -3377,7 +3440,9 @@ static int ieee80211_set_csa_beacon(stru
+@@ -3376,7 +3439,9 @@ static int ieee80211_set_csa_beacon(stru
  
                err = ieee80211_assign_beacon(sdata, &params->beacon_csa, &csa, NULL);
                if (err < 0) {
@@ -195,7 +195,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
                        return err;
                }
                *changed |= err;
-@@ -3464,8 +3529,11 @@ static int ieee80211_set_csa_beacon(stru
+@@ -3463,8 +3528,11 @@ static int ieee80211_set_csa_beacon(stru
  static void ieee80211_color_change_abort(struct ieee80211_sub_if_data  *sdata)
  {
        sdata->vif.color_change_active = false;
@@ -209,7 +209,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
  
        cfg80211_color_change_aborted_notify(sdata->dev);
  }
-@@ -4203,8 +4271,11 @@ ieee80211_set_after_color_change_beacon(
+@@ -4202,8 +4270,11 @@ ieee80211_set_after_color_change_beacon(
  
                ret = ieee80211_assign_beacon(sdata, sdata->u.ap.next_beacon,
                                              NULL, NULL);
@@ -223,7 +223,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
  
                if (ret < 0)
                        return ret;
-@@ -4247,7 +4318,11 @@ ieee80211_set_color_change_beacon(struct
+@@ -4246,7 +4317,11 @@ ieee80211_set_color_change_beacon(struct
                err = ieee80211_assign_beacon(sdata, &params->beacon_color_change,
                                              NULL, &color_change);
                if (err < 0) {
index 1904f3d4e6dc019988a00d6bcf01bdac28181948..d99625ab96f7123ae64990b971dfc0a8a0f74c40 100644 (file)
@@ -16,7 +16,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
 
 --- a/net/mac80211/cfg.c
 +++ b/net/mac80211/cfg.c
-@@ -3251,9 +3251,31 @@ cfg80211_beacon_dup(struct cfg80211_beac
+@@ -3250,9 +3250,31 @@ cfg80211_beacon_dup(struct cfg80211_beac
  void ieee80211_csa_finish(struct ieee80211_vif *vif)
  {
        struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
index 0b28fb973dfef8b6fd39accbca48b2216697300b..cf057e57c0751f7dc08acd957f7c4d4b9048cf3a 100644 (file)
@@ -57,7 +57,7 @@
        __NL80211_ATTR_AFTER_LAST,
 --- a/net/mac80211/cfg.c
 +++ b/net/mac80211/cfg.c
-@@ -2816,6 +2816,19 @@ static int ieee80211_get_tx_power(struct
+@@ -2815,6 +2815,19 @@ static int ieee80211_get_tx_power(struct
        return 0;
  }
  
@@ -77,7 +77,7 @@
  static void ieee80211_rfkill_poll(struct wiphy *wiphy)
  {
        struct ieee80211_local *local = wiphy_priv(wiphy);
-@@ -4517,6 +4530,7 @@ const struct cfg80211_ops mac80211_confi
+@@ -4516,6 +4529,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,