Skip to content

Commit b6075c8

Browse files
committed
Merge tag 'wireless-2024-12-19' of git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless
Kalle Valo says: ==================== wireless fixes for v6.13-rc5 Few minor fixes this time, nothing special. * tag 'wireless-2024-12-19' of git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless: wifi: cw1200: Fix potential NULL dereference wifi: iwlwifi: mvm: Fix __counted_by usage in cfg80211_wowlan_nd_* MAINTAINERS: wifi: ath: add Jeff Johnson as maintainer wifi: iwlwifi: fix CRF name for Bz ==================== Link: https://patch.msgid.link/[email protected] Signed-off-by: Jakub Kicinski <[email protected]>
2 parents c0cc126 + 146b605 commit b6075c8

File tree

6 files changed

+51
-5
lines changed

6 files changed

+51
-5
lines changed

MAINTAINERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3608,6 +3608,7 @@ F: drivers/phy/qualcomm/phy-ath79-usb.c
36083608

36093609
ATHEROS ATH GENERIC UTILITIES
36103610
M: Kalle Valo <[email protected]>
3611+
M: Jeff Johnson <[email protected]>
36113612
36123613
S: Supported
36133614
F: drivers/net/wireless/ath/*

drivers/net/wireless/intel/iwlwifi/cfg/bz.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,7 @@ const struct iwl_cfg_trans_params iwl_gl_trans_cfg = {
161161

162162
const char iwl_bz_name[] = "Intel(R) TBD Bz device";
163163
const char iwl_fm_name[] = "Intel(R) Wi-Fi 7 BE201 320MHz";
164+
const char iwl_wh_name[] = "Intel(R) Wi-Fi 7 BE211 320MHz";
164165
const char iwl_gl_name[] = "Intel(R) Wi-Fi 7 BE200 320MHz";
165166
const char iwl_mtp_name[] = "Intel(R) Wi-Fi 7 BE202 160MHz";
166167

drivers/net/wireless/intel/iwlwifi/iwl-config.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -545,6 +545,7 @@ extern const char iwl_ax231_name[];
545545
extern const char iwl_ax411_name[];
546546
extern const char iwl_bz_name[];
547547
extern const char iwl_fm_name[];
548+
extern const char iwl_wh_name[];
548549
extern const char iwl_gl_name[];
549550
extern const char iwl_mtp_name[];
550551
extern const char iwl_sc_name[];

drivers/net/wireless/intel/iwlwifi/mvm/d3.c

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2954,6 +2954,7 @@ static void iwl_mvm_query_set_freqs(struct iwl_mvm *mvm,
29542954
int idx)
29552955
{
29562956
int i;
2957+
int n_channels = 0;
29572958

29582959
if (fw_has_api(&mvm->fw->ucode_capa,
29592960
IWL_UCODE_TLV_API_SCAN_OFFLOAD_CHANS)) {
@@ -2962,17 +2963,19 @@ static void iwl_mvm_query_set_freqs(struct iwl_mvm *mvm,
29622963

29632964
for (i = 0; i < SCAN_OFFLOAD_MATCHING_CHANNELS_LEN * 8; i++)
29642965
if (matches[idx].matching_channels[i / 8] & (BIT(i % 8)))
2965-
match->channels[match->n_channels++] =
2966+
match->channels[n_channels++] =
29662967
mvm->nd_channels[i]->center_freq;
29672968
} else {
29682969
struct iwl_scan_offload_profile_match_v1 *matches =
29692970
(void *)results->matches;
29702971

29712972
for (i = 0; i < SCAN_OFFLOAD_MATCHING_CHANNELS_LEN_V1 * 8; i++)
29722973
if (matches[idx].matching_channels[i / 8] & (BIT(i % 8)))
2973-
match->channels[match->n_channels++] =
2974+
match->channels[n_channels++] =
29742975
mvm->nd_channels[i]->center_freq;
29752976
}
2977+
/* We may have ended up with fewer channels than we allocated. */
2978+
match->n_channels = n_channels;
29762979
}
29772980

