mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-11-01 09:13:37 +00:00 
			
		
		
		
	The Devicetree bindings document does not have to say in the title that
it is a "binding", but instead just describe the hardware.
Drop trailing "bindings" in various forms (also with trailing full
stop):
  find Documentation/devicetree/bindings/ -type f -name '*.yaml' \
    -not -name 'trivial-devices.yaml' \
    -exec sed -i -e 's/^title: \(.*\) [bB]indings\?\.\?$/title: \1/' {} \;
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Acked-by: Matti Vaittinen <mazziesaccount@gmail.com> # ROHM
Acked-by: Ulf Hansson <ulf.hansson@linaro.org> # MMC
Acked-by: Stephen Boyd <sboyd@kernel.org> # clk
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> # input
Acked-by: Mark Brown <broonie@kernel.org>
Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> # media
Acked-by: Sebastian Reichel <sre@kernel.org> # power
Acked-by: Viresh Kumar <viresh.kumar@linaro.org> # cpufreq
Link: https://lore.kernel.org/r/20221216163815.522628-7-krzysztof.kozlowski@linaro.org
Signed-off-by: Rob Herring <robh@kernel.org>
		
	
			
		
			
				
	
	
		
			122 lines
		
	
	
	
		
			4.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			122 lines
		
	
	
	
		
			4.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
# SPDX-License-Identifier: (GPL-2.0)
 | 
						|
# Copyright 2020 Linaro Ltd.
 | 
						|
%YAML 1.2
 | 
						|
---
 | 
						|
$id: http://devicetree.org/schemas/thermal/thermal-cooling-devices.yaml#
 | 
						|
$schema: http://devicetree.org/meta-schemas/core.yaml#
 | 
						|
 | 
						|
title: Thermal cooling device
 | 
						|
 | 
						|
maintainers:
 | 
						|
  - Amit Kucheria <amitk@kernel.org>
 | 
						|
 | 
						|
description: |
 | 
						|
  Thermal management is achieved in devicetree by describing the sensor hardware
 | 
						|
  and the software abstraction of cooling devices and thermal zones required to
 | 
						|
  take appropriate action to mitigate thermal overload.
 | 
						|
 | 
						|
  The following node types are used to completely describe a thermal management
 | 
						|
  system in devicetree:
 | 
						|
   - thermal-sensor: device that measures temperature, has SoC-specific bindings
 | 
						|
   - cooling-device: device used to dissipate heat either passively or actively
 | 
						|
   - thermal-zones: a container of the following node types used to describe all
 | 
						|
     thermal data for the platform
 | 
						|
 | 
						|
  This binding describes the cooling devices.
 | 
						|
 | 
						|
  There are essentially two ways to provide control on power dissipation:
 | 
						|
    - Passive cooling: by means of regulating device performance. A typical
 | 
						|
      passive cooling mechanism is a CPU that has dynamic voltage and frequency
 | 
						|
      scaling (DVFS), and uses lower frequencies as cooling states.
 | 
						|
    - Active cooling: by means of activating devices in order to remove the
 | 
						|
      dissipated heat, e.g. regulating fan speeds.
 | 
						|
 | 
						|
  Any cooling device has a range of cooling states (i.e. different levels of
 | 
						|
  heat dissipation). They also have a way to determine the state of cooling in
 | 
						|
  which the device is. For example, a fan's cooling states correspond to the
 | 
						|
  different fan speeds possible. Cooling states are referred to by single
 | 
						|
  unsigned integers, where larger numbers mean greater heat dissipation. The
 | 
						|
  precise set of cooling states associated with a device should be defined in
 | 
						|
  a particular device's binding.
 | 
						|
 | 
						|
select: true
 | 
						|
 | 
						|
properties:
 | 
						|
  "#cooling-cells":
 | 
						|
    description:
 | 
						|
      Must be 2, in order to specify minimum and maximum cooling state used in
 | 
						|
      the cooling-maps reference. The first cell is the minimum cooling state
 | 
						|
      and the second cell is the maximum cooling state requested.
 | 
						|
    const: 2
 | 
						|
 | 
						|
additionalProperties: true
 | 
						|
 | 
						|
examples:
 | 
						|
  - |
 | 
						|
    #include <dt-bindings/interrupt-controller/arm-gic.h>
 | 
						|
    #include <dt-bindings/thermal/thermal.h>
 | 
						|
 | 
						|
    // Example 1: Cpufreq cooling device on CPU0
 | 
						|
    cpus {
 | 
						|
            #address-cells = <2>;
 | 
						|
            #size-cells = <0>;
 | 
						|
 | 
						|
            CPU0: cpu@0 {
 | 
						|
                    device_type = "cpu";
 | 
						|
                    compatible = "qcom,kryo385";
 | 
						|
                    reg = <0x0 0x0>;
 | 
						|
                    enable-method = "psci";
 | 
						|
                    cpu-idle-states = <&LITTLE_CPU_SLEEP_0>,
 | 
						|
                                      <&LITTLE_CPU_SLEEP_1>,
 | 
						|
                                      <&CLUSTER_SLEEP_0>;
 | 
						|
                    capacity-dmips-mhz = <607>;
 | 
						|
                    dynamic-power-coefficient = <100>;
 | 
						|
                    qcom,freq-domain = <&cpufreq_hw 0>;
 | 
						|
                    #cooling-cells = <2>;
 | 
						|
                    next-level-cache = <&L2_0>;
 | 
						|
                    L2_0: l2-cache {
 | 
						|
                            compatible = "cache";
 | 
						|
                            cache-unified;
 | 
						|
                            cache-level = <2>;
 | 
						|
                            next-level-cache = <&L3_0>;
 | 
						|
                            L3_0: l3-cache {
 | 
						|
                                    compatible = "cache";
 | 
						|
                                    cache-unified;
 | 
						|
                                    cache-level = <3>;
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
          };
 | 
						|
 | 
						|
          /* ... */
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
    /* ... */
 | 
						|
 | 
						|
    thermal-zones {
 | 
						|
            cpu0-thermal {
 | 
						|
                    polling-delay-passive = <250>;
 | 
						|
                    polling-delay = <1000>;
 | 
						|
 | 
						|
                    thermal-sensors = <&tsens0 1>;
 | 
						|
 | 
						|
                    trips {
 | 
						|
                            cpu0_alert0: trip-point0 {
 | 
						|
                                    temperature = <90000>;
 | 
						|
                                    hysteresis = <2000>;
 | 
						|
                                    type = "passive";
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
 | 
						|
                    cooling-maps {
 | 
						|
                            map0 {
 | 
						|
                                    trip = <&cpu0_alert0>;
 | 
						|
                                    /* Corresponds to 1000MHz in OPP table */
 | 
						|
                                    cooling-device = <&CPU0 5 5>;
 | 
						|
                            };
 | 
						|
                    };
 | 
						|
            };
 | 
						|
 | 
						|
            /* ... */
 | 
						|
    };
 | 
						|
...
 |