Commit 081b5756 authored by David S. Miller's avatar David S. Miller
Browse files

Merge tag 'wireless-2025-03-12' of...

Merge tag 'wireless-2025-03-12' of https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless



Johannes berg says:

====================
Few more fixes:
 - cfg80211/mac80211
   - stop possible runaway wiphy worker
   - EHT should not use reserved MPDU size bits
   - don't run worker for stopped interfaces
   - fix SA Query processing with MLO
   - fix lookup of assoc link BSS entries
   - correct station flush on unauthorize
 - iwlwifi:
   - TSO fixes
   - fix non-MSI-X platforms
   - stop possible runaway restart worker
 - rejigger maintainers so I'm not CC'ed on
   everything
====================

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents d2b9d97e 8ae227f8
Loading
Loading
Loading
Loading
+28 −9
Original line number Diff line number Diff line
@@ -124,6 +124,7 @@ F: include/net/ieee80211_radiotap.h
F:	include/net/iw_handler.h
F:	include/net/wext.h
F:	include/uapi/linux/nl80211.h
N:	include/uapi/linux/nl80211-.*
F:	include/uapi/linux/wireless.h
F:	net/wireless/
@@ -514,7 +515,7 @@ F: drivers/hwmon/adm1029.c
ADM8211 WIRELESS DRIVER
L:	linux-wireless@vger.kernel.org
S:	Orphan
F:	drivers/net/wireless/admtek/adm8211.*
F:	drivers/net/wireless/admtek/
ADP1050 HARDWARE MONITOR DRIVER
M:	Radu Sabau <radu.sabau@analog.com>
@@ -6207,7 +6208,7 @@ F: Documentation/process/cve.rst
CW1200 WLAN driver
S:	Orphan
F:	drivers/net/wireless/st/cw1200/
F:	drivers/net/wireless/st/
F:	include/linux/platform_data/net-cw1200.h
CX18 VIDEO4LINUX DRIVER
@@ -13997,6 +13998,7 @@ MARVELL LIBERTAS WIRELESS DRIVER
L:	libertas-dev@lists.infradead.org
S:	Orphan
F:	drivers/net/wireless/marvell/libertas/
F:	drivers/net/wireless/marvell/libertas_tf/
MARVELL MACCHIATOBIN SUPPORT
M:	Russell King <linux@armlinux.org.uk>
@@ -15666,7 +15668,7 @@ M: Ajay Singh <ajay.kathat@microchip.com>
M:	Claudiu Beznea <claudiu.beznea@tuxon.dev>
L:	linux-wireless@vger.kernel.org
S:	Supported
F:	drivers/net/wireless/microchip/wilc1000/
F:	drivers/net/wireless/microchip/
MICROSEMI MIPS SOCS
M:	Alexandre Belloni <alexandre.belloni@bootlin.com>
@@ -16452,6 +16454,23 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless.git
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next.git
F:	Documentation/devicetree/bindings/net/wireless/
F:	drivers/net/wireless/
X:	drivers/net/wireless/ath/
X:	drivers/net/wireless/broadcom/
X:	drivers/net/wireless/intel/
X:	drivers/net/wireless/intersil/
X:	drivers/net/wireless/marvell/
X:	drivers/net/wireless/mediatek/mt76/
X:	drivers/net/wireless/mediatek/mt7601u/
X:	drivers/net/wireless/microchip/
X:	drivers/net/wireless/purelifi/
X:	drivers/net/wireless/quantenna/
X:	drivers/net/wireless/ralink/
X:	drivers/net/wireless/realtek/
X:	drivers/net/wireless/rsi/
X:	drivers/net/wireless/silabs/
X:	drivers/net/wireless/st/
X:	drivers/net/wireless/ti/
X:	drivers/net/wireless/zydas/
NETWORKING [DSA]
M:	Andrew Lunn <andrew@lunn.ch>
@@ -17836,7 +17855,7 @@ M: Christian Lamparter <chunkeey@googlemail.com>
L:	linux-wireless@vger.kernel.org
S:	Maintained
W:	https://wireless.wiki.kernel.org/en/users/Drivers/p54
F:	drivers/net/wireless/intersil/p54/
F:	drivers/net/wireless/intersil/
PACKET SOCKETS
M:	Willem de Bruijn <willemdebruijn.kernel@gmail.com>
@@ -19113,7 +19132,7 @@ PURELIFI PLFXLC DRIVER
M:	Srinivasan Raju <srini.raju@purelifi.com>
L:	linux-wireless@vger.kernel.org
S:	Supported
F:	drivers/net/wireless/purelifi/plfxlc/
F:	drivers/net/wireless/purelifi/
PVRUSB2 VIDEO4LINUX DRIVER
M:	Mike Isely <isely@pobox.com>
@@ -19664,7 +19683,7 @@ M: Igor Mitsyanko <imitsyanko@quantenna.com>
R:	Sergey Matyukevich <geomatsi@gmail.com>
L:	linux-wireless@vger.kernel.org
S:	Maintained
F:	drivers/net/wireless/quantenna
F:	drivers/net/wireless/quantenna/
RADEON and AMDGPU DRM DRIVERS
M:	Alex Deucher <alexander.deucher@amd.com>
@@ -19744,7 +19763,7 @@ RALINK RT2X00 WIRELESS LAN DRIVER
M:	Stanislaw Gruszka <stf_xl@wp.pl>
L:	linux-wireless@vger.kernel.org
S:	Maintained
F:	drivers/net/wireless/ralink/rt2x00/
F:	drivers/net/wireless/ralink/
RAMDISK RAM BLOCK DEVICE DRIVER
M:	Jens Axboe <axboe@kernel.dk>
@@ -21710,7 +21729,7 @@ SILICON LABS WIRELESS DRIVERS (for WFxxx series)
M:	Jérôme Pouiller <jerome.pouiller@silabs.com>
S:	Supported
F:	Documentation/devicetree/bindings/net/wireless/silabs,wfx.yaml
F:	drivers/net/wireless/silabs/wfx/
F:	drivers/net/wireless/silabs/
SILICON MOTION SM712 FRAME BUFFER DRIVER
M:	Sudip Mukherjee <sudipm.mukherjee@gmail.com>
@@ -26210,7 +26229,7 @@ F: mm/zbud.c
ZD1211RW WIRELESS DRIVER
L:	linux-wireless@vger.kernel.org
S:	Orphan
F:	drivers/net/wireless/zydas/zd1211rw/
F:	drivers/net/wireless/zydas/
ZD1301 MEDIA DRIVER
L:	linux-media@vger.kernel.org
+2 −0
Original line number Diff line number Diff line
@@ -403,6 +403,8 @@ void iwl_trans_op_mode_leave(struct iwl_trans *trans)

	iwl_trans_pcie_op_mode_leave(trans);

	cancel_work_sync(&trans->restart.wk);

	trans->op_mode = NULL;

	trans->state = IWL_TRANS_NO_FW;
