lkml.org 
[lkml]   [2022]   [May]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH v2 00/14] thermal OF rework
From

Hi Rafael,

if you are ok with this series, I'll pick it up.

Is that ok ?




On 07/05/2022 14:54, Daniel Lezcano wrote:
> The thermal framework initialization with the device tree appears to
> be complicated and hard to make it to evolve.
>
> It contains duplication of almost the same thermal generic structures
> and has an assymetric initialization making hard any kind of serious
> changes for more complex features. One of them is the multiple sensors
> support per thermal zone.
>
> In order to set the scene for the aforementioned feature with generic
> code, we need to cleanup and rework the device tree initialization.
>
> However this rework is not obvious because of the multiple components
> entering in the composition of a thermal zone and being initialized at
> different moments. For instance, a cooling device can be initialized
> before a sensor, so the thermal zones must exist before the cooling
> device as well as the sensor. This asynchonous initialization forces
> the thermal zone to be created with fake ops because they are
> mandotory and build a list of cooling devices which is used to lookup
> afterwards when the cooling device driver is registering itself.
>
> As there could be a large number of changes, this first series provide
> some steps forward for a simpler device tree initialization.
>
> Changelog:
> - V2:
> - Drop patch 1/15 which contains too many changes for a simple
> structure renaming. This could be addressed in a separate series as
> it is not necessary for the OF rework
>
> - Fixed of_node_put with gchild not initialized as reported by
> kbuild and Dan Carpenter
>
> - V1:
> - Initial post
>
> Daniel Lezcano (14):
> thermal/core: Change thermal_zone_ops to thermal_sensor_ops
> thermal/core: Add a thermal sensor structure in the thermal zone
> thermal/core: Remove duplicate information when an error occurs
> thermal/of: Replace device node match with device node search
> thermal/of: Remove the device node pointer for thermal_trip
> thermal/of: Move thermal_trip structure to thermal.h
> thermal/core: Remove unneeded EXPORT_SYMBOLS
> thermal/core: Move thermal_set_delay_jiffies to static
> thermal/core: Rename trips to ntrips
> thermal/core: Add thermal_trip in thermal_zone
> thermal/core: Register with the trip points
> thermal/of: Store the trips in the thermal zone
> thermal/of: Use thermal trips stored in the thermal zone
> thermal/of: Initialize trip points separately
>
> .../driver-api/thermal/sysfs-api.rst | 2 +-
> drivers/acpi/thermal.c | 6 +-
> .../ethernet/chelsio/cxgb4/cxgb4_thermal.c | 2 +-
> .../ethernet/mellanox/mlxsw/core_thermal.c | 6 +-
> drivers/net/wireless/intel/iwlwifi/mvm/tt.c | 2 +-
> drivers/platform/x86/acerhdf.c | 2 +-
> drivers/power/supply/power_supply_core.c | 2 +-
> drivers/thermal/armada_thermal.c | 2 +-
> drivers/thermal/broadcom/bcm2835_thermal.c | 2 +-
> drivers/thermal/da9062-thermal.c | 2 +-
> drivers/thermal/dove_thermal.c | 2 +-
> drivers/thermal/gov_bang_bang.c | 6 +-
> drivers/thermal/gov_fair_share.c | 10 +-
> drivers/thermal/gov_power_allocator.c | 22 +-
> drivers/thermal/gov_step_wise.c | 4 +-
> drivers/thermal/imx_thermal.c | 2 +-
> .../intel/int340x_thermal/int3400_thermal.c | 2 +-
> .../int340x_thermal/int340x_thermal_zone.c | 6 +-
> .../int340x_thermal/int340x_thermal_zone.h | 4 +-
> .../processor_thermal_device.c | 4 +-
> .../processor_thermal_device_pci.c | 2 +-
> drivers/thermal/intel/intel_pch_thermal.c | 2 +-
> .../thermal/intel/intel_quark_dts_thermal.c | 2 +-
> drivers/thermal/intel/intel_soc_dts_iosf.c | 2 +-
> drivers/thermal/intel/x86_pkg_temp_thermal.c | 2 +-
> drivers/thermal/kirkwood_thermal.c | 2 +-
> drivers/thermal/rcar_gen3_thermal.c | 6 +-
> drivers/thermal/rcar_thermal.c | 4 +-
> drivers/thermal/samsung/exynos_tmu.c | 6 +-
> drivers/thermal/spear_thermal.c | 2 +-
> drivers/thermal/st/st_thermal.c | 2 +-
> drivers/thermal/tegra/soctherm.c | 10 +-
> drivers/thermal/tegra/tegra30-tsensor.c | 6 +-
> drivers/thermal/thermal_core.c | 102 ++++----
> drivers/thermal/thermal_core.h | 25 +-
> drivers/thermal/thermal_helpers.c | 35 ++-
> drivers/thermal/thermal_hwmon.c | 4 +-
> drivers/thermal/thermal_netlink.c | 10 +-
> drivers/thermal/thermal_of.c | 221 ++++++++++--------
> drivers/thermal/thermal_sysfs.c | 62 ++---
> include/linux/thermal.h | 34 ++-
> 41 files changed, 341 insertions(+), 290 deletions(-)
>


--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

\
 
 \ /
  Last update: 2022-05-13 19:25    [W:0.168 / U:1.856 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site