| * Temperature Monitor (TEMPMON) on Freescale i.MX SoCs |
| |
| Required properties: |
| - compatible : must be one of following: |
| - "fsl,imx6q-tempmon" for i.MX6Q, |
| - "fsl,imx6sx-tempmon" for i.MX6SX, |
| - "fsl,imx7d-tempmon" for i.MX7S/D. |
| - interrupts : the interrupt output of the controller: |
| i.MX6Q has one IRQ which will be triggered when temperature is higher than high threshold, |
| i.MX6SX and i.MX7S/D have two more IRQs than i.MX6Q, one is IRQ_LOW and the other is IRQ_PANIC, |
| when temperature is below than low threshold, IRQ_LOW will be triggered, when temperature |
| is higher than panic threshold, system will auto reboot by SRC module. |
| - fsl,tempmon : phandle pointer to system controller that contains TEMPMON |
| control registers, e.g. ANATOP on imx6q. |
| - nvmem-cells: A phandle to the calibration cells provided by ocotp. |
| - nvmem-cell-names: Should be "calib", "temp_grade". |
| |
| Deprecated properties: |
| - fsl,tempmon-data : phandle pointer to fuse controller that contains TEMPMON |
| calibration data, e.g. OCOTP on imx6q. The details about calibration data |
| can be found in SoC Reference Manual. |
| |
| Direct access to OCOTP via fsl,tempmon-data is incorrect on some newer chips |
| because it does not handle OCOTP clock requirements. |
| |
| Optional properties: |
| - clocks : thermal sensor's clock source. |
| |
| Example: |
| ocotp: ocotp@21bc000 { |
| #address-cells = <1>; |
| #size-cells = <1>; |
| compatible = "fsl,imx6sx-ocotp", "syscon"; |
| reg = <0x021bc000 0x4000>; |
| clocks = <&clks IMX6SX_CLK_OCOTP>; |
| |
| tempmon_calib: calib@38 { |
| reg = <0x38 4>; |
| }; |
| |
| tempmon_temp_grade: temp-grade@20 { |
| reg = <0x20 4>; |
| }; |
| }; |
| |
| tempmon: tempmon { |
| compatible = "fsl,imx6sx-tempmon", "fsl,imx6q-tempmon"; |
| interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; |
| fsl,tempmon = <&anatop>; |
| nvmem-cells = <&tempmon_calib>, <&tempmon_temp_grade>; |
| nvmem-cell-names = "calib", "temp_grade"; |
| clocks = <&clks IMX6SX_CLK_PLL3_USB_OTG>; |
| }; |
| |
| Legacy method (Deprecated): |
| tempmon { |
| compatible = "fsl,imx6q-tempmon"; |
| fsl,tempmon = <&anatop>; |
| fsl,tempmon-data = <&ocotp>; |
| clocks = <&clks 172>; |
| }; |