1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/thermal/imx-thermal.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: NXP i.MX Thermal
10 - Shawn Guo <shawnguo@kernel.org>
11 - Anson Huang <Anson.Huang@nxp.com>
24 - const: fsl,imx6sx-tempmon
28 The interrupt output of the controller, i.MX6Q has IRQ_HIGH which
29 will be triggered when temperature is higher than high threshold,
30 i.MX6SX and i.MX7S/D have two more IRQs than i.MX6Q, one is IRQ_LOW
31 and the other is IRQ_PANIC, when temperature is lower than low
32 threshold, IRQ_LOW will be triggered, when temperature is higher
33 than panic threshold, IRQ_PANIC will be triggered, and system can
34 be configured to auto reboot by SRC module for IRQ_PANIC. IRQ_HIGH,
35 IRQ_LOW and IRQ_PANIC share same interrupt output of controller.
40 - description: Phandle to the calibration data provided by ocotp
41 - description: Phandle to the temperature grade provided by ocotp
49 $ref: /schemas/types.yaml#/definitions/phandle
50 description: Phandle to anatop system controller node.
53 $ref: /schemas/types.yaml#/definitions/phandle
55 Deprecated property, phandle pointer to fuse controller that contains
56 TEMPMON calibration data, e.g. OCOTP on imx6q. The details about
57 calibration data can be found in SoC Reference Manual.
70 additionalProperties: false
74 #include <dt-bindings/clock/imx6sx-clock.h>
75 #include <dt-bindings/interrupt-controller/arm-gic.h>
80 compatible = "fsl,imx6sx-ocotp", "syscon";
81 reg = <0x021bc000 0x4000>;
82 clocks = <&clks IMX6SX_CLK_OCOTP>;
84 tempmon_calib: calib@38 {
88 tempmon_temp_grade: temp-grade@20 {
94 compatible = "fsl,imx6q-anatop", "syscon", "simple-mfd";
95 reg = <0x020c8000 0x1000>;
96 interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>,
97 <0 54 IRQ_TYPE_LEVEL_HIGH>,
98 <0 127 IRQ_TYPE_LEVEL_HIGH>;
101 compatible = "fsl,imx6sx-tempmon";
102 interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
103 fsl,tempmon = <&anatop>;
104 nvmem-cells = <&tempmon_calib>, <&tempmon_temp_grade>;
105 nvmem-cell-names = "calib", "temp_grade";
106 clocks = <&clks IMX6SX_CLK_PLL3_USB_OTG>;