Merge tag 'thermal-v6.8-rc1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git...
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 2 Jan 2024 12:45:36 +0000 (13:45 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 2 Jan 2024 12:45:36 +0000 (13:45 +0100)
Merge thermal control material for 6.8-rc1 from Daniel Lezcano:

"- Converted Mediatek Thermal to the json-schema (Rafał Miłecki)

 - Fixed DT bindings issue on Loongson (Binbin Zhou)

 - Fixed returning NULL instead of -ENODEV on Loogsoo (Binbin Zhou)

 - Added the DT binding for the tsens on SM8650 platform (Neil Armstrong)

 - Added a reboot on critical option feature (Fabio Estevam)

 - Made usage of DEFINE_SIMPLE_DEV_PM_OPS on AmLogic (Uwe Kleine-König)

 - Added the D1/T113s THS controller support on Sun8i (Maxim Kiselev)

 - Fixed example in the DT binding for QCom SPMI (Johan Hovold)

 - Fixed compilation warning for the tmon utility (Florian Eckert)

 - Added interrupt based configuration on Exynos along with a set of
   related cleanups (Mateusz Majewski)"

* tag 'thermal-v6.8-rc1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/thermal/linux: (24 commits)
  thermal/drivers/exynos: Use set_trips ops
  thermal/drivers/exynos: Use BIT wherever possible
  thermal/drivers/exynos: Split initialization of TMU and the thermal zone
  thermal/drivers/exynos: Stop using the threshold mechanism on Exynos 4210
  thermal/drivers/exynos: Simplify regulator (de)initialization
  thermal/drivers/exynos: Handle devm_regulator_get_optional return value correctly
  thermal/drivers/exynos: Wwitch from workqueue-driven interrupt handling to threaded interrupts
  thermal/drivers/exynos: Drop id field
  thermal/drivers/exynos: Remove an unnecessary field description
  tools/thermal/tmon: Fix compilation warning for wrong format
  dt-bindings: thermal: qcom-spmi-adc-tm5/hc: Clean up examples
  dt-bindings: thermal: qcom-spmi-adc-tm5/hc: Fix example node names
  thermal/drivers/sun8i: Add D1/T113s THS controller support
  dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller
  thermal: amlogic: Use DEFINE_SIMPLE_DEV_PM_OPS for PM functions
  thermal: amlogic: Make amlogic_thermal_disable() return void
  thermal/thermal_of: Allow rebooting after critical temp
  reboot: Introduce thermal_zone_device_critical_reboot()
  thermal/core: Prepare for introduction of thermal reboot
  dt-bindings: thermal-zones: Document critical-action
  ...

1  2 
drivers/thermal/thermal_core.c
drivers/thermal/thermal_core.h

index 58958288b5594d38c5dcd86603ed57785185d2d9,0d761afb7cbc1b0d489872f2932956511627dbd4..fa88d870724166b9203fcb8c42ce92811423e1f4
@@@ -309,16 -311,7 +309,16 @@@ static void handle_non_critical_trips(s
                       def_governor->throttle(tz, trip);
  }
  
- void thermal_zone_device_critical(struct thermal_zone_device *tz)
 +void thermal_governor_update_tz(struct thermal_zone_device *tz,
 +                              enum thermal_notify_event reason)
 +{
 +      if (!tz->governor || !tz->governor->update_tz)
 +              return;
 +
 +      tz->governor->update_tz(tz, reason);
 +}
 +
+ static void thermal_zone_device_halt(struct thermal_zone_device *tz, bool shutdown)
  {
        /*
         * poweroff_delay_ms must be a carefully profiled positive value.
index 479c3b6917e4f8de4e94e56af7ef51dd14119ffb,b5e6743bd15758d85d4eeecee7070d3344045173..e6a2b6f97be8709e0736113121f539ced5a7e526
@@@ -114,8 -114,7 +114,9 @@@ int thermal_zone_device_set_policy(stru
  int thermal_build_list_of_policies(char *buf);
  void __thermal_zone_device_update(struct thermal_zone_device *tz,
                                  enum thermal_notify_event event);
+ void thermal_zone_device_critical_reboot(struct thermal_zone_device *tz);
 +void thermal_governor_update_tz(struct thermal_zone_device *tz,
 +                              enum thermal_notify_event reason);
  
  /* Helpers */
  #define for_each_trip(__tz, __trip)   \