[PATCH v1 0/3] iwlwifi: mvm: Thermal management fixes

From: Rafael J. Wysocki
Date: Wed Feb 07 2024 - 14:14:01 EST


Hi Everyone,

There are a few thermal management shortcomings in the iwlwifi driver that are
addressed by this series.

First off, the fw_trips_index[] array field in struct iwl_mvm_thermal_device
is only populated and never read, and the code populating it has problems,
so patch [1/3] removes it.

Second, iwl_mvm_thermal_zone_register() populates the trip table after passing
it to thermal_zone_device_register_with_trips() which is too late, because it
can get used before it is populated. It also may as well use THERMAL_TEMP_INVALID
as the "invalid temperature" value. Both these issues are addressed by patch [2/3].

Finally, iwl_mvm_send_temp_report_ths_cmd() accesses the trip tables used during
thermal zone registration directly in order to obtain the current trip point
temperature values, which is not guaranteed to work in the future, because the
core will store the trips information in its own copy of the trip table - see
this patch series:

https://lore.kernel.org/linux-pm/2728491.mvXUDI8C0e@kreacher/

If possible, I'd like to route the $subject series through the thermal tree,
it is requisite for the above one.

Thanks!