summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
blob: 4f5837a30773d371f44803aab2b79ae7fe4234e7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---

$id: http://devicetree.org/schemas/hwmon/maxim,max6639.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Maxim max6639

maintainers:
  - Naresh Solanki <naresh.solanki@9elements.com>

description: |
  The MAX6639 is a 2-channel temperature monitor with dual, automatic, PWM
  fan-speed controller.  It monitors its own temperature and one external
  diode-connected transistor or the temperatures of two external diode-connected
  transistors, typically available in CPUs, FPGAs, or GPUs.

  Datasheets:
    https://datasheets.maximintegrated.com/en/ds/MAX6639-MAX6639F.pdf

properties:
  compatible:
    enum:
      - maxim,max6639

  reg:
    maxItems: 1

  '#address-cells':
    const: 1

  '#size-cells':
    const: 0

  '#pwm-cells':
    const: 3

required:
  - compatible
  - reg

patternProperties:
  "^fan@[0-1]$":
    type: object
    description:
      Represents the two fans and their specific configuration.

    $ref: fan-common.yaml#

    unevaluatedProperties: false

    properties:
      reg:
        description:
          The fan number.

    required:
      - reg

additionalProperties: false

examples:
  - |
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        fan1: fan-controller@10 {
            compatible = "maxim,max6639";
            reg = <0x10>;
            #address-cells = <1>;
            #size-cells = <0>;
            #pwm-cells = <3>;

            fan@0 {
                reg = <0x0>;
                pulses-per-revolution = <2>;
                max-rpm = <4000>;
                target-rpm = <1000>;
                pwms = <&fan1 0 25000 0>;
            };

            fan@1 {
                reg = <0x1>;
                pulses-per-revolution = <2>;
                max-rpm = <8000>;
                pwms = <&fan1 1 25000 0>;
            };
        };
    };
...