0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/thermal/qoriq-thermal.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: Thermal Monitoring Unit (TMU) on Freescale QorIQ SoCs
0008
0009 maintainers:
0010 - Anson Huang <Anson.Huang@nxp.com>
0011
0012 properties:
0013 compatible:
0014 description: |
0015 The version of the device is determined by the TMU IP Block Revision
0016 Register (IPBRR0) at offset 0x0BF8.
0017 Table of correspondences between IPBRR0 values and example chips:
0018 Value Device
0019 ---------- -----
0020 0x01900102 T1040
0021 enum:
0022 - fsl,qoriq-tmu
0023 - fsl,imx8mq-tmu
0024
0025 reg:
0026 maxItems: 1
0027
0028 interrupts:
0029 maxItems: 1
0030
0031 fsl,tmu-range:
0032 $ref: '/schemas/types.yaml#/definitions/uint32-array'
0033 description: |
0034 The values to be programmed into TTRnCR, as specified by the SoC
0035 reference manual. The first cell is TTR0CR, the second is TTR1CR, etc.
0036 maxItems: 4
0037
0038 fsl,tmu-calibration:
0039 $ref: '/schemas/types.yaml#/definitions/uint32-matrix'
0040 description: |
0041 A list of cell pairs containing temperature calibration data, as
0042 specified by the SoC reference manual. The first cell of each pair
0043 is the value to be written to TTCFGR, and the second is the value
0044 to be written to TSCFGR.
0045 items:
0046 items:
0047 - description: value for TTCFGR
0048 - description: value for TSCFGR
0049 minItems: 1
0050 maxItems: 64
0051
0052 little-endian:
0053 description: |
0054 boolean, if present, the TMU registers are little endian. If absent,
0055 the default is big endian.
0056 type: boolean
0057
0058 clocks:
0059 maxItems: 1
0060
0061 "#thermal-sensor-cells":
0062 const: 1
0063
0064 required:
0065 - compatible
0066 - reg
0067 - interrupts
0068 - fsl,tmu-range
0069 - fsl,tmu-calibration
0070 - '#thermal-sensor-cells'
0071
0072 additionalProperties: false
0073
0074 examples:
0075 - |
0076 tmu@f0000 {
0077 compatible = "fsl,qoriq-tmu";
0078 reg = <0xf0000 0x1000>;
0079 interrupts = <18 2 0 0>;
0080 fsl,tmu-range = <0x000a0000 0x00090026 0x0008004a 0x0001006a>;
0081 fsl,tmu-calibration = <0x00000000 0x00000025>,
0082 <0x00000001 0x00000028>,
0083 <0x00000002 0x0000002d>,
0084 <0x00000003 0x00000031>,
0085 <0x00000004 0x00000036>,
0086 <0x00000005 0x0000003a>,
0087 <0x00000006 0x00000040>,
0088 <0x00000007 0x00000044>,
0089 <0x00000008 0x0000004a>,
0090 <0x00000009 0x0000004f>,
0091 <0x0000000a 0x00000054>,
0092 <0x00010000 0x0000000d>,
0093 <0x00010001 0x00000013>,
0094 <0x00010002 0x00000019>,
0095 <0x00010003 0x0000001f>,
0096 <0x00010004 0x00000025>,
0097 <0x00010005 0x0000002d>,
0098 <0x00010006 0x00000033>,
0099 <0x00010007 0x00000043>,
0100 <0x00010008 0x0000004b>,
0101 <0x00010009 0x00000053>,
0102 <0x00020000 0x00000010>,
0103 <0x00020001 0x00000017>,
0104 <0x00020002 0x0000001f>,
0105 <0x00020003 0x00000029>,
0106 <0x00020004 0x00000031>,
0107 <0x00020005 0x0000003c>,
0108 <0x00020006 0x00000042>,
0109 <0x00020007 0x0000004d>,
0110 <0x00020008 0x00000056>,
0111 <0x00030000 0x00000012>,
0112 <0x00030001 0x0000001d>;
0113 #thermal-sensor-cells = <1>;
0114 };