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
Miri Korenblit
1801a94299
wifi: iwlwifi: trans: cancel restart work on op mode leave
...
If the restart work happens to run after the opmode left
(i.e. called iwl_trans_op_mode_leave), then the opmode memory (including
its mutex) is likely to be freed already, and trans->opmode is NULL.
Although the hw is stopped in that stage, which means that this restart
got aborted (i.e. STATUS_RESET_PENDING will be cleared),
it still can access trans->opmode (NULL pointer dereference)
or the opmodes memory (which is freed).
Fix this by canceling the restart wk in iwl_trans_op_mode_leave.
Also make sure that the restart wk is really aborted.
Fixes: 7391b2a4f7 ("wifi: iwlwifi: rework firmware error handling")
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250306122425.801301ba1b8b.I6f6143f550b6335b699920c5d4b2b78449607a96@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-03-07 09:57:39 +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
Ilan Peer
bbb18f7e23
wifi: iwlwifi: pcie: Fix TSO preparation
...
The allocation of the scatter gather data structure should be done
based on the number of memory chunks that need to be mapped, and it
is not dependent on the overall payload length. Fix it.
In addition, as the skb_to_sgvec() function returns an 'int' do not
assign it to an 'unsigned int' as otherwise the error check would be
useless.
Fixes: 7f5e3038f0 ("wifi: iwlwifi: map entire SKB when sending AMSDUs")
Signed-off-by: Ilan Peer <ilan.peer@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250306122425.8c0e23a3d583.I3cb4d6768c9d28ce3da6cd0a6c65466176cfc1ee@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-03-07 09:57:38 +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
Johannes Berg
799b7f93c0
wifi: iwlwifi: remove mld/roc.c
...
This file should never have been part of the commit, remove it.
Fixes: af3be90884 ("wifi: iwlwifi: support ROC version 6")
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-03-04 13:48:30 +01: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
95da92e7c6
wifi: iwlwifi: add Debug Host Command APIs
...
Add the defintition of those APIs, those will be used in a later patch.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.d842253ee55d.I2e8d65f22d5acde70ed6be16f913160a93d06852@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:48:55 +01:00
Miri Korenblit
5098c09a17
wifi: iwlwifi: add IWL_MAX_NUM_IGTKS macro
...
This macro represents the number of IGTKS the FW can support.
Will be used in a later patch.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.a8e3c7461f13.If63cbc73eaf328b2c1d7c8e57627eb93c35b0c70@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:48:55 +01:00
Johannes Berg
26fef6d386
wifi: iwlwifi: add OMI bandwidth reduction APIs
...
This adds the API definitions needed for OMI bandwidth reduction.
Will be used in a later patches.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.4d34e8f5a3df.Idd6185cdb8d8a133f92032db9278c1510961cbdc@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:48:55 +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
Emmanuel Grumbach
d645fbb47d
wifi: iwlwifi: remember if the UATS table was read successfully
...
This will allow to read the table once, and not any time the command is
sent. The actual use of this will be in a later patch.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.61801b78a2cb.I710a766888f370a75b47116fec29d41c106b13ed@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:48:54 +01:00
Emmanuel Grumbach
f073cc3a66
wifi: iwlwifi: export iwl_get_lari_config_bitmap
...
This will now be called from another opmode we are writing.
iwl_fill_lari_config will only be used for the older ones.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.9bb7fbc592a6.I8850691eac7c8471257f3031e8c05905afc72f70@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:48:54 +01:00
Emmanuel Grumbach
f8e02ca649
wifi: iwlwifi: add support for external 32 KHz clock
...
In case the BIOS allows it, instruct the firmware to use the external 32
KHz clock.
The op mode specific implementation (i.e. reading the BIOS table) will
come in a later patch.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.9aae3f74fee0.I25ae45ef02b9ea387b512f974c1f3e5367a537e5@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:48:54 +01:00
Miri Korenblit
e51f035b5a
wifi: iwlwifi: mld: add a debug level for EHT prints
...
This is required for EHT related debug prints.
As there are no more available debug levels, delete IWL_DL_EXTERNAL,
which is not used, and replace it with IWL_DL_EHT.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.9b1e0d87e7e4.Iea6c1329f7b6312a73896f9a9d9bce72bd6548e2@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:48:54 +01:00
Miri Korenblit
2bfbd823ab
wifi: iwlwifi: mld: add a debug level for PTP prints
...
This is required for PTP related debug prints.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.866f8f66b1d7.I764abcb845d992d058c753ce8fa9d45fed2ff4ec@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:48:54 +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
Emmanuel Grumbach
79c06299e7
wifi: iwlwifi: use 0xff instead of 0xffffffff for invalid
...
The firmware is now able to understand 0xff and that is more widely
used.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250212073923.c6719e6dc0a6.Ifd149101fa886730602dbbb02f980be8e554fe84@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
Arnd Bergmann
cf6b9ba172
wifi: iwlegacy: don't warn for unused variables with DEBUG_FS=n
...
The reference to il_rate_mcs is inside of an #ifdef, causing a W=1 warning:
drivers/net/wireless/intel/iwlegacy/4965-rs.c:189:38: error: unused variable 'il_rate_mcs' [-Werror,-Wunused-const-variable]
static const struct il_rate_mcs_info il_rate_mcs[RATE_COUNT] = {
Replace the #ifdef with a PTR_IF() for better compile time analysis.
The dead code will still get eliminated, but the warning goes away.
Signed-off-by: Arnd Bergmann <arnd@arndb.de >
Link: https://patch.msgid.link/20250225145359.1126786-1-arnd@kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-26 15:42:08 +01:00
Ilan Peer
3640dbc1f7
wifi: iwlwifi: Fix A-MSDU TSO preparation
...
The TSO preparation assumed that the skb head contained the headers
while the rest of the data was in the fragments. Since this is not
always true, e.g., it is possible that the data was linearised, modify
the TSO preparation to start the data processing after the network
headers.
Fixes: 7f5e3038f0 ("wifi: iwlwifi: map entire SKB when sending AMSDUs")
Signed-off-by: Ilan Peer <ilan.peer@intel.com >
Reviewed-by: Benjamin Berg <benjamin.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250209143303.75769a4769bf.Iaf79e8538093cdf8c446c292cc96164ad6498f61@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 12:41:46 +01:00
Ilan Peer
3b08e608d5
wifi: iwlwifi: Free pages allocated when failing to build A-MSDU
...
When failing to prepare the data needed for A-MSDU transmission, the memory
allocated for the TSO management was not freed. Fix it.
Fixes: 7f5e3038f0 ("wifi: iwlwifi: map entire SKB when sending AMSDUs")
Signed-off-by: Ilan Peer <ilan.peer@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.bc27fad9b3d5.Ibf43dd18fb652b1a59061204e081f11c9fa34a3f@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 12:41:46 +01:00
Johannes Berg
e0dc2c1bef
wifi: iwlwifi: limit printed string from FW file
...
There's no guarantee here that the file is always with a
NUL-termination, so reading the string may read beyond the
end of the TLV. If that's the last TLV in the file, it can
perhaps even read beyond the end of the file buffer.
Fix that by limiting the print format to the size of the
buffer we have.
Fixes: aee1b6385e ("iwlwifi: support fseq tlv and print fseq version")
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250209143303.cb5f9d0c2f5d.Idec695d53c6c2234aade306f7647b576c7e3d928@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 12:41:46 +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
Miri Korenblit
3f8aa0b8a5
wifi: iwlwifi: fw: avoid using an uninitialized variable
...
iwl_fwrt_read_err_table can return true also when it failed to read
the memory. In this case, err_id argument is not initialized,
but the callers are still using it.
Simply initialize it to 0. If the error table was read successfully it'll
be overridden.
Fixes: 43e0b2ada5 ("wifi: iwlwifi: fw: add an error table status getter")
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Link: https://patch.msgid.link/20250209143303.37cdbba4eb56.I95fe9bd95303b8179f946766558a9f15f4fe254c@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 12:41:45 +01:00
Johannes Berg
7774e39200
wifi: iwlwifi: fw: allocate chained SG tables for dump
...
The firmware dumps can be pretty big, and since we use single
pages for each SG table entry, even the table itself may end
up being an order-5 allocation. Build chained tables so that
we need not allocate a higher-order table here.
This could be improved and cleaned up, e.g. by using the SG
pool code or simply kvmalloc(), but all of that would require
also updating the devcoredump first since that frees it all,
so we need to be more careful. SG pool might also run against
the CONFIG_ARCH_NO_SG_CHAIN limitation, which is irrelevant
here.
Also use _devcd_free_sgtable() for the error paths now, much
simpler especially since it's in two places now.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250209143303.697c7a465ac9.Iea982df46b5c075bfb77ade36f187d99a70c63db@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 12:41:45 +01:00
Johannes Berg
85ccbdc4d3
wifi: iwlwifi: implement dump region split
...
Due to hardware design constraints, a reset handshake may be
necessary even when the firmware has already crashed, with
the dump descriptions indicating which parts should be done
before/after the handshake, if needed. Implement 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/20250205145347.9296e3113d42.Ifb32703fd06a644d08a86b7af1b990738e3c8134@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:48 +01:00
Shaul Triebitz
11ccf9a76f
wifi: iwlwifi: add twt operation cmd
...
Add the firmware API.
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.50a9f7bebe4c.I15ac1361fdab547dbf680a6fa6e88fdc5b177082@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:48 +01:00
Johannes Berg
21e4d29ac0
wifi: iwlwifi: use correct IMR dump variable
...
We shouldn't dump the reg_data here which dumps the last
entry again, it should use the imr_reg_data.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250205145347.3313b18667d1.Iaa9ab66b1d397912a573525e060d39ea01b29d19@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:48 +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
Emmanuel Grumbach
9e8c760471
wifi: iwlwifi: clarify the meaning of IWL_INIT_PHY
...
This is a bit that tells the firmware to wait for the
PHY_CONFIGURATION_CMD before completing its init sequence.
Clarify this in the comment.
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/20250205145347.097510347ae2.Ica00b4b30163a21bf993fa968dd406ee4023fc9e@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:48 +01:00
Emmanuel Grumbach
66672fa681
wifi: iwlwifi: properly set the names for SC devices
...
Sc devices can come with several CRFs. Use the CRF to determine the name
of the device.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250205145347.5bf5d931204e.I5eb435db1b8df46687c43ebae6488c0c4430d530@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:48 +01:00
Emmanuel Grumbach
75a3313f52
wifi: iwlwifi: make no_160 more generic
...
We'll have devices that are EHT capable but don't support 320 MHz and
those devices look like the 320 MHz capable devices, but have distinct
subsystem ID.
We already had the same type of differentiation for HE devices that
support 160 MHz or not.
Enhance that mechanism and now the _IWL_DEV_INFO macro gets an
indication whether the bandwidth should be limited for that specific
device.
The subsystem ID gives a binary answer about the bandwidth limitation
and iwl_pci_find_dev_info() compares this to the list of _IWL_DEV_INFO
entries.
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/20250205145347.1ba406c538a5.I6e24123f60a764aedfeaaac8768c26e136c320cf@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:47 +01:00
Emmanuel Grumbach
1bbc086f49
wifi: iwlwifi: be less aggressive with re-probe
...
Re-probing if we had 2 firmware crash within 3 minutes is really too
aggressive. Drastically reduce the threshold to 7 seconds.
After 7 seconds, a new firmware crash will be considered "new" and not
cause a PCI re-probe.
This allows to pass tests that cause a firmware crash every 10 seconds
and expect to see no impact on the traffic.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250205145347.38f912b047f4.I03f0c10ae9e7ecea639431f3e089b757cc8a4347@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:47 +01:00
Johannes Berg
c9afb4cf6d
wifi: iwlwifi: fw: make iwl_send_dbg_dump_complete_cmd() static
...
It's only used in the same file, so can be static.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250205145347.319b66c00676.I3c06d6c2ee5850a5a89feff7d770e557fd625a6d@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:47 +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
Ilan Peer
bdfc32abd5
wifi: iwlwifi: Indicate support for EPCS
...
Indicate support for EPCS and unsolicited EPCS in the EHT MAC
capabilities.
Signed-off-by: Ilan Peer <ilan.peer@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250205145347.6b1c7cc8a958.Idd72ea53f70eb452d43d99e6c45ff21f891100bd@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:47 +01:00
Johannes Berg
4cb46c1c73
wifi: iwlwifi: cfg: separate 22000/BZ family HT params
...
We're adding a new IWLMLD opmode for just BZ and later
devices. If that's enabled but IWLMVM isn't, the build
fails because 22000 family configs aren't built but BZ
and later refer to it. Rather than trying to make some
new file to build it in all cases, just copy the small
struct.
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/20250205145347.1d6186c23bee.I3c61a6c9e0db3ba6eea4dac63e1547945ad01703@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:47 +01:00
Johannes Berg
8a065234e8
wifi: iwlwifi: enable 320 MHz on slow PCIe links
...
Despite not being able to sustain the full 320 MHz throughput
even at MCS 9, enable 320 MHz on slow PCIe links. This may in
some cases result in frames being dropped (on the air) by the
firmware if they cannot be delivered to the host, but it can
still be better to use 320 MHz.
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/20250205145347.1e5356a3b124.I1224023721aaeff8ebcaa47dff88613c7fd0533a@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:47 +01:00
Miri Korenblit
696cca6430
wifi: iwlwifi: don't warn during reprobe
...
During reprobe, the sw state is being destroyd, and so is the
connection. When the peer STA is being removed, the opmode sends a
command to flush the TXQs of the STA and uses iwl_trans_wait_txq_empty.
This one warns if the FW is not alive, but it really shouldn't if
there is a FW error - and return silently instead, just like we do when
sending a hcmd.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250205145347.76425b10e5a0.I3bf0de2eb090a8b94c4e36d93dd91df61fadb808@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:59:46 +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
Colin Ian King
b7016fd817
wifi: ipw2x00: Fix spelling mistake "stablization" -> "stabilization"
...
There is a spelling mistake in a IPW_DEBUG_INFO message. Fix it.
Signed-off-by: Colin Ian King <colin.i.king@gmail.com >
Link: https://patch.msgid.link/20250202220659.199341-1-colin.i.king@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-02-11 11:57:44 +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
5f60a40ee5
wifi: iwlwifi: Remove old device data
...
The last use of iwl_ax204_name[], iwl_ax221_name[] and iwl_cfg_so_a0_ms_a0
was removed by
commit f473a7fd6d ("wifi: iwlwifi: remove devices that never came out")
Remove them.
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-7-linux@treblig.org
2025-02-11 11:48:29 +01:00