Add dt-bindings for the MAXIM MAX31790. Signed-off-by: Delphine CC Chiu <Delphine_CC_Chiu@xxxxxxxxxx> --- Changelog: v4 - No change. v3 - Use 'sensor-type' in 'channel' node to config pwm as tach. - Changed the status in MAINTAINERS to 'Maintained'. v2 - Add dt-bindings for the MAXIM MAX31790. --- .../bindings/hwmon/maxim,max31790.yaml | 89 +++++++++++++++++++ MAINTAINERS | 6 ++ 2 files changed, 95 insertions(+) create mode 100644 Documentation/devicetree/bindings/hwmon/maxim,max31790.yaml diff --git a/Documentation/devicetree/bindings/hwmon/maxim,max31790.yaml b/Documentation/devicetree/bindings/hwmon/maxim,max31790.yaml new file mode 100644 index 000000000000..7f717ab4caac --- /dev/null +++ b/Documentation/devicetree/bindings/hwmon/maxim,max31790.yaml @@ -0,0 +1,89 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- + +$id: http://devicetree.org/schemas/hwmon/maxim,max31790.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Maxim max31790 + +maintainers: + - Delphine CC Chiu <Delphine_CC_Chiu@xxxxxxxxxx> + +description: | + The MAX31790 controls the speeds of up to six fans using + six independent PWM outputs. The desired fan speeds (or PWM duty cycles) + are written through the I2C interface. + The outputs drive “4-wire” fans directly, or can be used to modulate + the fan’s power terminals using an external pass transistor. + + Datasheets: + https://datasheets.maximintegrated.com/en/ds/MAX31790.pdf + +additionalProperties: false + +properties: + compatible: + enum: + - maxim,max31790 + + reg: + maxItems: 1 + + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + +patternProperties: + "^channel@[1-6]$": + type: object + + additionalProperties: false + + properties: + reg: + items: + - enum: [1, 2, 3, 4, 5, 6] + + # There are 6 PWM output channel in MAX31790 that allows to be configured + # as a TACH input by setting the Fan Configuration register. + # The default setting will be PWM output. + sensor-type: + items: + - enum: + - PWM + - TACH + + required: + - reg + +required: + - compatible + - reg + +examples: + - | + i2c { + #address-cells = <1>; + #size-cells = <0>; + + pwm@20 { + compatible = "maxim,max31790"; + reg = <0x20>; + + #address-cells = <1>; + #size-cells = <0>; + + channel@3 { + reg = <3>; + sensor-type = "TACH"; + }; + + channel@6 { + reg = <6>; + sensor-type = "TACH"; + }; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 43c5ed3c4508..707f1b903f60 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1371,6 +1371,12 @@ F: Documentation/devicetree/bindings/hwmon/adi,max31760.yaml F: Documentation/hwmon/max31760.rst F: drivers/hwmon/max31760.c +ANALOG DEVICES INC MAX31790 DRIVER +M: Delphine CC Chiu <Delphine_CC_Chiu@xxxxxxxxxx> +S: Maintained +F: Documentation/devicetree/bindings/hwmon/maxim,max31790.yaml +F: drivers/hwmon/max31790.c + ANALOGBITS PLL LIBRARIES M: Paul Walmsley <paul.walmsley@xxxxxxxxxx> S: Supported -- 2.25.1