Johannes Berg
2538406172
wifi: iwlwifi: cfg: clean up dr/br configs
...
We don't need the configs that won't end up being used, such as
the "br" config for discrete devices, remove them. Also remove
the module firmware for test chips, that's never needed.
For now keep the iwl_dr_mac_cfg even if it's unused, we'll add
platforms with it once we have their PCI IDs.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250511195137.15e2056ec40f.I75a6ce4ad0b14d2b4413615f05523a8f62f08954@changeid
2025-05-12 17:19:07 +03:00
Johannes Berg
fe80b0e53d
wifi: iwlwifi: cfg: clean up Sc/Dr/Br configs
...
For now, the WH and PE radios require the same config as
FM, so just add a #define for those instead of copying
the data. Since this is true, Sc/Dr/Br all used the same
configs for all RF types, but that's confusing, so now
use the defined WH/PE names for the correct combinations.
We can also now enable the unit test that ensures we have
no duplicate RF configs.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250509104454.2582160-8-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-10 21:42:40 +03:00
Johannes Berg
b8eee90f0b
wifi: iwlwifi: cfg: unify num_rbds config
...
This should depend on both the RF (VHT/HE/EHT support) and
the MAC (<=22000 can put multiple frames into one buffer),
so unify the config in the struct iwl_cfg to just have it
sized according to the RF, and then double it for all the
MACs starting from AX210 (So/Ty).
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250509104454.2582160-3-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-10 21:42:16 +03:00
Johannes Berg
03e433545c
wifi: iwlwifi: cfg: add ucode API min/max to MAC config
...
In some older devices, the min/max firmware API supported by
the driver depends on the specific device, when sharing the
the same MAC (config). For most newer devices, it really is
dependent on the MAC instead, since the firmware was frozen
for certain MAC types. However, in the future we expect also
freezes for RF types there.
To handle this most generally, add an API min/max to the MAC
config and then use the narrowest range prescribed by both,
if set.
For the newer MACs since 9000, move the configuration, there
was only a freeze on MAC+RF lines so far.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250509104454.2582160-2-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-10 21:41:51 +03:00
Johannes Berg
857ecb8524
wifi: iwlwifi: cfg: move MAC parameters to MAC data
...
There are a number of MAC parameters that are in the iwl_cfg
(which is the last config matched to the MAC/RF combination).
This isn't necessary, there are many more of those than MACs,
so move (most of) the data into the MAC family config struct.
Note that DCCM information remains for use by older devices,
and on 9000 series it'll be in struct iwl_cfg but be ignored
when the CRF is in a Qu/So platform.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250508121306.1277801-15-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-09 15:38:47 +03:00
Johannes Berg
92e1d69c20
wifi: iwlwifi: cfg: remove DCCM offsets from new devices
...
This is only used with old-style debug dump, which isn't
supported on newer devices, so remove the data.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250508121306.1277801-14-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-09 15:38:43 +03:00
Johannes Berg
9db3594222
wifi: iwlwifi: cfg: remove eeprom_size from new devices
...
Since 22000 series, the data is read by the firmware and the
driver doesn't need to know, remove the useless setting.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250508121306.1277801-13-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-09 15:38:39 +03:00
Johannes Berg
264e744fec
wifi: iwlwifi: rename struct iwl_base_params
...
These are (going to be) base MAC parameters that are identical
even for different platforms with the same MAC, so rename the
structure accordingly, calling it iwl_family_base_params.
Also rename the pointer to it so the dereferencing is a bit
shorter.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250508121306.1277801-12-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-09 15:38:35 +03:00
Johannes Berg
b9b537c15f
wifi: iwlwifi: cfg: remove rf_id field
...
This field is always set for >= 9000 series, but then we
already check that, so it's not needed. Remove it.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250508121306.1277801-11-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-09 15:38:31 +03:00
Johannes Berg
32e54927fe
wifi: iwlwifi: cfg: remove dbgc_supported field
...
This field is unused, remove it.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250508121306.1277801-10-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-09 15:38:27 +03:00
Johannes Berg
c96a364910
wifi: iwlwifi: rename cfg_trans_params to mac_cfg
...
Since 9000 series devices, the devices are split into MAC and
CRF parts. Currently, "struct iwl_cfg" reflects some MAC and
some RF parameters, but we want to clean this up and move the
MAC data to what's now "struct iwl_cfg_trans_params". As the
first step, to reflect the intent, rename this structure.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250508121306.1277801-9-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-09 15:37:54 +03:00
Johannes Berg
a12a287212
wifi: iwlwifi: cfg: remove nvm_hw_section_num from new devices
...
This value hasn't been used since unified firmware in 22000
series, so there's no need to set the value for that or
newer devices. Remove it.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250508121306.1277801-7-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-09 15:37:45 +03:00
Johannes Berg
81ca8c5fae
wifi: iwlwifi: cfg: inline HT params
...
With just a handful of values in two bytes, the params are
smaller than the pointer to them. Inline them and save some
space.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20250506194102.3407967-14-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
2025-05-09 15:37:06 +03:00
Johannes Berg
5f585528ff
wifi: iwlwifi: cfg: use minimum API version 97 for Sc/Dr
...
For Sc 97 might get used (at least for now) and for Dr
the older 96 won't get used. Change them both to 97.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250504132447.2ab49f2265ce.I45623943fdcac3462d96e54dbb7fdad68bdf3693@changeid
2025-05-07 06:08:01 +03:00
Miri Korenblit
3193282ae0
wifi: iwlwifi: bump FW API to 99 for BZ/SC/DR devices
...
Start supporting API version 99 for those devices.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250504132447.677db25ce2c7.Ie4a7a00ff3562bfed1e8ac1fb42c1382cd24a486@changeid
2025-05-07 06:08:01 +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
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
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
Miri Korenblit
d8bc6f24c6
wifi: iwlwifi: bump FW API to 98 for BZ/SC/DR devices
...
Start supporting API versions 97 and 98 for those devices.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250308231427.55b5455795aa.I333f1e7fa31f9da1d40f668660c1e25b93ff469e@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-03-11 10:54:02 +01:00
Johannes Berg
5f0ab2f35a
wifi: iwlwifi: mark Br device not integrated
...
This is a discrete device, don't mark it as integrated.
This also means we cannot set the LTR delay.
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com >
Link: https://patch.msgid.link/20250308231427.9bb69393fcc9.I197129383e5441c8139cbb0e810ae0b71198a37c@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-03-11 10:54:01 +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
Somashekhar(Som)
9b45ba3976
wifi: iwlwifi: pcie: Add support for new device ids
...
Add support for new device-ids 0x2730 and 0x272F.
Signed-off-by: Somashekhar(Som) <somashekhar.puttagangaiah@intel.com >
Reviewed-by: Johannes Berg <johannes.berg@intel.com >
Link: https://patch.msgid.link/20241226174257.6a0db60436e7.I50a66544dde6c88acd9abe4b31badab96ef04cfc@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com >
2025-01-13 14:00:55 +01:00