+3 −3
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
/*
 * Copyright (C) 2012-2014, 2018-2024 Intel Corporation
 * Copyright (C) 2012-2014, 2018-2025 Intel Corporation
 * Copyright (C) 2013-2015 Intel Mobile Communications GmbH
 * Copyright (C) 2016-2017 Intel Deutschland GmbH
 */
@@ -422,6 +422,8 @@ static int iwl_mvm_load_ucode_wait_alive(struct iwl_mvm *mvm,
	/* if reached this point, Alive notification was received */
	iwl_mei_alive_notif(true);

	iwl_trans_fw_alive(mvm->trans, alive_data.scd_base_addr);

	ret = iwl_pnvm_load(mvm->trans, &mvm->notif_wait,
			    &mvm->fw->ucode_capa);
	if (ret) {
@@ -430,8 +432,6 @@ static int iwl_mvm_load_ucode_wait_alive(struct iwl_mvm *mvm,
		return ret;
	}

	iwl_trans_fw_alive(mvm->trans, alive_data.scd_base_addr);

	/*
	 * Note: all the queues are enabled as part of the interface
	 * initialization, but in firmware restart scenarios they
+6 −5
Original line number Diff line number Diff line
@@ -1869,12 +1869,12 @@ struct sg_table *iwl_pcie_prep_tso(struct iwl_trans *trans, struct sk_buff *skb,
				   unsigned int offset)
{
	struct sg_table *sgt;
	unsigned int n_segments;
	unsigned int n_segments = skb_shinfo(skb)->nr_frags + 1;
	int orig_nents;

	if (WARN_ON_ONCE(skb_has_frag_list(skb)))
		return NULL;

	n_segments = DIV_ROUND_UP(skb->len - offset, skb_shinfo(skb)->gso_size);
	*hdr = iwl_pcie_get_page_hdr(trans,
				     hdr_room + __alignof__(struct sg_table) +
				     sizeof(struct sg_table) +
@@ -1889,11 +1889,12 @@ struct sg_table *iwl_pcie_prep_tso(struct iwl_trans *trans, struct sk_buff *skb,
	sg_init_table(sgt->sgl, n_segments);

	/* Only map the data, not the header (it is copied to the TSO page) */
	sgt->orig_nents = skb_to_sgvec(skb, sgt->sgl, offset,
				       skb->len - offset);
	if (WARN_ON_ONCE(sgt->orig_nents <= 0))
	orig_nents = skb_to_sgvec(skb, sgt->sgl, offset, skb->len - offset);
	if (WARN_ON_ONCE(orig_nents <= 0))
		return NULL;

	sgt->orig_nents = orig_nents;

	/* And map the entire SKB */
	if (dma_map_sgtable(trans->dev, sgt, DMA_TO_DEVICE, 0) < 0)
		return NULL;
+8 −1
Original line number Diff line number Diff line
@@ -2,7 +2,7 @@
/*
 * EHT handling
 *
 * Copyright(c) 2021-2024 Intel Corporation
 * Copyright(c) 2021-2025 Intel Corporation
 */

#include "ieee80211_i.h"
@@ -76,6 +76,13 @@ ieee80211_eht_cap_ie_to_sta_eht_cap(struct ieee80211_sub_if_data *sdata,
	link_sta->cur_max_bandwidth = ieee80211_sta_cap_rx_bw(link_sta);
	link_sta->pub->bandwidth = ieee80211_sta_cur_vht_bw(link_sta);

	/*
	 * The MPDU length bits are reserved on all but 2.4 GHz and get set via
	 * VHT (5 GHz) or HE (6 GHz) capabilities.
	 */
	if (sband->band != NL80211_BAND_2GHZ)
		return;

	switch (u8_get_bits(eht_cap->eht_cap_elem.mac_cap_info[0],
			    IEEE80211_EHT_MAC_CAP0_MAX_MPDU_LEN_MASK)) {
	case IEEE80211_EHT_MAC_CAP0_MAX_MPDU_LEN_11454:
Loading