# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/hwmon/adt7475.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: ADT7475 hwmon sensor maintainers: - Jean Delvare description: | The ADT7473, ADT7475, ADT7476, and ADT7490 are thermal monitors and multiple PWN fan controllers. They support monitoring and controlling up to four fans (the ADT7490 can only control up to three). They support reading a single on chip temperature sensor and two off chip temperature sensors (the ADT7490 additionally supports measuring up to three current external temperature sensors with series resistance cancellation (SRC)). Datasheets: https://www.onsemi.com/pub/Collateral/ADT7473-D.PDF https://www.onsemi.com/pub/Collateral/ADT7475-D.PDF https://www.onsemi.com/pub/Collateral/ADT7476-D.PDF https://www.onsemi.com/pub/Collateral/ADT7490-D.PDF Description taken from onsemiconductors specification sheets, with minor rephrasing. properties: compatible: enum: - adi,adt7473 - adi,adt7475 - adi,adt7476 - adi,adt7490 reg: maxItems: 1 adi,pwm-active-state: description: | Integer array, represents the active state of the pwm outputs If set to 0 the pwm uses a logic low output for 100% duty cycle. If set to 1 the pwm uses a logic high output for 100% duty cycle. $ref: /schemas/types.yaml#/definitions/uint32-array deprecated: true minItems: 3 maxItems: 3 items: enum: [0, 1] default: 1 "#pwm-cells": const: 4 description: | Number of cells in a PWM specifier. - 0: The PWM channel - 1: The PWM period in nanoseconds - 90909091 (11 Hz) - 71428571 (14 Hz) - 45454545 (22 Hz) - 34482759 (29 Hz) - 28571429 (35 Hz) - 22727273 (44 Hz) - 17241379 (58 Hz) - 11363636 (88 Hz) - 44444 (22 kHz) - 2: PWM flags 0 or PWM_POLARITY_INVERTED - 3: The default PWM duty cycle in nanoseconds patternProperties: "^adi,bypass-attenuator-in[0-4]$": description: | Configures bypassing the individual voltage input attenuator. If set to 1 the attenuator is bypassed if set to 0 the attenuator is not bypassed. If the property is absent then the attenuator retains its configuration from the bios/bootloader. $ref: /schemas/types.yaml#/definitions/uint32 enum: [0, 1] "^adi,pin(5|10)-function$": description: | Configures the function for pin 5 on the adi,adt7473 and adi,adt7475. Or pin 10 on the adi,adt7476 and adi,adt7490. $ref: /schemas/types.yaml#/definitions/string enum: - pwm2 - smbalert# "^adi,pin(9|14)-function$": description: | Configures the function for pin 9 on the adi,adt7473 and adi,adt7475. Or pin 14 on the adi,adt7476 and adi,adt7490 $ref: /schemas/types.yaml#/definitions/string enum: - tach4 - therm# - smbalert# - gpio "^fan-[0-9]+$": $ref: fan-common.yaml# unevaluatedProperties: false required: - compatible - reg additionalProperties: false examples: - | #include i2c { #address-cells = <1>; #size-cells = <0>; pwm: hwmon@2e { compatible = "adi,adt7476"; reg = <0x2e>; adi,bypass-attenuator-in0 = <1>; adi,bypass-attenuator-in1 = <0>; adi,pin10-function = "smbalert#"; adi,pin14-function = "tach4"; #pwm-cells = <4>; /* PWMs at 22.5 kHz frequency, 50% duty*/ fan-0 { pwms = <&pwm 0 44444 0 22222>; }; fan-1 { pwms = <&pwm 2 44444 0 22222>; }; }; };