• Linus Torvalds's avatar
    Merge tag 'thermal-6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 1b72607d
    Linus Torvalds authored
    Pull thermal control updates from Rafael Wysocki:
     "The majority of changes here are related to the general switch-over to
      using arrays of generic trip point structures registered along with a
      thermal zone instead of trip point callbacks (this has been done
      mostly by Daniel Lezcano with some help from yours truly on the Intel
      drivers front).
    
      Apart from that and the related reorganization of code, there are some
      enhancements of the existing driver and a new Mediatek Low Voltage
      Thermal Sensor (LVTS) driver. The Intel powerclamp undergoes a major
      rework so it will use the generic idle_inject facility for CPU idle
      time injection going forward and it will take additional module
      parameters for specifying the subset of CPUs to be affected by it
      (work done by Srinivas Pandruvada).
    
      Also included are assorted fixes and a whole bunch of cleanups.
    
      Specifics:
    
       - Rework a large bunch of drivers to use the generic thermal trip
         structure and use the opportunity to do more cleanups by removing
         unused functions from the OF code (Daniel Lezcano)
    
       - Remove core header inclusion from drivers (Daniel Lezcano)
    
       - Fix some locking issues related to the generic thermal trip rework
         (Johan Hovold)
    
       - Fix a crash when requesting the critical temperature on tegra,
         which is related to the generic trip point work (Jon Hunter)
    
       - Clean up thermal device unregistration code (Viresh Kumar)
    
       - Fix and clean up thermal control core initialization error code
         paths (Daniel Lezcano)
    
       - Relocate the trip points handling code into a separate file (Daniel
         Lezcano)
    
       - Make the thermal core fail registration of thermal zones and
         cooling devices if the thermal class has not been registered
         (Rafael Wysocki)
    
       - Add trip point initialization helper functions for ACPI-defined
         trip points and modify two thermal drivers to use them (Rafael
         Wysocki, Daniel Lezcano)
    
       - Make the core thermal control code use sysfs_emit_at() instead of
         scnprintf() where applicable (ye xingchen)
    
       - Consolidate code accessing the Intel TCC (Thermal Control
         Circuitry) MSRs by introducing library functions for that and
         making the TCC-related code in thermal drivers use them (Zhang Rui)
    
       - Enhance the x86_pkg_temp_thermal driver to support dynamic tjmax
         changes (Zhang Rui)
    
       - Address an "unsigned expression compared with zero" warning in the
         intel_soc_dts_iosf thermal driver (Yang Li)
    
       - Update comments regarding two functions in the Intel Menlow thermal
         driver (Deming Wang)
    
       - Use sysfs_emit_at() instead of scnprintf() in the int340x thermal
         driver (ye xingchen)
    
       - Make the intel_pch thermal driver support the Wellsburg PCH (Tim
         Zimmermann)
    
       - Modify the intel_pch and processor_thermal_device_pci thermal
         drivers use generic trip point tables instead of thermal zone trip
         point callbacks (Daniel Lezcano)
    
       - Add production mode attribute sysfs attribute to the int340x
         thermal driver (Srinivas Pandruvada)
    
       - Rework dynamic trip point updates handling and locking in the
         int340x thermal driver (Rafael Wysocki)
    
       - Make the int340x thermal driver use a generic trip points table
         instead of thermal zone trip point callbacks (Rafael Wysocki,
         Daniel Lezcano)
    
       - Clean up and improve the int340x thermal driver (Rafael Wysocki)
    
       - Simplify and clean up the intel_pch thermal driver (Rafael Wysocki)
    
       - Fix the Intel powerclamp thermal driver and make it use the common
         idle injection framework (Srinivas Pandruvada)
    
       - Add two module parameters, cpumask and max_idle, to the Intel
         powerclamp thermal driver to allow it to affect only a specific
         subset of CPUs instead of all of them (Srinivas Pandruvada)
    
       - Make the Intel quark_dts thermal driver Use generic trip point
         objects instead of its own trip point representation (Daniel
         Lezcano)
    
       - Add toctree entry for thermal documents and fix two issues in the
         Intel powerclamp driver documentation (Bagas Sanjaya)
    
       - Use strscpy() to instead of strncpy() in the thermal core (Xu
         Panda)
    
       - Fix thermal_sampling_exit() (Vincent Guittot)
    
       - Add Mediatek Low Voltage Thermal Sensor (LVTS) driver (Balsam
         Chihi)
    
       - Add r8a779g0 RCar support to the rcar_gen3 thermal driver (Geert
         Uytterhoeven)
    
       - Fix useless call to set_trips() when resuming in the rcar_gen3
         thermal control driver and add interrupt support detection at init
         time to it (Niklas Söderlund)
    
       - Fix memory corruption in the hi3660 thermal driver (Yongqin Liu)
    
       - Fix include path for libnl3 in pkg-config file for libthermal
         (Vibhav Pant)
    
       - Remove syscfg-based driver for st as the platform is not supported
         any more (Alain Volmat)"
    
    * tag 'thermal-6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (135 commits)
      thermal/drivers/st: Remove syscfg based driver
      thermal: Remove core header inclusion from drivers
      tools/lib/thermal: Fix include path for libnl3 in pkg-config file.
      thermal/drivers/hisi: Drop second sensor hi3660
      thermal/drivers/rcar_gen3_thermal: Fix device initialization
      thermal/drivers/rcar_gen3_thermal: Create device local ops struct
      thermal/drivers/rcar_gen3_thermal: Do not call set_trips() when resuming
      thermal/drivers/rcar_gen3: Add support for R-Car V4H
      dt-bindings: thermal: rcar-gen3-thermal: Add r8a779g0 support
      thermal/drivers/mediatek: Add the Low Voltage Thermal Sensor driver
      dt-bindings: thermal: mediatek: Add LVTS thermal controllers
      thermal/drivers/mediatek: Relocate driver to mediatek folder
      tools/lib/thermal: Fix thermal_sampling_exit()
      Documentation: powerclamp: Fix numbered lists formatting
      Documentation: powerclamp: Escape wildcard in cpumask description
      Documentation: admin-guide: Add toctree entry for thermal docs
      thermal: intel: powerclamp: Add two module parameters
      Documentation: admin-guide: Move intel_powerclamp documentation
      thermal: core: Use sysfs_emit_at() instead of scnprintf()
      thermal: intel: powerclamp: Fix duration module parameter
      ...
    1b72607d
idle_inject.c 13 KB