Re: [PATCH] thermal: Share THERMAL_NO_LIMIT between kernel and DT bindings
From: Rafael J. Wysocki (Intel)
Date: Wed Oct 21 2026 - 09:52:35 EST
On Wed, Oct 21, 2026 at 3:43 PM Daniel Lezcano
<daniel.lezcano@xxxxxxxxxxxxxxxx> wrote:
>
> THERMAL_NO_LIMIT is defined separately in the thermal core and the DT
> bindings, using different expressions for the same no-limit sentinel.
>
> Define it as 0xffffffff in the DT bindings header and include that
> header from linux/thermal.h. Remove the duplicate kernel definition so
> both interfaces use the same unsigned 32-bit value while preserving
> the existing DT encoding.
>
> Signed-off-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxxxxxxxx>
But THERMAL_NO_LIMIT is also used by the core on systems without DT,
so why is defining it in DT bindings not confusing?
> ---
> include/dt-bindings/thermal/thermal.h | 2 +-
> include/linux/thermal.h | 5 ++---
> 2 files changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/include/dt-bindings/thermal/thermal.h b/include/dt-bindings/thermal/thermal.h
> index bc7babb1a67c..018f75febb9f 100644
> --- a/include/dt-bindings/thermal/thermal.h
> +++ b/include/dt-bindings/thermal/thermal.h
> @@ -10,7 +10,7 @@
> #define _DT_BINDINGS_THERMAL_THERMAL_H
>
> /* On cooling devices upper and lower limits */
> -#define THERMAL_NO_LIMIT (~0)
> +#define THERMAL_NO_LIMIT 0xffffffff /* ~0U */
>
> #endif
>
> diff --git a/include/linux/thermal.h b/include/linux/thermal.h
> index 083b4f533933..a6f635f0e1f8 100644
> --- a/include/linux/thermal.h
> +++ b/include/linux/thermal.h
> @@ -17,12 +17,11 @@
> #include <linux/workqueue.h>
> #include <uapi/linux/thermal.h>
>
> +#include <dt-bindings/thermal/thermal.h>
> +
> /* invalid cooling state */
> #define THERMAL_CSTATE_INVALID -1UL
>
> -/* No upper/lower limit requirement */
> -#define THERMAL_NO_LIMIT ((u32)~0)
> -
> /* Default weight of a bound cooling device */
> #define THERMAL_WEIGHT_DEFAULT 0
>
> --
> 2.53.0
>