29782981
/**
@@ -3053,6 +3056,8 @@ static void iwl_mvm_query_netdetect_reasons(struct iwl_mvm *mvm,
30533056
GFP_KERNEL);
30543057
if (!net_detect || !n_matches)
30553058
goto out_report_nd;
3059+
net_detect->n_matches = n_matches;
3060+
n_matches = 0;
30563061

30573062
for_each_set_bit(i, &matched_profiles, mvm->n_nd_match_sets) {
30583063
struct cfg80211_wowlan_nd_match *match;
@@ -3066,8 +3071,9 @@ static void iwl_mvm_query_netdetect_reasons(struct iwl_mvm *mvm,
30663071
GFP_KERNEL);
30673072
if (!match)
30683073
goto out_report_nd;
3074+
match->n_channels = n_channels;
30693075

3070-
net_detect->matches[net_detect->n_matches++] = match;
3076+
net_detect->matches[n_matches++] = match;
30713077

30723078
/* We inverted the order of the SSIDs in the scan
30733079
* request, so invert the index here.
@@ -3082,6 +3088,8 @@ static void iwl_mvm_query_netdetect_reasons(struct iwl_mvm *mvm,
30823088

30833089
iwl_mvm_query_set_freqs(mvm, d3_data->nd_results, match, i);
30843090
}
3091+
/* We may have fewer matches than we allocated. */
3092+
net_detect->n_matches = n_matches;
30853093

30863094
out_report_nd:
30873095
wakeup.net_detect = net_detect;

drivers/net/wireless/intel/iwlwifi/pcie/drv.c

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1106,19 +1106,54 @@ VISIBLE_IF_IWLWIFI_KUNIT const struct iwl_dev_info iwl_dev_info_table[] = {
11061106
iwlax210_2ax_cfg_so_jf_b0, iwl9462_name),
11071107

11081108
/* Bz */
1109-
/* FIXME: need to change the naming according to the actual CRF */
11101109
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
11111110
IWL_CFG_MAC_TYPE_BZ, IWL_CFG_ANY,
1111+
IWL_CFG_RF_TYPE_HR2, IWL_CFG_ANY, IWL_CFG_ANY,
11121112
IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_ANY,
1113+
iwl_cfg_bz, iwl_ax201_name),
1114+
1115+
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
1116+
IWL_CFG_MAC_TYPE_BZ, IWL_CFG_ANY,
1117+
IWL_CFG_RF_TYPE_GF, IWL_CFG_ANY, IWL_CFG_ANY,
1118+
IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_ANY,
1119+
iwl_cfg_bz, iwl_ax211_name),
1120+
1121+
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
1122+
IWL_CFG_MAC_TYPE_BZ, IWL_CFG_ANY,
1123+
IWL_CFG_RF_TYPE_FM, IWL_CFG_ANY, IWL_CFG_ANY,
11131124
IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_ANY,
11141125
iwl_cfg_bz, iwl_fm_name),
11151126

1127+
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
1128+
IWL_CFG_MAC_TYPE_BZ, IWL_CFG_ANY,
1129+
IWL_CFG_RF_TYPE_WH, IWL_CFG_ANY, IWL_CFG_ANY,
1130+
IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_ANY,
1131+
iwl_cfg_bz, iwl_wh_name),
1132+
11161133
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
11171134
IWL_CFG_MAC_TYPE_BZ_W, IWL_CFG_ANY,
1135+
IWL_CFG_RF_TYPE_HR2, IWL_CFG_ANY, IWL_CFG_ANY,
11181136
IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_ANY,
1137+
iwl_cfg_bz, iwl_ax201_name),
1138+
1139+
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
1140+
IWL_CFG_MAC_TYPE_BZ_W, IWL_CFG_ANY,
1141+
IWL_CFG_RF_TYPE_GF, IWL_CFG_ANY, IWL_CFG_ANY,
1142+
IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_ANY,
1143+
iwl_cfg_bz, iwl_ax211_name),
1144+
1145+
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
1146+
IWL_CFG_MAC_TYPE_BZ_W, IWL_CFG_ANY,
1147+
IWL_CFG_RF_TYPE_FM, IWL_CFG_ANY, IWL_CFG_ANY,
11191148
IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_ANY,
11201149
iwl_cfg_bz, iwl_fm_name),
11211150

1151+
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
1152+
IWL_CFG_MAC_TYPE_BZ_W, IWL_CFG_ANY,
1153+
IWL_CFG_RF_TYPE_WH, IWL_CFG_ANY, IWL_CFG_ANY,
1154+
IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_ANY,
1155+
iwl_cfg_bz, iwl_wh_name),
1156+
11221157
/* Ga (Gl) */
11231158
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
11241159
IWL_CFG_MAC_TYPE_GL, IWL_CFG_ANY,

drivers/net/wireless/st/cw1200/cw1200_spi.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -442,8 +442,8 @@ static void cw1200_spi_disconnect(struct spi_device *func)
442442
cw1200_core_release(self->core);
443443
self->core = NULL;
444444
}
445+
cw1200_spi_off(self, dev_get_platdata(&func->dev));
445446
}
446-
cw1200_spi_off(self, dev_get_platdata(&func->dev));
447447
}
448448

449449
static int __maybe_unused cw1200_spi_suspend(struct device *dev)

0 commit comments

Comments
 (0)