Commit 4ec21eea authored by David Heidelberg's avatar David Heidelberg Committed by Guenter Roeck

dt-bindings: hwmon: gpio-fan: Convert txt bindings to yaml

Convert fan devices connected to GPIOs to the YAML syntax.
Signed-off-by: default avatarDavid Heidelberg <david@ixit.cz>
Reviewed-by: default avatarConor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20231209171653.85468-1-david@ixit.czSigned-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent 06f34bcc
Bindings for fan connected to GPIO lines
Required properties:
- compatible : "gpio-fan"
Optional properties:
- gpios: Specifies the pins that map to bits in the control value,
ordered MSB-->LSB.
- gpio-fan,speed-map: A mapping of possible fan RPM speeds and the
control value that should be set to achieve them. This array
must have the RPM values in ascending order.
- alarm-gpios: This pin going active indicates something is wrong with
the fan, and a udev event will be fired.
- #cooling-cells: If used as a cooling device, must be <2>
Also see:
Documentation/devicetree/bindings/thermal/thermal-cooling-devices.yaml
min and max states are derived from the speed-map of the fan.
Note: At least one the "gpios" or "alarm-gpios" properties must be set.
Examples:
gpio_fan {
compatible = "gpio-fan";
gpios = <&gpio1 14 1
&gpio1 13 1>;
gpio-fan,speed-map = <0 0
3000 1
6000 2>;
alarm-gpios = <&gpio1 15 1>;
};
gpio_fan_cool: gpio_fan {
compatible = "gpio-fan";
gpios = <&gpio2 14 1
&gpio2 13 1>;
gpio-fan,speed-map = <0 0>,
<3000 1>,
<6000 2>;
alarm-gpios = <&gpio2 15 1>;
#cooling-cells = <2>; /* min followed by max */
};
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/hwmon/gpio-fan.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Fan connected to GPIO lines
maintainers:
- Rob Herring <robh@kernel.org>
properties:
compatible:
const: gpio-fan
gpios:
description: |
Specifies the pins that map to bits in the control value,
ordered MSB-->LSB.
minItems: 1
maxItems: 7
alarm-gpios:
maxItems: 1
gpio-fan,speed-map:
$ref: /schemas/types.yaml#/definitions/uint32-matrix
minItems: 2
maxItems: 127
items:
items:
- description: fan speed in RPMs
- description: control value
description: |
A mapping of possible fan RPM speeds and the
control value that should be set to achieve them. This array
must have the RPM values in ascending order.
'#cooling-cells':
const: 2
required:
- compatible
- gpios
- gpio-fan,speed-map
additionalProperties: false
examples:
- |
gpio-fan {
compatible = "gpio-fan";
gpios = <&gpio2 14 1
&gpio2 13 1>;
gpio-fan,speed-map = < 0 0>,
<3000 1>,
<6000 2>;
alarm-gpios = <&gpio2 15 1>;
#cooling-cells = <2>; /* min followed by max */
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment