1. 15 Jul, 2024 37 commits
  2. 10 Jul, 2024 1 commit
  3. 08 Jul, 2024 1 commit
  4. 04 Jul, 2024 1 commit
    • Rafael J. Wysocki's avatar
      thermal: core: Call monitor_thermal_zone() if zone temperature is invalid · a8a26177
      Rafael J. Wysocki authored
      Commit 202aa0d4 ("thermal: core: Do not call handle_thermal_trip()
      if zone temperature is invalid") caused __thermal_zone_device_update()
      to return early if the current thermal zone temperature was invalid.
      
      This was done to avoid running handle_thermal_trip() and governor
      callbacks in that case which led to confusion.  However, it went too
      far because monitor_thermal_zone() still needs to be called even when
      the zone temperature is invalid to ensure that it will be updated
      eventually in case thermal polling is enabled and the driver has no
      other means to notify the core of zone temperature changes (for example,
      it does not register an interrupt handler or ACPI notifier).
      
      Also if the .set_trips() zone callback is expected to set up monitoring
      interrupts for a thermal zone, it has to be provided with valid
      boundaries and that can only happen if the zone temperature is known.
      
      Accordingly, to ensure that __thermal_zone_device_update() will
      run again after a failing zone temperature check, make it call
      monitor_thermal_zone() regardless of whether or not the zone
      temperature is valid and make the latter schedule a thermal zone
      temperature update if the zone temperature is invalid even if
      polling is not enabled for the thermal zone.
      
      Fixes: 202aa0d4 ("thermal: core: Do not call handle_thermal_trip() if zone temperature is invalid")
      Reported-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
      Tested-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      Link: https://patch.msgid.link/2764814.mvXUDI8C0e@rjwysocki.net
      [ rjw: Changed THERMAL_RECHECK_DELAY_MS to 250 ]
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      a8a26177