ee92656e | 11-May-2025 |
Johannes Berg <johannes.berg@intel.com> |
wifi: iwlwifi: cfg: reduce configuration struct size
We don't need the CORES() match nor jacket (which really doesn't even make sense to match to the RF anyway), and since the subdevice masks we car
wifi: iwlwifi: cfg: reduce configuration struct size
We don't need the CORES() match nor jacket (which really doesn't even make sense to match to the RF anyway), and since the subdevice masks we care about are contiguous, we can encode them as highest and lowest bit set (automatically.) By encoding whether to match or not as separate flags and taking advantage of the limited range of the RF type, step and ID we can reduce the amount of memory needed for the table, while also making the logic (apart perhaps from the subdevice mask) easier to understand.
This reduces the size of the module by about 1.5KiB on x86-64.
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.38a805a7c96f.Ieece00476cea6054b0827cd075eb8ba5943373df@changeid
show more ...
|
d227b73f | 10-May-2025 |
Johannes Berg <johannes.berg@intel.com> |
wifi: iwlwifi: cfg: remove MAC type/step matching
Now that it's all split into MAC and RF configs, remove the matching on MAC type and step. If we ever need to do something based on the MAC step, we
wifi: iwlwifi: cfg: remove MAC type/step matching
Now that it's all split into MAC and RF configs, remove the matching on MAC type and step. If we ever need to do something based on the MAC step, we'll have to find some new mechanism (since the MAC type is known already from the PCI IDs table, but not the step), or just handle the (likely small) differences in code.
Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20250510214621.fca99a5ab315.Iae27b781221fd29845493adf2c29d9e4f7a9c33b@changeid
show more ...
|
d6bf0778 | 04-May-2025 |
Johannes Berg <johannes.berg@intel.com> |
wifi: iwlwifi: tests: simplify devinfo_no_trans_cfg_dups()
There's no need to build a list of individual configs first and then compare them, we can just go through all of them and compare if the po
wifi: iwlwifi: tests: simplify devinfo_no_trans_cfg_dups()
There's no need to build a list of individual configs first and then compare them, we can just go through all of them and compare if the pointers aren't the same. The complexity (in terms of number of comparisons) is a bit higher that way, but it's just a test and the code complexity is much lower without 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/20250504132447.85911c59d96a.I540f464229da3566d1726dfb61b46002fbb73bde@changeid
show more ...
|
220c01a6 | 02-May-2025 |
Johannes Berg <johannes.berg@intel.com> |
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-
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
show more ...
|
35ac275e | 02-May-2025 |
Johannes Berg <johannes.berg@intel.com> |
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 sim
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
show more ...
|
ac1ee813 | 02-May-2025 |
Johannes Berg <johannes.berg@intel.com> |
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 an
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
show more ...
|
337faf17 | 02-May-2025 |
Johannes Berg <johannes.berg@intel.com> |
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
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
show more ...
|