Commit d3b2cfb4 authored by Naresh Solanki's avatar Naresh Solanki Committed by Guenter Roeck
Browse files

dt-bindings: hwmon: Add max6639



Add Devicetree binding documentation for Maxim MAX6639 temperature
monitor with PWM fan-speed controller.

Signed-off-by: default avatarNaresh Solanki <naresh.solanki@9elements.com>
Reviewed-by: default avatarConor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20240528125122.1129986-1-naresh.solanki@9elements.com


[groeck: Dropped unnecessary '|' after description:]
Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent be7d9294
Loading
Loading
Loading
Loading
+92 −0
Original line number Diff line number Diff line
# 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>;
            };
        };
    };
...