[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJZ5v0jKRew48KNXXBJjENxpOhEE5jxwfAcmiuu_4nvhQL-FGA@mail.gmail.com>
Date: Thu, 27 Apr 2023 19:23:32 +0200
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: Daniel Lezcano <daniel.lezcano@...aro.org>
Cc: rui.zhang@...el.com, linux-kernel@...r.kernel.org,
linux-pm@...r.kernel.org
Subject: Re: [PATCH v4 0/6] Thermal zone device structure encapsulation
On Wed, Apr 19, 2023 at 10:33 AM Daniel Lezcano
<daniel.lezcano@...aro.org> wrote:
>
> The thermal zone device structure is defined in the exported thermal
> header include/linux/thermal.h
>
> Given the definition being public, the structure is exposed to the
> external components other than the thermal framework core code. It
> results the drivers are tampering the structure internals like taking
> the lock or changing the field values.
>
> Obviously that is bad for several reasons as the drivers can hook the
> thermal framework behavior and makes very difficult the changes in the
> core code as external components depend on it directly.
>
> Moreover, the thermal trip points being reworked, we don't want the
> drivers to access the trips array directly in the thermal zone
> structure and doing assumptions on how they are organized.
>
> This series provides a second set of changes moving to the thermal
> zone device structure self-encapsulation.
>
> The ACPI and the Menlon drivers are using the thermal zone's device
> fields to create symlinks and new attributes in the sysfs thermal zone
> directory. These changes provide a hopefully temporary wrapper to
> access it in order to allow moving forward in the thermal zone device
> self-encapsulation and a Kconfig option to disable by default such a
> extra sysfs information.
>
> Changelog:
> v4:
> - Encapsulate extra sysfs information inside a function for
> ACPI but remove the Kconfig option
> - Encapsulate extra sysfs information inside a function,
> create the stubs and put that conditionnal to a Kconfig
> option for Menlow
> v3:
> - Split the Kconfig option to be driver related when disabling
> the specific attributes
> - Use the thermal zone's device wrapper to write a trace in
> the pch intel driver
> v2:
> - Add the Kconfig option to remove specific attributes
> - Add a thermal_zone_device() wrapper to access tz->device
>
> Daniel Lezcano (6):
> thermal/core: Encapsulate tz->device field
> thermal/drivers/intel_pch_thermal: Use thermal driver device to write
> a trace
> thermal/drivers/acpi: Use thermal_zone_device()
> thermal/drivers/menlow: Use thermal_zone_device()
> thermal/drivers/acpi: Move to dedicated function sysfs extra attr
> creation
> thermal/drivers/intel_menlow: Make additionnal sysfs information
> optional
>
> drivers/acpi/thermal.c | 47 +++++++++++++++--------
> drivers/thermal/intel/Kconfig | 11 ++++++
> drivers/thermal/intel/intel_menlow.c | 18 +++++++--
> drivers/thermal/intel/intel_pch_thermal.c | 3 +-
> drivers/thermal/thermal_core.c | 6 +++
> include/linux/thermal.h | 1 +
> 6 files changed, 67 insertions(+), 19 deletions(-)
>
> --
Patches [4/6] and [6/6] were superseded by the Menlow driver removal.
I've applied the rest as 6.4-rc material, with some subject
adjustments and after removing some trailing white space in a few
places.
Thanks!
Powered by blists - more mailing lists