Paolo Abeni
941defcea7
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
...
Cross-merge networking fixes after downstream PR (net-6.14-rc6).
Conflicts:
tools/testing/selftests/drivers/net/ping.py
75cc19c8ff ("selftests: drv-net: add xdp cases for ping.py")
de94e86974 ("selftests: drv-net: store addresses in dict indexed by ipver")
https://lore.kernel.org/netdev/20250311115758.17a1d414@canb.auug.org.au/
net/core/devmem.c
a70f891e0f ("net: devmem: do not WARN conditionally after netdev_rx_queue_restart()")
1d22d3060b ("net: drop rtnl_lock for queue_mgmt operations")
https://lore.kernel.org/netdev/20250313114929.43744df1@canb.auug.org.au/
Adjacent changes:
tools/testing/selftests/net/Makefile
6f50175cca ("selftests: Add IPv6 link-local address generation tests for GRE devices.")
2e5584e0f9 ("selftests/net: expand cmsg_ipv6.sh with ipv4")
drivers/net/ethernet/broadcom/bnxt/bnxt.c
661958552e ("eth: bnxt: do not use BNXT_VNIC_NTUPLE unconditionally in queue restart logic")
fe96d717d3 ("bnxt_en: Extend queue stop/start for TX rings")
Signed-off-by: Paolo Abeni <pabeni@redhat.com >
2025-03-13 23:08:11 +01:00
Emmanuel Grumbach
b8c8a03e9b
wifi: iwlwifi: mvm: fix PNVM timeout for non-MSI-X platforms
...
When MSI-X is not enabled, we mask all the interrupts in the interrupt
handler and re-enable them when the interrupt thread runs. If
STATUS_INT_ENABLED is not set, we won't re-enable in the thread.
In order to get the ALIVE interrupt, we allow the ALIVE interrupt
itself, and RX as well in order to receive the ALIVE notification (which
is received as an RX from the firmware.
The problem is that STATUS_INT_ENABLED is clear until the op_mode calls
trans_fw_alive which means that until trans_fw_alive is called, any
notification from the firmware will not be received.
This became a problem when we inserted the pnvm_load exactly between the
ALIVE and trans_fw_alive.
Fix that by calling trans_fw_alive before loading the PNVM. This will
allow to get the notification from the firmware about PNVM load being
complete and continue the flow normally.
This didn't happen on MSI-X because we don't disable the interrupts in
the ISR when MSI-X is available.
The error in the log looks like this:
iwlwifi 0000:00:03.0: Timeout waiting for PNVM load!
iwlwifi 0000:00:03.0: Failed to start RT ucode: -110
iwlwifi 0000:00:03.0: WRT: Collecting data: ini trigger 13 fired (delay=0ms).
Fixes: 70d3ca86b0 ("iwlwifi: mvm: ring the doorbell and wait for PNVM load completion")
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Reviewed-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250306122425.0f2cf207aae1.I025d8f724b44f52eadf6c19069352eb9275613a8@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-03-07 09:57:39 +01:00
Jakub Kicinski
2525e16a2b
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
...
Cross-merge networking fixes after downstream PR (net-6.14-rc6).
Conflicts:
net/ethtool/cabletest.c
2bcf4772e4 ("net: ethtool: try to protect all callback with netdev instance lock")
637399bf7e ("net: ethtool: netlink: Allow NULL nlattrs when getting a phy_device")
No Adjacent changes.
Signed-off-by: Jakub Kicinski <kuba@kernel.org >
2025-03-06 13:03:35 -08:00
Colin Ian King
7ed3f3c40d
wifi: iwlwifi: Fix spelling mistake "Increate" -> "Increase"
...
There is a spelling mistake in a IWL_DEBUG_RATE message. Fix it.
Signed-off-by: Colin Ian King <colin.i.king@gmail.com >
Link: https://patch.msgid.link/20250227221917.658401-1-colin.i.king@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-28 13:39:04 +01:00
Miri Korenblit
048a3d94b0
wifi: iwlwifi: remove mvm prefix from iwl_mvm_d3_end_notif
...
This is not op mode specific.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.c99748f63511.I5c8dcc46e992e76c82fdf7dbee65957cbdca1b43@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:48:55 +01:00
Miri Korenblit
e1fc9288a1
wifi: iwlwifi: remove mvm prefix from iwl_mvm_esr_mode_notif
...
This is not specific to mvm.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.c536eeaae129.I848307be6df21913c0ce3eb6baef715cd401db1a@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:48:54 +01:00
Avraham Stern
180d52d224
wifi: iwlwifi: location api cleanup
...
Remove the version suffix from the latest version of the range
request command structs and the range response notification structs.
In addition, don't use MVM in the API file as it is not MVM specific.
Signed-off-by: Avraham Stern <avraham.stern@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.294b7109e0be.I229ceef5933e825815d84c33855cadd62687ee04@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:48:54 +01:00
Emmanuel Grumbach
a03e2082e6
wifi: iwlwifi: mvm: use the right version of the rate API
...
The firmware uses the newer version of the API in recent devices. For
older devices, we translate the rate to the new format.
Don't parse the rate with old parsing macros.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Reviewed-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250209143303.13d70cdcbb4e.Ic92193bce4013b70a823cfef250ee79c16cf7c17@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 12:41:46 +01:00
Emmanuel Grumbach
d73d2c6e33
wifi: iwlwifi: mvm: don't try to talk to a dead firmware
...
This fixes:
bad state = 0
WARNING: CPU: 10 PID: 702 at drivers/net/wireless/inel/iwlwifi/iwl-trans.c:178 iwl_trans_send_cmd+0xba/0xe0 [iwlwifi]
Call Trace:
<TASK>
? __warn+0xca/0x1c0
? iwl_trans_send_cmd+0xba/0xe0 [iwlwifi 64fa9ad799a0e0d2ba53d4af93a53ad9a531f8d4]
iwl_fw_dbg_clear_monitor_buf+0xd7/0x110 [iwlwifi 64fa9ad799a0e0d2ba53d4af93a53ad9a531f8d4]
_iwl_dbgfs_fw_dbg_clear_write+0xe2/0x120 [iwlmvm 0e8adb18cea92d2c341766bcc10b18699290068a]
Ask whether the firmware is alive before sending a command.
Fixes: 268712dc3b ("wifi: iwlwifi: mvm: add a debugfs hook to clear the monitor data")
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250209143303.8e1597b62c70.I12ea71dd9b805b095c9fc12a10c9f34a4e801b61@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 12:41:46 +01:00
Emmanuel Grumbach
d48ff3ce92
wifi: iwlwifi: mvm: don't dump the firmware state upon RFKILL while suspend
...
This is not really a firmware error. We need to reload the firmware, but
this doesn't mean that we should consider this as a firmware error.
When the firmware was restarted upon resume, this wasn't felt by the
driver. Now that we keep the firmware running during suspend even if we
don't have wowlan, this started to pop-up.
Fixes: e8bb19c1d5 ("wifi: iwlwifi: support fast resume")
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250209143303.a10463a40318.I14131781c3124b58e60e1f5e9d793a2bc88b464c@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 12:41:46 +01:00
Johannes Berg
f9751163bf
wifi: iwlwifi: mvm: clean up ROC on failure
...
If the firmware fails to start the session protection, then we
do call iwl_mvm_roc_finished() here, but that won't do anything
at all because IWL_MVM_STATUS_ROC_P2P_RUNNING was never set.
Set IWL_MVM_STATUS_ROC_P2P_RUNNING in the failure/stop path.
If it started successfully before, it's already set, so that
doesn't matter, and if it didn't start it needs to be set to
clean up.
Not doing so will lead to a WARN_ON() later on a fresh remain-
on-channel, since the link is already active when activated as
it was never deactivated.
Fixes: 35c1bbd93c ("wifi: iwlwifi: mvm: remove IWL_MVM_STATUS_NEED_FLUSH_P2P")
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250209143303.0fe36c291068.I67f5dac742170dd937f11e4d4f937f45f71b7cb4@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 12:41:46 +01:00
Shaul Triebitz
af3be90884
wifi: iwlwifi: support ROC version 6
...
Version 6 added ROC with multi repetitions.
We don't use it, but need to update the command
length.
Signed-off-by: Shaul Triebitz <shaul.triebitz@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250205145347.956c33729d48.I609835c08f0003c084a13a1e1e505cb7bc8ecbc6@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:48 +01:00
Ilan Peer
926ad5f970
wifi: iwlwifi: mvm: Indicate support link reconfiguration
...
As MLO link configuration is supported by mac80211, indicate
support for MLO link reconfiguration in station mode.
Signed-off-by: Ilan Peer <ilan.peer@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
----------------
depends on "wifi: ieee80211: Add some missing MLO related definitions"
Link: https://patch.msgid.link/20250205145347.92d19705d2b9.Id07fa3ebad6bc23ecf6e91868f67150ce70f47b0@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:47 +01:00
Anjaneyulu
3b67a2c5aa
wifi: iwlwifi: Unify TAS block list handling in regulatory.c
...
Created a common function iwl_add_mcc_to_tas_block_list() to handle the
operations previously performed by iwl_mld_add_to_tas_block_list() and
iwl_mvm_add_to_tas_block_list(). moved this new function to regulatory.c
to better reflect its purpose and improve code organization.
Signed-off-by: Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250205145347.157d26fb7f02.I87e20e967835bc895be390daf1c6637e20b52aae@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:46 +01:00
Anjaneyulu
ca47dcc0d0
wifi: iwlwifi: mvm: rename and move iwl_mvm_eval_dsm_rfi() to iwl_rfi_is_enabled_in_bios()
...
Renamed iwl_mvm_eval_dsm_rfi() to iwl_rfi_is_enabled_in_bios() to better
reflect the function's operation. Additionally, moved the function to the
regulatory.c file for better organization. optimize local variable
usage in it.
Signed-off-by: Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250205145347.b7ac9d05234e.Ieb623d7e8dca6bb6a5733682b31e4ff1e39373f0@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:46 +01:00
Emmanuel Grumbach
3d4b0f0c5c
wifi: iwlwifi: remove the mvm prefix from iwl_mvm_aux_sta_cmd
...
This is a firmware command and is not specific to the iwlmvm op_mode
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250119210104.276658439163.I70641851f9e5210ec3a7033db38a45d24814083b@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:57:28 +01:00
Emmanuel Grumbach
55e52a3b8f
wifi: iwlwifi: remove the version number from iwl_dts_measurement_notif_v2
...
No need to carry the version number in the structure name if this is the
latest version available.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250119210104.9d218a5c4f6b.I9de3e424be48d66994cde3684ce7e9e99456067d@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:57:22 +01:00
Emmanuel Grumbach
8c2ffc6556
wifi: iwlwifi: remove the mvm prefix from iwl_mvm_ctdp_cmd
...
This command is not specific to iwlmvm.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250119210104.04f3afcf9c77.Ic2b6f265d0b4aea25ccc7114d6f48afa621871be@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:57:17 +01:00
Dr. David Alan Gilbert
8c7df6490b
wifi: iwlwifi: mvm: Remove unused iwl_mvm_ftm_add_pasn_sta
...
iwl_mvm_ftm_add_pasn_sta() was added in 2020 by
commit 0739a7d70e ("iwlwifi: mvm: initiator: add option for adding a
PASN responder")
but hasn't been used.
Remove it.
That was the only caller of iwl_mvm_ftm_remove_pasn_sta().
Remove it.
Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org >
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20241223013202.340180-5-linux@treblig.org
2025-02-11 11:48:27 +01:00
Dr. David Alan Gilbert
7efd4b6130
wifi: iwlwifi: mvm: Remove unused iwl_mvm_ftm_*_add_pasn_sta functions
...
iwl_mvm_ftm_respoder_add_pasn_sta() and
iwl_mvm_ftm_resp_remove_pasn_sta() were added in 2020 by
commit be82ecd3a5 ("iwlwifi: mvm: add an option to add PASN station")
but have remained unused.
Remove them.
After that removal iwl_mvm_add_pasn_sta() is now unused.
Remove it.
Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org >
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20241223013202.340180-4-linux@treblig.org
2025-02-11 11:48:25 +01:00
Dr. David Alan Gilbert
63e616649c
wifi: iwlwifi: mvm: Remove unused iwl_mvm_rx_missed_vap_notif
...
iwl_mvm_rx_missed_vap_notif() was added in 2019 by
commit 449a29d0fe ("iwlwifi: mvm: add notification for missed VAP")
but hasn't been used.
Remove it.
Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org >
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20241223013202.340180-3-linux@treblig.org
2025-02-11 11:48:21 +01:00
Johannes Berg
63a59880ec
wifi: iwlwifi: simplify nested if checks
...
In the absence of (an) else clause(s), "if (a) if (b)" is
equivalent to "if (a && b)", so simplify the code a bit.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250102161730.7ddc9cb1ea50.If18bd94706d6c821e34c38a4704bf85dca6207b2@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:34:09 +01:00
Miri Korenblit
14d00d7629
wifi: iwlwifi: rename iwl_datapath_monitor_notif::mac_id to link_id
...
The FW really sends the link_id here. Rename it, while leaving a FIXME
in iwlmvm.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Link: https://patch.msgid.link/20241231135726.a3d07be17fb1.Ib8a623af099b9b0f2b8d552fca546c476a69a82d@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:34:07 +01:00
Anjaneyulu
44b1c90c91
wifi: iwlwifi: mvm: remove unused tas_rsp variable
...
optimize local variable usage in iwl_dbgfs_tas_get_status_read().
Signed-off-by: Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241231135726.fab845da5c6f.Ica84a4c0df33db9c9b6baef28893bb42e1f367b7@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:34:07 +01:00
Anjaneyulu
5111f9d3bf
wifi: iwlwifi: mvm: handle version 3 GET_TAS_STATUS notification
...
Add a check to ensure only version-3 of GET_TAS_STATUS notification
is allowed.
Signed-off-by: Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241231135726.1d571ac80957.Ia48b1cf5585a2a9f9c461e80f5a0ba2bb16c3af4@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:34:07 +01:00
Anjaneyulu
5f4656610e
wifi: iwlwifi: extend TAS_CONFIG cmd support for v5
...
Extend TAS_CONFIG to send exact data read from bios to firmware
without filtering/altering bios data. This enables driver becoming
purely a pipe for TAS features.
Signed-off-by: Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241231135726.f46d58e7cfd1.Ifd81e632fa3e7039b8d139ee0d1c24e09669dff5@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:34:07 +01:00
Johannes Berg
2a42868d58
wifi: iwlwifi: mvm: support EMLSR on WH/PE
...
Unlike FM which only supported EMLSR on B-step and later, here
it can be supported starting from A-step.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241231135726.65a3b822e002.I4d6f10e02686f1cc159121cf702d6b747cab5b8a@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:34:06 +01:00
Johannes Berg
9eca1abfb4
wifi: iwlwifi: mvm: improve/fix chanctx min_def use logic
...
There are two cases in which the min_def isn't used:
a) if FILS will be enabled
b) if FTM responder is enabled
Both of these apply to AP mode only, but for FILS we're
not checking that right now. Change the code to iterate
the interfaces and links using the channel context, and
check for AP mode for both, not just for FTM responder.
In the case of iwl_mvm_enable_fils() this might also fix
an issue where FILS is enabled for an IBSS network that
happens to be started on 6 GHz, though that's not very
likely to be possible due to regulatory.
However for RX OMI bandwidth reduction the driver needs
to use the min_def in client mode as well, in order to
actually reduce bandwidth when it requested that.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241231135726.7b91025e103d.I4c99c03fd32363d574ab5e34798b6099401f0729@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:34:06 +01:00
Johannes Berg
9673c35486
wifi: iwlwifi: implement product reset for TOP errors
...
The TOP is a shared (between BT and WiFi) hardware component,
and if it has an error we need to reset the whole device, i.e.
both BT and WiFi. This is achieved by calling a specific ACPI
DSM (device-specific method) with the right arguments before
doing a reset via the object referenced by _PRR.
Since this is needed here, but a function reset will always do
better than just re-enumerating the bus in case of errors, we
can always try to at least do a function reset and do the full
product reset only when needed for TOP errors.
Also, for some Bz and Sc devices where BT is PCIe/IOSF as well,
find the BT device and unbind that device as well so the BT
driver can recover from the reset that's going to happen,
rather than having to somehow detect that the device was reset.
Also add - currently unused - the function reset mode, this is
going to get used in the upcoming escalation model.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241231135726.5b0f846d3e13.Ia14ccac38ac3d48adf5f341b17c7e34ccc41c065@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:34:06 +01:00
Miri Korenblit
aa4b132a9e
wifi: iwlwifi: mvm: Fix duplicated 'the' in comment
...
The double `the' is duplicated in the comment, remove one.
Signed-off-by: Jason Wang <wangborong@cdjrlc.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Link: https://patch.msgid.link/20241229164246.76502dda646b.I0a1d012eaa1cd8d39430cde981cae8c4cc058442@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:43 +01:00
Jason Wang
e570579564
wifi: iwlwifi: mvm: Fix duplicated 'if' in comment
...
The double `if' is duplicated in the comment, remove one.
Signed-off-by: Jason Wang <wangborong@cdjrlc.com >
Link: https://msgid.link/20220811115958.8423-1-wangborong@cdjrlc.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Link: https://patch.msgid.link/20241229164246.9d8c224e9d4c.Iaacfbd1e9432f31d5d7d037ad925aadbb0d5c4d6@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:43 +01:00
Minjie Du
81a6f4540d
wifi: iwlwifi: Remove a duplicate assignment in iwl_dbgfs_amsdu_len_write()
...
Delete a duplicate statement from this function implementation.
Signed-off-by: Minjie Du <duminjie@vivo.com >
Link: https://msgid.link/20230705114934.16523-1-duminjie@vivo.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Link: https://patch.msgid.link/20241229164246.b1b0dadc2e9e.Ie57cbe8039b9f388632141447ac910b6fcc3d0c0@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:43 +01:00
Miri Korenblit
88db644993
wifi: iwlwifi: mvm: Use helper function IS_ERR_OR_NULL()
...
Use IS_ERR_OR_NULL() instead of open-coding it
to simplify the code.
Signed-off-by: Ruan Jinjie <ruanjinjie@huawei.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241229164246.d3423626d981.I3b4cc7f19d1bfecdb2e6a4eba8da1c7a41461115@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:42 +01:00
Miri Korenblit
2ce67f8bf1
wifi: iwlwifi: mvm: fix iwl_ssid_exist() check
...
iwl_ssid_exist() seems to check if a given ssid/ssid_len already
exists in a given array ssid_list.
Correctly compare the ssid to the SSID of each array element
(with a matching SSID length) to better remove duplicates.
Signed-off-by: Bjoern A. Zeeb <bz@FreeBSD.org >
Sponsored by: The FreeBSD Foundation
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Reviewed-by: Daniel Gabay <daniel.gabay@intel.com >
Link: https://patch.msgid.link/20241229164246.4471cd3d8dba.Iab8409b22bf6f01d05571ecef1e97dd3c8b1cc75@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:42 +01:00
Juan José Arboleda
703f341e99
wifi: iwlwifi: mvm: Improve code style in pointer declarations
...
The changes ensure that there is a space between the `u8` type and the
`*` character as preferred by the guidelines.
This change is purely stylistic and do not affect the functionality
of the code.
Signed-off-by: Juan José Arboleda <soyjuanarbol@gmail.com >
Link: https://msgid.link/10b6d4945675cada713e819f7bd6782a66a1c0d2.1724103043.git.soyjuanarbol@gmail.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Link: https://patch.msgid.link/20241229164246.f09a200be4f8.Ia564ae1c59136bd3c2864ccfb3a244b3257dcd5f@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:42 +01:00
Emmanuel Grumbach
79f4b6934d
wifi: iwlwifi: mvm: remove unneeded NULL pointer checks
...
Smatch reported that we dereference the data pointer to calculate the
expected length before we check it's not NULL. While this is true (and
hence needs to be fixed), this will never happen because the data
pointer comes from struct iwl_rx_packet object which has the following
layout:
struct iwl_rx_packet {
__le32 len_n_flags;
struct iwl_cmd_header hdr;
u8 data[];
} __packed;
So, if the pointer to iwl_rx_packet is valid, data will be valid as
well.
Remove the NULL pointer check on 'data' to avoid confusing smatch.
Also remove the check from similar functions in the same flow that were
cargo cult copy-pasted.
Fixes: 4635e6eaa0 ("wifi: iwlwifi: mvm: support new versions of the wowlan APIs")
Reported-by: kernel test robot <lkp@intel.com >
Reported-by: Dan Carpenter <dan.carpenter@linaro.org >
Closes: https://lore.kernel.org/r/202411210812.0eLaonw3-lkp@intel.com/
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Reviewed-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241229164246.c8ce6e041e4b.I4dc19289e3f3807386768c846e08be3ea322cd15@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:42 +01:00
Johannes Berg
16b2092c4b
wifi: iwlwifi: mvm: fix AP STA comparison
...
This should be comparing the AP STA, not the deflink firmware STA
ID. Correct the implementation so that statistics can be requested
for the AP, but not for other stations that may end up with the
firmware STA ID matching 0 in the deflink, or so.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241229164246.08b05aca37cf.Iba1a6a637a758691f710dc4f3f03bd1d960fb087@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:42 +01:00
Emmanuel Grumbach
8c734445fa
wifi: iwlwifi: cleanup unused variable in trans.h
...
Remove unused fields from the transport API.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241229164246.1d04ce18a0ec.Ibfac364163b55b52196d30ff2b43945c5aa804a9@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:41 +01:00
Daniel Gabay
76260267ba
wifi: iwlwifi: mvm: don't count mgmt frames as MPDU
...
When handling TX_CMD notification, for mgmt frames tid is equal
to IWL_MAX_TID_COUNT, so with the current logic we'll count
that as MPDU, fix that.
Fixes: ec0d43d26f ("wifi: iwlwifi: mvm: Activate EMLSR based on traffic volume")
Signed-off-by: Daniel Gabay <daniel.gabay@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241229164246.80b119bb5d08.I31b1e8ba25cce15819225e5ac80332e4eaa20c13@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:41 +01:00
Johannes Berg
014ca1ac64
wifi: iwlwifi: fw: api: tdls: remove MVM_ from name
...
The API isn't really MVM specific, it's just the firmware
API. Remove the "MVM_" from the name here as well, as we've
already done in many other places.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241229164246.66e17791c392.I6998e263973c26c1e22b4f470b974a519011b29a@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:41 +01:00
Miri Korenblit
cf704a7624
wifi: iwlwifi: mvm: avoid NULL pointer dereference
...
When iterating over the links of a vif, we need to make sure that the
pointer is valid (in other words - that the link exists) before
dereferncing it.
Use for_each_vif_active_link that also does the check.
Fixes: 2b7ee1a10a ("wifi: iwlwiif: mvm: handle the new BT notif")
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Link: https://patch.msgid.link/20241229164246.31d41f7d3eab.I7fb7036a0b187c1636b01970207259cb2327952c@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:41 +01:00
Johannes Berg
c866a98523
wifi: iwlwifi: mvm: fix add stream vs. restart race
...
My recent restart related work has made this race more likely
to happen and we've now noticed it, but it seems that it was
always possible. The race is that the add stream work can be
scheduled just before a restart is scheduled and then execute
before the restart, accessing the device while it's doing the
restart and not accessible.
To fix this, check if the device is restarting and abort the
work in that case. Reschedule it after the restart as well.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241228223206.9c30af039b4d.I1a32936776f8ba5e83dda0a68ffc2722d9d37950@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:41 +01:00
Emmanuel Grumbach
9e28fcabce
wifi: iwlwifi: move fw_dbg_collect to fw debugfs
...
This debugfs hook really belongs to the firmware handling code and then
we can use it across different op_modes.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241228223206.d31f5994c6a6.Ibe3bc7a25e2bbf7a575287e19db58833bb3e6b9e@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:40 +01:00
Yedidya Benshimol
3e0e91e22c
wifi: iwlwifi: api: remove version number from latest stored_beacon_notif
...
By convention the newest version of a command/notification structure is
named with out the _ver_# suffix. Apply to stored_beacon_notif.
Signed-off-by: Yedidya Benshimol <yedidya.ben.shimol@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241228223206.e2140aa3c65b.Ie851bdda6df02dcc352bf765a3ec6bdac45c65a2@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:40 +01:00
Somashekhar(Som)
a2ba52b3a9
wifi: iwlwifi: add channel_load_not_by_us in iwl_mvm_phy_ctxt
...
Adding channel_load_not_by_us in the mvm phy context.
Signed-off-by: Somashekhar(Som) <somashekhar.puttagangaiah@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241228223206.7c7f3ebebadf.Ifac005cf1e3b02cba0861eb19bfd8099957faad9@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:40 +01:00
Somashekhar(Som)
20eccf4ac9
wifi: iwlwifi: Allow entering EMLSR for more band combinations
...
Enter EMLSR only when two bands are different.
EMLSR should be allowed when one of the link is LB.
Signed-off-by: Somashekhar(Som) <somashekhar.puttagangaiah@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241228223206.ec659168eeb7.I403f61f0e827c14cf2b245f48e1736559f17c476@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:40 +01:00
Daniel Gabay
4c83e41c3f
wifi: iwlwifi: Remove MVM prefix from TX API macros
...
These are not mvm specific.
Signed-off-by: Daniel Gabay <daniel.gabay@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241228223206.1b235ec5354e.If99a38b1f0d7e42ea4ee3907e6c395846c4aa9b0@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:40 +01:00
Emmanuel Grumbach
1dde1f316d
wifi: iwlwifi: move fw_ver debugfs to firmware runtime
...
This is really where it belongs.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241228223206.98bdc5e62828.Iee7a8365dd63ebf580d324f90e1e04466d8ef5d5@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:39 +01:00
Miri Korenblit
5970442592
wifi: iwlwifi: mld: make iwl_mvm_find_ie_offset a iwlwifi util
...
This is needed also for more opmodes, and is really not opmode dependent.
Make it a iwlwifi util.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Link: https://patch.msgid.link/20241228223206.a36373eefbf2.Ib1f305b78508c98934f6000720d6455c88a860cb@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:39 +01:00
Johannes Berg
0f28cc081f
wifi: iwlwifi: iwl_fw_error_collect() is always called sync
...
Since iwl_fw_error_collect() is now always called with the sync
argument set to true, to collect data synchronously, remove the
argument from it entirely.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20241227095718.08f515513e88.I780a557743ca7f029f46a1cc75d0799542e39d83@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 15:26:39 +01:00