1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/thermal/imx 4 $id: http://devicetree.org/schemas/thermal/imx-thermal.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: NXP i.MX Thermal 7 title: NXP i.MX Thermal 8 8 9 maintainers: 9 maintainers: 10 - Shawn Guo <shawnguo@kernel.org> 10 - Shawn Guo <shawnguo@kernel.org> >> 11 - Anson Huang <Anson.Huang@nxp.com> 11 12 12 properties: 13 properties: 13 compatible: 14 compatible: 14 oneOf: 15 oneOf: 15 - enum: 16 - enum: 16 - fsl,imx6q-tempmon 17 - fsl,imx6q-tempmon 17 - fsl,imx6sx-tempmon 18 - fsl,imx6sx-tempmon 18 - fsl,imx7d-tempmon 19 - fsl,imx7d-tempmon 19 - items: 20 - items: 20 - enum: 21 - enum: 21 - fsl,imx6sll-tempmon 22 - fsl,imx6sll-tempmon 22 - fsl,imx6ul-tempmon 23 - fsl,imx6ul-tempmon 23 - const: fsl,imx6sx-tempmon 24 - const: fsl,imx6sx-tempmon 24 25 25 interrupts: 26 interrupts: 26 description: | 27 description: | 27 The interrupt output of the controller, 28 The interrupt output of the controller, i.MX6Q has IRQ_HIGH which 28 will be triggered when temperature is hi 29 will be triggered when temperature is higher than high threshold, 29 i.MX6SX and i.MX7S/D have two more IRQs 30 i.MX6SX and i.MX7S/D have two more IRQs than i.MX6Q, one is IRQ_LOW 30 and the other is IRQ_PANIC, when tempera 31 and the other is IRQ_PANIC, when temperature is lower than low 31 threshold, IRQ_LOW will be triggered, wh 32 threshold, IRQ_LOW will be triggered, when temperature is higher 32 than panic threshold, IRQ_PANIC will be 33 than panic threshold, IRQ_PANIC will be triggered, and system can 33 be configured to auto reboot by SRC modu 34 be configured to auto reboot by SRC module for IRQ_PANIC. IRQ_HIGH, 34 IRQ_LOW and IRQ_PANIC share same interru 35 IRQ_LOW and IRQ_PANIC share same interrupt output of controller. 35 maxItems: 1 36 maxItems: 1 36 37 37 nvmem-cells: 38 nvmem-cells: 38 items: 39 items: 39 - description: Phandle to the calibratio 40 - description: Phandle to the calibration data provided by ocotp 40 - description: Phandle to the temperatur 41 - description: Phandle to the temperature grade provided by ocotp 41 42 42 nvmem-cell-names: 43 nvmem-cell-names: 43 items: 44 items: 44 - const: calib 45 - const: calib 45 - const: temp_grade 46 - const: temp_grade 46 47 47 fsl,tempmon: 48 fsl,tempmon: 48 $ref: /schemas/types.yaml#/definitions/pha 49 $ref: /schemas/types.yaml#/definitions/phandle 49 description: Phandle to anatop system cont 50 description: Phandle to anatop system controller node. 50 51 51 fsl,tempmon-data: 52 fsl,tempmon-data: 52 $ref: /schemas/types.yaml#/definitions/pha 53 $ref: /schemas/types.yaml#/definitions/phandle 53 description: | 54 description: | 54 Deprecated property, phandle pointer to 55 Deprecated property, phandle pointer to fuse controller that contains 55 TEMPMON calibration data, e.g. OCOTP on 56 TEMPMON calibration data, e.g. OCOTP on imx6q. The details about 56 calibration data can be found in SoC Ref 57 calibration data can be found in SoC Reference Manual. 57 deprecated: true 58 deprecated: true 58 59 59 clocks: 60 clocks: 60 maxItems: 1 61 maxItems: 1 61 62 62 "#thermal-sensor-cells": 63 "#thermal-sensor-cells": 63 const: 0 64 const: 0 64 65 65 required: 66 required: 66 - compatible 67 - compatible 67 - interrupts 68 - interrupts 68 - fsl,tempmon 69 - fsl,tempmon 69 - nvmem-cells 70 - nvmem-cells 70 - nvmem-cell-names 71 - nvmem-cell-names 71 72 72 allOf: 73 allOf: 73 - $ref: thermal-sensor.yaml# 74 - $ref: thermal-sensor.yaml# 74 75 75 additionalProperties: false 76 additionalProperties: false 76 77 77 examples: 78 examples: 78 - | 79 - | 79 #include <dt-bindings/clock/imx6sx-clock.h 80 #include <dt-bindings/clock/imx6sx-clock.h> 80 #include <dt-bindings/interrupt-controller 81 #include <dt-bindings/interrupt-controller/arm-gic.h> 81 82 82 efuse@21bc000 { 83 efuse@21bc000 { 83 #address-cells = <1>; 84 #address-cells = <1>; 84 #size-cells = <1>; 85 #size-cells = <1>; 85 compatible = "fsl,imx6sx-ocotp", "sys 86 compatible = "fsl,imx6sx-ocotp", "syscon"; 86 reg = <0x021bc000 0x4000>; 87 reg = <0x021bc000 0x4000>; 87 clocks = <&clks IMX6SX_CLK_OCOTP>; 88 clocks = <&clks IMX6SX_CLK_OCOTP>; 88 89 89 tempmon_calib: calib@38 { 90 tempmon_calib: calib@38 { 90 reg = <0x38 4>; 91 reg = <0x38 4>; 91 }; 92 }; 92 93 93 tempmon_temp_grade: temp-grade@20 { 94 tempmon_temp_grade: temp-grade@20 { 94 reg = <0x20 4>; 95 reg = <0x20 4>; 95 }; 96 }; 96 }; 97 }; 97 98 98 anatop@20c8000 { 99 anatop@20c8000 { 99 compatible = "fsl,imx6q-anatop", "sysc 100 compatible = "fsl,imx6q-anatop", "syscon", "simple-mfd"; 100 reg = <0x020c8000 0x1000>; 101 reg = <0x020c8000 0x1000>; 101 interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH 102 interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>, 102 <0 54 IRQ_TYPE_LEVEL_HIGH 103 <0 54 IRQ_TYPE_LEVEL_HIGH>, 103 <0 127 IRQ_TYPE_LEVEL_HIG 104 <0 127 IRQ_TYPE_LEVEL_HIGH>; 104 105 105 tempmon { 106 tempmon { 106 compatible = "fsl,imx6sx-tempmon" 107 compatible = "fsl,imx6sx-tempmon"; 107 interrupts = <GIC_SPI 49 IRQ_TYPE 108 interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 108 fsl,tempmon = <&anatop>; 109 fsl,tempmon = <&anatop>; 109 nvmem-cells = <&tempmon_calib>, < 110 nvmem-cells = <&tempmon_calib>, <&tempmon_temp_grade>; 110 nvmem-cell-names = "calib", "temp 111 nvmem-cell-names = "calib", "temp_grade"; 111 clocks = <&clks IMX6SX_CLK_PLL3_U 112 clocks = <&clks IMX6SX_CLK_PLL3_USB_OTG>; 112 #thermal-sensor-cells = <0>; 113 #thermal-sensor-cells = <0>; 113 }; 114 }; 114 }; 115 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.