Tom Rini | 53633a8 | 2024-02-29 12:33:36 -0500 | [diff] [blame] | 1 | # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| 2 | %YAML 1.2 |
| 3 | --- |
| 4 | $id: http://devicetree.org/schemas/thermal/qoriq-thermal.yaml# |
| 5 | $schema: http://devicetree.org/meta-schemas/core.yaml# |
| 6 | |
| 7 | title: Thermal Monitoring Unit (TMU) on Freescale QorIQ SoCs |
| 8 | |
| 9 | maintainers: |
| 10 | - Anson Huang <Anson.Huang@nxp.com> |
| 11 | |
| 12 | properties: |
| 13 | compatible: |
| 14 | description: | |
| 15 | The version of the device is determined by the TMU IP Block Revision |
| 16 | Register (IPBRR0) at offset 0x0BF8. |
| 17 | Table of correspondences between IPBRR0 values and example chips: |
| 18 | Value Device |
| 19 | ---------- ----- |
| 20 | 0x01900102 T1040 |
| 21 | enum: |
| 22 | - fsl,qoriq-tmu |
| 23 | - fsl,imx8mq-tmu |
| 24 | |
| 25 | reg: |
| 26 | maxItems: 1 |
| 27 | |
| 28 | interrupts: |
| 29 | maxItems: 1 |
| 30 | |
| 31 | fsl,tmu-range: |
| 32 | $ref: /schemas/types.yaml#/definitions/uint32-array |
| 33 | description: | |
| 34 | The values to be programmed into TTRnCR, as specified by the SoC |
| 35 | reference manual. The first cell is TTR0CR, the second is TTR1CR, etc. |
Tom Rini | 6bb92fc | 2024-05-20 09:54:58 -0600 | [diff] [blame] | 36 | minItems: 2 |
| 37 | maxItems: 7 |
Tom Rini | 53633a8 | 2024-02-29 12:33:36 -0500 | [diff] [blame] | 38 | |
| 39 | fsl,tmu-calibration: |
| 40 | $ref: /schemas/types.yaml#/definitions/uint32-matrix |
| 41 | description: | |
| 42 | A list of cell pairs containing temperature calibration data, as |
| 43 | specified by the SoC reference manual. The first cell of each pair |
| 44 | is the value to be written to TTCFGR, and the second is the value |
| 45 | to be written to TSCFGR. |
| 46 | items: |
| 47 | items: |
| 48 | - description: value for TTCFGR |
| 49 | - description: value for TSCFGR |
| 50 | minItems: 1 |
| 51 | maxItems: 64 |
| 52 | |
| 53 | little-endian: |
| 54 | description: | |
| 55 | boolean, if present, the TMU registers are little endian. If absent, |
| 56 | the default is big endian. |
| 57 | type: boolean |
| 58 | |
| 59 | clocks: |
| 60 | maxItems: 1 |
| 61 | |
| 62 | "#thermal-sensor-cells": |
| 63 | const: 1 |
| 64 | |
| 65 | required: |
| 66 | - compatible |
| 67 | - reg |
| 68 | - interrupts |
| 69 | - fsl,tmu-range |
| 70 | - fsl,tmu-calibration |
| 71 | - '#thermal-sensor-cells' |
| 72 | |
| 73 | additionalProperties: false |
| 74 | |
| 75 | examples: |
| 76 | - | |
| 77 | tmu@f0000 { |
| 78 | compatible = "fsl,qoriq-tmu"; |
| 79 | reg = <0xf0000 0x1000>; |
| 80 | interrupts = <18 2 0 0>; |
| 81 | fsl,tmu-range = <0x000a0000 0x00090026 0x0008004a 0x0001006a>; |
| 82 | fsl,tmu-calibration = <0x00000000 0x00000025>, |
| 83 | <0x00000001 0x00000028>, |
| 84 | <0x00000002 0x0000002d>, |
| 85 | <0x00000003 0x00000031>, |
| 86 | <0x00000004 0x00000036>, |
| 87 | <0x00000005 0x0000003a>, |
| 88 | <0x00000006 0x00000040>, |
| 89 | <0x00000007 0x00000044>, |
| 90 | <0x00000008 0x0000004a>, |
| 91 | <0x00000009 0x0000004f>, |
| 92 | <0x0000000a 0x00000054>, |
| 93 | <0x00010000 0x0000000d>, |
| 94 | <0x00010001 0x00000013>, |
| 95 | <0x00010002 0x00000019>, |
| 96 | <0x00010003 0x0000001f>, |
| 97 | <0x00010004 0x00000025>, |
| 98 | <0x00010005 0x0000002d>, |
| 99 | <0x00010006 0x00000033>, |
| 100 | <0x00010007 0x00000043>, |
| 101 | <0x00010008 0x0000004b>, |
| 102 | <0x00010009 0x00000053>, |
| 103 | <0x00020000 0x00000010>, |
| 104 | <0x00020001 0x00000017>, |
| 105 | <0x00020002 0x0000001f>, |
| 106 | <0x00020003 0x00000029>, |
| 107 | <0x00020004 0x00000031>, |
| 108 | <0x00020005 0x0000003c>, |
| 109 | <0x00020006 0x00000042>, |
| 110 | <0x00020007 0x0000004d>, |
| 111 | <0x00020008 0x00000056>, |
| 112 | <0x00030000 0x00000012>, |
| 113 | <0x00030001 0x0000001d>; |
| 114 | #thermal-sensor-cells = <1>; |
| 115 | }; |