1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/hwmon/ti,tmp464.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: TMP464 and TMP468 temperature sensors
8
9maintainers:
10  - Guenter Roeck <linux@roeck-us.net>
11
12description: |
13  ±0.0625°C Remote and Local temperature sensor
14  https://www.ti.com/lit/ds/symlink/tmp464.pdf
15  https://www.ti.com/lit/ds/symlink/tmp468.pdf
16
17properties:
18  compatible:
19    enum:
20      - ti,tmp464
21      - ti,tmp468
22
23  reg:
24    maxItems: 1
25
26  '#address-cells':
27    const: 1
28
29  '#size-cells':
30    const: 0
31
32required:
33  - compatible
34  - reg
35
36additionalProperties: false
37
38patternProperties:
39  "^channel@([0-8])$":
40    type: object
41    description: |
42      Represents channels of the device and their specific configuration.
43
44    properties:
45      reg:
46        description: |
47          The channel number. 0 is local channel, 1-8 are remote channels.
48        items:
49          minimum: 0
50          maximum: 8
51
52      label:
53        description: |
54          A descriptive name for this channel, like "ambient" or "psu".
55
56      ti,n-factor:
57        description: |
58          The value (two's complement) to be programmed in the channel specific N correction register.
59          For remote channels only.
60        $ref: /schemas/types.yaml#/definitions/int32
61        minimum: -128
62        maximum: 127
63
64    required:
65      - reg
66
67    additionalProperties: false
68
69examples:
70  - |
71    i2c {
72      #address-cells = <1>;
73      #size-cells = <0>;
74
75      sensor@4b {
76        compatible = "ti,tmp464";
77        reg = <0x4b>;
78      };
79    };
80  - |
81    i2c {
82      #address-cells = <1>;
83      #size-cells = <0>;
84
85      sensor@4b {
86        compatible = "ti,tmp464";
87        reg = <0x4b>;
88        #address-cells = <1>;
89        #size-cells = <0>;
90
91        channel@0 {
92          reg = <0x0>;
93          label = "local";
94        };
95
96        channel@1 {
97          reg = <0x1>;
98          ti,n-factor = <(-10)>;
99          label = "external";
100        };
101
102        channel@2 {
103          reg = <0x2>;
104          ti,n-factor = <0x10>;
105          label = "somelabel";
106        };
107
108        channel@3 {
109          reg = <0x3>;
110          status = "disabled";
111        };
112      };
113    };
114