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:
11*aa1a8ff2SEmmanuel Vadot  - Thara Gopinath <thara.gopinath@gmail.com>
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:
21d5b0e70fSEmmanuel Vadot      - qcom,sc8180x-lmh
22354d7675SEmmanuel Vadot      - qcom,sdm845-lmh
23c9ccf3a3SEmmanuel Vadot      - qcom,sm8150-lmh
24354d7675SEmmanuel Vadot
25354d7675SEmmanuel Vadot  reg:
26354d7675SEmmanuel Vadot    items:
27354d7675SEmmanuel Vadot      - description: core registers
28354d7675SEmmanuel Vadot
29354d7675SEmmanuel Vadot  interrupts:
30354d7675SEmmanuel Vadot    maxItems: 1
31354d7675SEmmanuel Vadot
32354d7675SEmmanuel Vadot  '#interrupt-cells':
33354d7675SEmmanuel Vadot    const: 1
34354d7675SEmmanuel Vadot
35354d7675SEmmanuel Vadot  interrupt-controller: true
36354d7675SEmmanuel Vadot
37354d7675SEmmanuel Vadot  cpus:
38354d7675SEmmanuel Vadot    description:
39354d7675SEmmanuel Vadot      phandle of the first cpu in the LMh cluster
408bab661aSEmmanuel Vadot    maxItems: 1
41354d7675SEmmanuel Vadot
42354d7675SEmmanuel Vadot  qcom,lmh-temp-arm-millicelsius:
43354d7675SEmmanuel Vadot    description:
44354d7675SEmmanuel Vadot      An integer expressing temperature threshold at which the LMh thermal
45354d7675SEmmanuel Vadot      FSM is engaged.
46354d7675SEmmanuel Vadot
47354d7675SEmmanuel Vadot  qcom,lmh-temp-low-millicelsius:
48354d7675SEmmanuel Vadot    description:
49354d7675SEmmanuel Vadot      An integer expressing temperature threshold at which the state machine
50354d7675SEmmanuel Vadot      will attempt to remove frequency throttling.
51354d7675SEmmanuel Vadot
52354d7675SEmmanuel Vadot  qcom,lmh-temp-high-millicelsius:
53354d7675SEmmanuel Vadot    description:
54354d7675SEmmanuel Vadot      An integer expressing temperature threshold at which the state machine
55354d7675SEmmanuel Vadot      will attempt to throttle the frequency.
56354d7675SEmmanuel Vadot
57354d7675SEmmanuel Vadotrequired:
58354d7675SEmmanuel Vadot  - compatible
59354d7675SEmmanuel Vadot  - reg
60354d7675SEmmanuel Vadot  - interrupts
61354d7675SEmmanuel Vadot  - '#interrupt-cells'
62354d7675SEmmanuel Vadot  - interrupt-controller
63354d7675SEmmanuel Vadot  - cpus
64354d7675SEmmanuel Vadot  - qcom,lmh-temp-arm-millicelsius
65354d7675SEmmanuel Vadot  - qcom,lmh-temp-low-millicelsius
66354d7675SEmmanuel Vadot  - qcom,lmh-temp-high-millicelsius
67354d7675SEmmanuel Vadot
68354d7675SEmmanuel VadotadditionalProperties: false
69354d7675SEmmanuel Vadot
70354d7675SEmmanuel Vadotexamples:
71354d7675SEmmanuel Vadot  - |
72354d7675SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
73354d7675SEmmanuel Vadot
74354d7675SEmmanuel Vadot    lmh@17d70800 {
75354d7675SEmmanuel Vadot      compatible = "qcom,sdm845-lmh";
76354d7675SEmmanuel Vadot      reg = <0x17d70800 0x400>;
77354d7675SEmmanuel Vadot      interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
78354d7675SEmmanuel Vadot      cpus = <&CPU4>;
79354d7675SEmmanuel Vadot      qcom,lmh-temp-arm-millicelsius = <65000>;
80354d7675SEmmanuel Vadot      qcom,lmh-temp-low-millicelsius = <94500>;
81354d7675SEmmanuel Vadot      qcom,lmh-temp-high-millicelsius = <95000>;
82354d7675SEmmanuel Vadot      interrupt-controller;
83354d7675SEmmanuel Vadot      #interrupt-cells = <1>;
84354d7675SEmmanuel Vadot    };
85