112 lines
2.5 KiB
YAML
112 lines
2.5 KiB
YAML
|
|
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||
|
|
%YAML 1.2
|
||
|
|
---
|
||
|
|
$id: http://devicetree.org/schemas/hwmon/microchip,emc2305.yaml#
|
||
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||
|
|
|
||
|
|
title: Microchip EMC2305 SMBus compliant PWM fan controller
|
||
|
|
|
||
|
|
maintainers:
|
||
|
|
- Michael Shych <michaelsh@nvidia.com>
|
||
|
|
|
||
|
|
description:
|
||
|
|
Microchip EMC2301/2/3/5 pwm controller which supports up to five programmable
|
||
|
|
fan control circuits.
|
||
|
|
|
||
|
|
properties:
|
||
|
|
compatible:
|
||
|
|
oneOf:
|
||
|
|
- enum:
|
||
|
|
- microchip,emc2305
|
||
|
|
- items:
|
||
|
|
- enum:
|
||
|
|
- microchip,emc2303
|
||
|
|
- microchip,emc2302
|
||
|
|
- microchip,emc2301
|
||
|
|
- const: microchip,emc2305
|
||
|
|
|
||
|
|
reg:
|
||
|
|
maxItems: 1
|
||
|
|
|
||
|
|
'#address-cells':
|
||
|
|
const: 1
|
||
|
|
|
||
|
|
'#size-cells':
|
||
|
|
const: 0
|
||
|
|
|
||
|
|
'#pwm-cells':
|
||
|
|
const: 3
|
||
|
|
description: |
|
||
|
|
Number of cells in a PWM specifier.
|
||
|
|
- cell 0: The PWM frequency
|
||
|
|
- cell 1: The PWM polarity: 0 or PWM_POLARITY_INVERTED
|
||
|
|
- cell 2: The PWM output config:
|
||
|
|
- 0 (Open-Drain)
|
||
|
|
- 1 (Push-Pull)
|
||
|
|
|
||
|
|
patternProperties:
|
||
|
|
'^fan@[0-4]$':
|
||
|
|
$ref: fan-common.yaml#
|
||
|
|
unevaluatedProperties: false
|
||
|
|
properties:
|
||
|
|
reg:
|
||
|
|
description:
|
||
|
|
The fan number used to determine the associated PWM channel.
|
||
|
|
maxItems: 1
|
||
|
|
|
||
|
|
required:
|
||
|
|
- reg
|
||
|
|
|
||
|
|
required:
|
||
|
|
- compatible
|
||
|
|
- reg
|
||
|
|
|
||
|
|
additionalProperties: false
|
||
|
|
|
||
|
|
examples:
|
||
|
|
- |
|
||
|
|
#include <dt-bindings/pwm/pwm.h>
|
||
|
|
i2c {
|
||
|
|
#address-cells = <1>;
|
||
|
|
#size-cells = <0>;
|
||
|
|
|
||
|
|
fan_controller: fan-controller@2f {
|
||
|
|
compatible = "microchip,emc2305";
|
||
|
|
reg = <0x2f>;
|
||
|
|
#address-cells = <1>;
|
||
|
|
#size-cells = <0>;
|
||
|
|
#pwm-cells = <3>;
|
||
|
|
|
||
|
|
fan@0 {
|
||
|
|
reg = <0x0>;
|
||
|
|
pwms = <&fan_controller 26000 PWM_POLARITY_INVERTED 1>;
|
||
|
|
#cooling-cells = <2>;
|
||
|
|
};
|
||
|
|
|
||
|
|
fan@1 {
|
||
|
|
reg = <0x1>;
|
||
|
|
pwms = <&fan_controller 26000 0 1>;
|
||
|
|
#cooling-cells = <2>;
|
||
|
|
};
|
||
|
|
|
||
|
|
fan@2 {
|
||
|
|
reg = <0x2>;
|
||
|
|
pwms = <&fan_controller 26000 0 1>;
|
||
|
|
#cooling-cells = <2>;
|
||
|
|
};
|
||
|
|
|
||
|
|
fan@3 {
|
||
|
|
reg = <0x3>;
|
||
|
|
pwms = <&fan_controller 26000 0 1>;
|
||
|
|
#cooling-cells = <2>;
|
||
|
|
};
|
||
|
|
|
||
|
|
fan@4 {
|
||
|
|
reg = <0x4>;
|
||
|
|
pwms = <&fan_controller 26000 0 1>;
|
||
|
|
#cooling-cells = <2>;
|
||
|
|
};
|
||
|
|
};
|
||
|
|
};
|
||
|
|
...
|