blob: 379eb763073e68d4a63b540c6ca3384a3b09f642 [file] [log] [blame]
Shawn Guoca3de462013-06-24 14:30:44 +08001* Temperature Monitor (TEMPMON) on Freescale i.MX SoCs
2
3Required properties:
Anson Huang3c94f172014-08-06 15:12:09 +08004- compatible : "fsl,imx6q-tempmon" for i.MX6Q, "fsl,imx6sx-tempmon" for i.MX6SX.
5 i.MX6SX has two more IRQs than i.MX6Q, one is IRQ_LOW and the other is IRQ_PANIC,
6 when temperature is below than low threshold, IRQ_LOW will be triggered, when temperature
7 is higher than panic threshold, system will auto reboot by SRC module.
Shawn Guoca3de462013-06-24 14:30:44 +08008- fsl,tempmon : phandle pointer to system controller that contains TEMPMON
9 control registers, e.g. ANATOP on imx6q.
Leonard Crestez4633f7a2017-07-14 17:11:06 +030010- nvmem-cells: A phandle to the calibration cells provided by ocotp.
11- nvmem-cell-names: Should be "calib", "temp_grade".
12
13Deprecated properties:
Shawn Guoca3de462013-06-24 14:30:44 +080014- fsl,tempmon-data : phandle pointer to fuse controller that contains TEMPMON
15 calibration data, e.g. OCOTP on imx6q. The details about calibration data
16 can be found in SoC Reference Manual.
17
Leonard Crestez4633f7a2017-07-14 17:11:06 +030018Direct access to OCOTP via fsl,tempmon-data is incorrect on some newer chips
19because it does not handle OCOTP clock requirements.
20
Anson Huang329fe7b2013-12-23 15:49:22 -050021Optional properties:
22- clocks : thermal sensor's clock source.
23
Shawn Guoca3de462013-06-24 14:30:44 +080024Example:
Dong Aisheng2623ab62018-01-25 14:37:49 +080025ocotp: ocotp@21bc000 {
26 #address-cells = <1>;
27 #size-cells = <1>;
28 compatible = "fsl,imx6sx-ocotp", "syscon";
29 reg = <0x021bc000 0x4000>;
30 clocks = <&clks IMX6SX_CLK_OCOTP>;
Shawn Guoca3de462013-06-24 14:30:44 +080031
Dong Aisheng2623ab62018-01-25 14:37:49 +080032 tempmon_calib: calib@38 {
33 reg = <0x38 4>;
34 };
35
36 tempmon_temp_grade: temp-grade@20 {
37 reg = <0x20 4>;
38 };
39};
40
41tempmon: tempmon {
42 compatible = "fsl,imx6sx-tempmon", "fsl,imx6q-tempmon";
43 interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
44 fsl,tempmon = <&anatop>;
45 nvmem-cells = <&tempmon_calib>, <&tempmon_temp_grade>;
46 nvmem-cell-names = "calib", "temp_grade";
47 clocks = <&clks IMX6SX_CLK_PLL3_USB_OTG>;
48};
49
50Legacy method (Deprecated):
Shawn Guoca3de462013-06-24 14:30:44 +080051tempmon {
52 compatible = "fsl,imx6q-tempmon";
53 fsl,tempmon = <&anatop>;
54 fsl,tempmon-data = <&ocotp>;
Anson Huang329fe7b2013-12-23 15:49:22 -050055 clocks = <&clks 172>;
Shawn Guoca3de462013-06-24 14:30:44 +080056};