xref: /freebsd/sys/contrib/device-tree/Bindings/thermal/qcom-lmh.yaml (revision c9ccf3a32da427475985b85d7df023ccfb138c27)
1354d7675SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2354d7675SEmmanuel Vadot# Copyright 2021 Linaro Ltd.
3354d7675SEmmanuel Vadot%YAML 1.2
4354d7675SEmmanuel Vadot---
5354d7675SEmmanuel Vadot$id: http://devicetree.org/schemas/thermal/qcom-lmh.yaml#
6354d7675SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
7354d7675SEmmanuel Vadot
8354d7675SEmmanuel Vadottitle: Qualcomm Limits Management Hardware(LMh)
9354d7675SEmmanuel Vadot
10354d7675SEmmanuel Vadotmaintainers:
11354d7675SEmmanuel Vadot  - Thara Gopinath <thara.gopinath@linaro.org>
12354d7675SEmmanuel Vadot
13354d7675SEmmanuel Vadotdescription:
14354d7675SEmmanuel Vadot  Limits Management Hardware(LMh) is a hardware infrastructure on some
15354d7675SEmmanuel Vadot  Qualcomm SoCs that can enforce temperature and current limits as
16354d7675SEmmanuel Vadot  programmed by software for certain IPs like CPU.
17354d7675SEmmanuel Vadot
18354d7675SEmmanuel Vadotproperties:
19354d7675SEmmanuel Vadot  compatible:
20354d7675SEmmanuel Vadot    enum:
21354d7675SEmmanuel Vadot      - qcom,sdm845-lmh
22*c9ccf3a3SEmmanuel Vadot      - qcom,sm8150-lmh
23354d7675SEmmanuel Vadot
24354d7675SEmmanuel Vadot  reg:
25354d7675SEmmanuel Vadot    items:
26354d7675SEmmanuel Vadot      - description: core registers
27354d7675SEmmanuel Vadot
28354d7675SEmmanuel Vadot  interrupts:
29354d7675SEmmanuel Vadot    maxItems: 1
30354d7675SEmmanuel Vadot
31354d7675SEmmanuel Vadot  '#interrupt-cells':
32354d7675SEmmanuel Vadot    const: 1
33354d7675SEmmanuel Vadot
34354d7675SEmmanuel Vadot  interrupt-controller: true
35354d7675SEmmanuel Vadot
36354d7675SEmmanuel Vadot  cpus:
37354d7675SEmmanuel Vadot    description:
38354d7675SEmmanuel Vadot      phandle of the first cpu in the LMh cluster
39354d7675SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle
40354d7675SEmmanuel Vadot
41354d7675SEmmanuel Vadot  qcom,lmh-temp-arm-millicelsius:
42354d7675SEmmanuel Vadot    description:
43354d7675SEmmanuel Vadot      An integer expressing temperature threshold at which the LMh thermal
44354d7675SEmmanuel Vadot      FSM is engaged.
45354d7675SEmmanuel Vadot
46354d7675SEmmanuel Vadot  qcom,lmh-temp-low-millicelsius:
47354d7675SEmmanuel Vadot    description:
48354d7675SEmmanuel Vadot      An integer expressing temperature threshold at which the state machine
49354d7675SEmmanuel Vadot      will attempt to remove frequency throttling.
50354d7675SEmmanuel Vadot
51354d7675SEmmanuel Vadot  qcom,lmh-temp-high-millicelsius:
52354d7675SEmmanuel Vadot    description:
53354d7675SEmmanuel Vadot      An integer expressing temperature threshold at which the state machine
54354d7675SEmmanuel Vadot      will attempt to throttle the frequency.
55354d7675SEmmanuel Vadot
56354d7675SEmmanuel Vadotrequired:
57354d7675SEmmanuel Vadot  - compatible
58354d7675SEmmanuel Vadot  - reg
59354d7675SEmmanuel Vadot  - interrupts
60354d7675SEmmanuel Vadot  - '#interrupt-cells'
61354d7675SEmmanuel Vadot  - interrupt-controller
62354d7675SEmmanuel Vadot  - cpus
63354d7675SEmmanuel Vadot  - qcom,lmh-temp-arm-millicelsius
64354d7675SEmmanuel Vadot  - qcom,lmh-temp-low-millicelsius
65354d7675SEmmanuel Vadot  - qcom,lmh-temp-high-millicelsius
66354d7675SEmmanuel Vadot
67354d7675SEmmanuel VadotadditionalProperties: false
68354d7675SEmmanuel Vadot
69354d7675SEmmanuel Vadotexamples:
70354d7675SEmmanuel Vadot  - |
71354d7675SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
72354d7675SEmmanuel Vadot
73354d7675SEmmanuel Vadot    lmh@17d70800 {
74354d7675SEmmanuel Vadot      compatible = "qcom,sdm845-lmh";
75354d7675SEmmanuel Vadot      reg = <0x17d70800 0x400>;
76354d7675SEmmanuel Vadot      interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
77354d7675SEmmanuel Vadot      cpus = <&CPU4>;
78354d7675SEmmanuel Vadot      qcom,lmh-temp-arm-millicelsius = <65000>;
79354d7675SEmmanuel Vadot      qcom,lmh-temp-low-millicelsius = <94500>;
80354d7675SEmmanuel Vadot      qcom,lmh-temp-high-millicelsius = <95000>;
81354d7675SEmmanuel Vadot      interrupt-controller;
82354d7675SEmmanuel Vadot      #interrupt-cells = <1>;
83354d7675SEmmanuel Vadot    };
84