Johannes Berg
7aeec8c8d6
wifi: iwlwifi: remove PM mode and send-in-D3
...
Simplify the logic here by tracking only suspended as a
status bit, and remove CMD_SEND_IN_D3 completely. There
is no value, since the op-mode sets the state and also
sends the commands.
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/20250503224231.cc3360761f1e.I72261afc42cee8983198b4660b7d38b7df7963da@changeid
2025-05-07 06:08:00 +03:00
Johannes Berg
11074fce06
wifi: iwlwifi: unexport iwl_trans_pcie_send_hcmd()
...
It doesn't need to be exported since the code calling it
is in the same module.
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/20250503224231.f457a737c663.I8d49b2955a4f2ca47deb664e5fd58e39d612bb63@changeid
2025-05-07 06:08:00 +03:00
Johannes Berg
f451bc6a2c
wifi: iwlwifi: pcie: move wait_command_queue into PCIe
...
There's no reason for this to be declared in the transport
struct, so move the item to the PCIe struct.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250503224231.793f625c5c2d.I64ebb402255d84c2ad045a65e5a4e4891ead5b26@changeid
2025-05-07 06:08:00 +03:00
Johannes Berg
7f1ec1033c
wifi: iwlwifi: pcie: move invalid TX CMD into PCIe
...
There's no reason for this to be in the generic transport
struct, move it into the PCIe code.
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/20250503224231.d4916769a25b.Ife9b0283e50023efb6b3f44e81a6ff3885fe5a8d@changeid
2025-05-07 06:08:00 +03:00
Johannes Berg
cd6d6de694
wifi: iwlwifi: pcie: move ME check data to pcie
...
There's no reason for this data to be in the generic transport
struct, so move it to pcie.
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/20250503224231.0b74726b2651.I2c6bff6945b9288eadf242895906ab1c2cb76389@changeid
2025-05-07 06:08:00 +03:00
Johannes Berg
6a2808a566
wifi: iwlwifi: pcie: rename "continuous" memory
...
What's really meant here is "contiguous", appreviate it
as "contig".
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/20250503224231.8c2ccc0a7469.I6ef88a48c2a2e5c0baa881382017d34eb07f9316@changeid
2025-05-07 06:08:00 +03:00
Johannes Berg
ca00c1806c
wifi: iwlwifi: remove iwl_cmd_groups_verify_sorted()
...
We now have unit tests for the mvm and mld, and dvm isn't
going to change anyway. Remove the runtime checks.
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/20250502155404.e3f01789575d.I4380dcbf3e0ecabc2a8a42c84f448b7dd854bf50@changeid
2025-05-07 06:08:00 +03:00
Johannes Berg
0b897fbd90
wifi: iwlwifi: mvm: add command order checks to kunit
...
We can test this with kunit instead of having the runtime
checks, add a test here to remove the runtime check next.
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/20250502155404.581b60b0833f.I624fb3efc3fa0b155a5da69d7efc39207f133331@changeid
2025-05-07 06:07:11 +03:00
Johannes Berg
332fbf871d
wifi: iwlwifi: pcie: don't call itself indirectly
...
There's no reason for pcie code to call itself indirectly,
directly use the pcie functions instead.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Reviewed-by: Yedidya Ben Shimol <yedidya.ben.shimol@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.52db0b9fba15.I062e766ded86f61ec86104c28b84767f1c29ea78@changeid
2025-05-06 22:22:13 +03:00
Johannes Berg
1fb053d987
wifi: iwlwifi: cfg: remove unnecessary configs
...
Since there are two bytes hole in struct iwl_dev_info, add
a subdev_mask to match with. Also, since the PCI IDs list
needs to match first, and the dev-info list is matched from
the bottom up, remove unnecessary entries.
With this, even though there are new entries from previous
changes, the overall size is slightly reduced.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.689f9b335cbe.I66f1344b6ac7aa3665696637c97fa843c2307423@changeid
2025-05-06 22:22:13 +03:00
Johannes Berg
2870c09518
wifi: iwlwifi: cfg: reduce mac_type to u8
...
In theory, this should be 12 bits, but in practice all the
values we use now fit into 8 bits, so change the mac_type to
make room in struct iwl_dev_info.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.c17d56f4ae0f.I487c8df18aa33c46aa6813bf5aebb5a23da67600@changeid
2025-05-06 22:22:13 +03:00
Johannes Berg
220c01a6fd
wifi: iwlwifi: tests: check for duplicate name strings
...
We don't need the same name multiple times in the binary,
add a check for 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/20250502155404.9adf2790122e.Ia85152c072c7944f0b80e819cf59a51d6adeb49a@changeid
2025-05-06 22:22:13 +03:00
Johannes Berg
1feda9a23e
wifi: iwlwifi: cfg: move all names out of configs
...
Move all the names into dev info structs and remove
the pointer from the configs.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.1538369bffde.Id430ff71f57cbb37c19ecc5b41c831e5ba9b0695@changeid
2025-05-06 22:22:13 +03:00
Johannes Berg
35ac275ebe
wifi: iwlwifi: cfg: finish config split
...
A long time ago, when transport vs. device configs were
introduced, we wanted to eventually have a list of PCI
IDs and a separate list of devices, but for simplicity
embedded the transport config in the whole config, and
it all got confusing.
Finish splitting that out. Doing so requires having more
IWL_DEV_INFO() entries, but the whole trans/cfg aliasing
goes away and the code becomes a lot simpler.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.e03f65c0f693.I076a997f800db455b575008f9488b151738ad7ec@changeid
2025-05-06 22:22:13 +03:00
Johannes Berg
3bf7c3980b
wifi: iwlwifi: cfg: minor fixes for Sc
...
Remove the erroneously named IWL_DEVICE_BZ_COMMON macro
from the Sc file and fix some indentation. Also bump the
minimum FW version since it's not released yet anyway,
right now this is mostly to make the config different
from iwl_bz_cfg which would otherwise be the same with
the upcoming transport config cleanups.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.b313d54b8809.Ia975b6d5460996f2a2761dd3d0fef4a56f1f3e24@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
70e1510505
wifi: iwlwifi: pcie: remove 'ent' argument from alloc
...
The alloc function iwl_trans_pcie_alloc() doesn't use the
'ent' argument, so remove it.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.0351805072bc.Id309b38817edc116bf9a921608a93b7734f21b05@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
d4bdea6931
wifi: iwlwifi: cfg: rename BW_NO_LIMIT to BW_NOT_LIMITED
...
It's not clear that it makes sense to have any matches
for IWL_CFG_ANY for this bit, but let's assume for now
that this makes sense. Then, it's clearer to call this
BW_NOT_LIMITED rather than BW_NO_LIMIT, since the last
change.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.9b39693b505c.Ib47aa6a072a0e61bbba28383ce54764cd859f19c@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
ac1ee8130a
wifi: iwlwifi: cfg: clean up BW limit and subdev matching
...
The BW limit, cores and RF ID are matched in the subdevice ID,
so it doesn't really make sense to have both SUBDEV() match and
a match on any of those three. In particular, for Killer devices
the subdevice ID doesn't even follow the layout, so no matching
should be on those three values at all, only with SUBDEV().
Change the logic around the BW limit to have it more like all
the other things: only a bw_limit match in the dev_info, and
put the actual bandwidth into struct iwl_cfg. This duplicates a
number of those values, but that way the logic is clearer.
Add a test that checks that the three matches mentioned above
are not used in conjunction with SUBDEV(), and check that if
the bw_limit is matched, a BW limit is provided in the config.
Also check that the "Killer" devices have a SUBDEV() match.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.a185eac2736c.I87ee87300c92518a1d3296d3eda9fd4163e9085e@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
337faf17c9
wifi: iwlwifi: tests: check transport configs are not duplicated
...
Add a kunit test to check that all (used) transport config structs
are not duplicated, since there's no value in having the same info
in two places in memory.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.a151af19aaba.Id57f099a899e09318c6218ed1859151f00232b41@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
cccb5b266b
wifi: iwlwifi: tests: check configs are not duplicated
...
Add a kunit test to check that all (used) config structs
are not duplicated, ignoring the name since that can be
handled differently via the dev-info list.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.0cfd9fb8322e.I9567b839405be8d1e4be0bfca7a17b5d222b0158@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
7f0d5a329a
wifi: iwlwifi: cfg: remove iwl_cfg_br
...
This is the same as iwl_cfg_dr, just different by the MAC,
so no need to keep a separate config; remove it.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502155404.83b86e8a182b.Iec7f3027e7058005a98ff6d05cc224ab61b7c44a@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
cfbe1f27e8
wifi: iwlwifi: cfg: remove duplicated Sc device configs
...
The configurations for Sc, Sc2 and Sc2f are all the same,
so keep just a single config 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/20250502151751.2bab15a21306.I079987bc4a1679789bacc1078952aa90c805ffe0@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
3fa1bd49ff
wifi: iwlwifi: cfg: remove duplicated iwl_cfg_gl
...
This really is the same device as covered by iwl_cfg_bz,
just the discrete version. Since discrete vs integrated
is handled in the transport config, there's no need to
have both. Remove iwl_cfg_gl.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.fbb78183dc85.Ic5429009677ae1023cf1f43a655e90409a30c493@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
d5b8529369
wifi: iwlwifi: cfg: remove iwl_ax201_cfg_qu_hr
...
We can handle the name differently, so do that and remove
the extra config entry.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.17fc47c72232.I2cb4476b9bca6e770bd375ad6ce650553dbde0f1@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
a7a9c3a638
wifi: iwlwifi: cfg: remove max_tx_agg_size
...
This was used in some really old devices, and then got
carried forward to Qu devices, even though on those we
don't need it at all since the TX aggregation start is
offloaded to the firmware. Remove it.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.9c2689e2ca8e.I8274b29ca64d9ef9d1e357bbe34ca3a4b97aeb7a@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
7ded94bd6a
wifi: iwlwifi: cfg: remove unused config externs
...
There are two killer configs that no longer exist,
remove the externs.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.64977630101f.I9997a72027d37249620a78091759fa44f9d32c87@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
ef36fd5f0c
wifi: iwlwifi: cfg: unify Killer 1650s/i with Qu/Hr
...
These configs are the same except for the name, but we
can use a separate per-device name to override the name.
So do that, and remove the separate configs.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.a0a8ebbd473a.Iad8bff04138538a8bc9f7920077ea24a699b1ed4@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
0775d2c639
wifi: iwlwifi: cfg: unify Qu/QuZ configs
...
Now that the fw_name_mac is no longer around and derived
from the MAC type automatically, we no longer need to have
different configurations for Qu/QuZ. Combine them. For the
killer AX1650s/i, also fix the names, there was a mixup.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.957fbb5437ce.If51ad0b2c8afaaa131208125af3bc292793613bb@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
f0b71876a9
wifi: iwlwifi: cfg: remove fw_name_mac
...
Instead of having fw_name_mac in the config, derive it
from the MAC type instead.
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/20250502151751.8dba9a2d3546.I41fa594d6a0be163444b90c1ed4b441a949d3899@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
fa22a93e2a
wifi: iwlwifi: tests: check for device names
...
Add a unit test that checks that each device has a name,
either via the specific name entry or the config's name.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.c04287134280.Iedc7c05a41dc8bfe04dc8b95fea38543513eac2d@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
a925fe703d
wifi: iwlwifi: pcie: add entry for Killer AX1650i on AdL-P
...
On AdL-P, we're missing an entry for the Killer(R) Wi-Fi 6
AX1650i 160 MHz adapter. Add an entry to fix that.
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219114
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.483214386aa4.Iad4d2041bfe544875fe9f5c051e23a765f862786@changeid
2025-05-06 22:22:12 +03:00
Johannes Berg
0eea86b245
wifi: iwlwifi: unify some configurations
...
Rather than having individual entries for different MAC
and RF steps, unify the entries by using fw_name_mac and
remove the now duplicated ones.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.b93f34a65822.I57b8235acb675cb6b4e97df2f4a7365f3d9bff18@changeid
2025-05-06 22:22:12 +03:00
Miri Korenblit
ca353a8f96
wifi: iwlwifi: remove duplicated line
...
This line was duplicated by mistake, remove one occurrence.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.a2601e0a08e0.Ie72fadec40e41b8197bfdae16eaa430c64a3e62d@changeid
2025-05-06 22:22:12 +03:00
Somashekhar Puttagangaiah
e3c41f414a
wifi: iwlwifi: pcie: Add support for new device ids
...
Add device support for PeP on ScP
Signed-off-by: Somashekhar Puttagangaiah <somashekhar.puttagangaiah@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.a66928fcc82a.Icbbc7c28855f8de232cb3916901a4da3ac286117@changeid
2025-05-06 22:22:11 +03:00
Johannes Berg
a7872d8061
wifi: iwlwifi: remove TH/TH1 RF types
...
There are the same values as JF2/JF1 respectively, and
that really matches the code names. Remove TH/TH1.
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/20250502151751.7677cffdfae2.Idd76734c310cf5f27de43d24e71b27467ab5905a@changeid
2025-05-06 22:22:11 +03:00
Johannes Berg
c577684874
wifi: iwlwifi: clean up config macro
...
The IWL_DEV_INFO() macro has far too many arguments, and most
of the time they're just "ANY". Use C99 initializers in the
macro to clean that up.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250502151751.42318bb31f0e.Ic3a40afcd182b6e1802bb8f8a1a845b20608e328@changeid
2025-05-06 22:22:11 +03:00
Johannes Berg
8c7371126f
wifi: iwlwifi: mvm: remove nl80211 testmode
...
This was used in the past for NoA and/or beacon filter
testing, but these days everything is tested via debugfs
or special FW commands, so remove the testmode.
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/20250430155443.751018e0ed8e.I21557a9a3d57234187f1b0b2182a1714ecc66b9a@changeid
2025-05-06 22:22:11 +03:00
Johannes Berg
21dccdfaf6
wifi: iwlwifi: mld: set rx_mpdu_cmd_hdr_size
...
Set rx_mpdu_cmd_hdr_size so that tracing will correctly include
the frame header.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250430155443.caf1d8e2bae3.I82d89bc8d128f78159a8a11b1573574dacdeb99e@changeid
2025-05-06 22:22:11 +03:00
Johannes Berg
9585559c24
wifi: iwlwifi: dvm: fix various W=1 warnings
...
Fix warnings occurring with W=1, mostly const and one about
pointer arithmetic.
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/20250430155443.3ef1e4f1cccb.Ic41d3f3721e8bd9df9cd50242232110c4a93e873@changeid
2025-05-06 22:22:11 +03:00
Avraham Stern
ac5215a7d1
wifi: iwlwifi: mld: force the responder to use the full bandwidth
...
When a soft AP is started, it may not use the full configured
bandwidth (e.g. if no station is connected). As a result, the
responder will not support the configured bandwidth. Since the
responder supports ranging with unassociated stations, there is
no indication to the driver when the full bandwidth should be enabled.
Fix it by configuring the AP to always use the full bandwidth when a
responder is supported.
Signed-off-by: Avraham Stern <avraham.stern@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/20250430155443.620fe8099fff.Id50675f4d4c524b0a7ee602c48af538a327010e0@changeid
2025-05-06 22:22:11 +03:00
Avraham Stern
94f086a4db
wifi: iwlwifi: mld: start AP with the correct bandwidth
...
When a channel context is added, it is still not assigned to the link
and the link is not yet active. As a result, the channel context
min_def is used when the AP is started, even when the full bandwidth
should be used.
Fix it by updating the PHY channel context when the link is already
active so the full bandwidth is used when needed.
Signed-off-by: Avraham Stern <avraham.stern@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250430155443.30b043b10fb1.I62c2aa58687e4796b759fa68132122119a337b49@changeid
2025-05-06 22:22:11 +03:00
Daniel Gabay
a4911d0178
wifi: iwlwifi: mld: add monitor internal station
...
This is needed for TX injection over monitor interface.
Signed-off-by: Daniel Gabay <daniel.gabay@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250430155443.5ec460d3f1c2.Ic8456efb4cdd722dcd9c4910a1569ef9d3e4e066@changeid
2025-05-06 22:22:11 +03:00
Emmanuel Grumbach
64667ab856
wifi: iwlwifi: mld: support for COMPRESSED_BA_RES_API_S_VER_7
...
The rate format changed but since we don't use the rate, just claim
support for this new 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/20250430155443.c4be90e242ff.Ie8a0f0d6320613bd8c5cb6c82a063069fffa3b67@changeid
2025-05-06 22:22:11 +03:00
Miri Korenblit
c766c8bc11
wifi: iwlwifi: mvm: support iwl_mac_power_cmd version 2
...
This version fixes the issue that was worked around by
iwl_mvm_smps_workaround. So for FWs with the new version don't do the
workaround, and set new bit added in this version when appropriate.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Link: https://patch.msgid.link/20250430155443.5c9a0181a84b.I9a03bc07a7b3f6e37cc1c0c1af5719e765a05897@changeid
2025-05-06 22:22:11 +03:00
Johannes Berg
909e1be654
wifi: iwlwifi: implement TOP reset
...
Implement TOP reset (new in the SC family), which resets much
of the (shared) hardware without resetting the bus interfaces.
Use it to recover from TOP fatal error, or if manually used;
we'll need to add using it for FSEQ updates later.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250430155443.12f38024a3b4.I9c22f6c4f6de64f3b34ccd898370ec1859ab7dbf@changeid
2025-05-06 22:22:07 +03:00
Johannes Berg
abbcea13bc
wifi: iwlwifi: mld: handle SW reset w/o NIC error
...
For the upcoming TOP reset, the sw_reset() method may be
called without nic_error() before it. In this case, also
abort any still pending scans and set in_hw_restart.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250430155443.b732ff4e9f31.I3948c2d892f1ee82b3a6bf9f123be02a1eaa82e5@changeid
2025-05-06 20:23:38 +03:00
Miri Korenblit
792eb35718
wifi: iwlwifi: mvm: support ROC command version 6
...
This was suppsed to be supported only in iwlmld, but turns out that it
will be needed also in iwlmvm. Add support for it.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Link: https://patch.msgid.link/20250430155443.d118ee63aca4.I12ea349ca6587d8ea606f6ece4a9f3c0c2bb1494@changeid
2025-05-06 20:23:35 +03:00
Miri Korenblit
bd795a65c2
wifi: iwlwifi: mld: support iwl_mac_power_cmd version 2
...
This version fixes the issue that was worked around by
iwl_mld_smps_wa. So for FWs with the new version don't do the
workaround, and set new bit added in this version when appropriate.
While at it, rename iwl_mld_smps_wa to iwl_mld_smps_workaround.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Link: https://patch.msgid.link/20250430155443.77fdb18d1ee0.I93688612ac4f6ec99da9bc54bee16554ef40a40b@changeid
2025-05-06 20:23:31 +03:00
Emmanuel Grumbach
0bd6ede71a
wifi: iwlwifi: add support for ALIVE v8
...
The firmware added a field to describe the platform Id.
Just print it.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250430155443.dc387ae36e0f.Iafd364c6b23749597b658015be97295ad0c1730d@changeid
2025-05-06 20:23:27 +03:00
Somashekhar Puttagangaiah
f7cc80b871
wifi: iwlwifi: mld: add kunit test for emlsr with bt on
...
add kunit test to validate entering and exiting
emlsr scenarios when the bt is on with certain
penalty on wifi.
Signed-off-by: Somashekhar Puttagangaiah <somashekhar.puttagangaiah@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250430155443.6621494fa412.If89b4b2dab308d825ca02284dd8e0030675d7af5@changeid
2025-05-06 20:23:24 +03:00