| b.liu | e958203 | 2025-04-17 19:18:16 +0800 | [diff] [blame] | 1 | Bindings for fan connected to GPIO lines |
| 2 | |
| 3 | Required properties: |
| 4 | - compatible : "gpio-fan" |
| 5 | |
| 6 | Optional properties: |
| 7 | - gpios: Specifies the pins that map to bits in the control value, |
| 8 | ordered MSB-->LSB. |
| 9 | - gpio-fan,speed-map: A mapping of possible fan RPM speeds and the |
| 10 | control value that should be set to achieve them. This array |
| 11 | must have the RPM values in ascending order. |
| 12 | - alarm-gpios: This pin going active indicates something is wrong with |
| 13 | the fan, and a udev event will be fired. |
| 14 | - #cooling-cells: If used as a cooling device, must be <2> |
| 15 | Also see: Documentation/devicetree/bindings/thermal/thermal.txt |
| 16 | min and max states are derived from the speed-map of the fan. |
| 17 | |
| 18 | Note: At least one the "gpios" or "alarm-gpios" properties must be set. |
| 19 | |
| 20 | Examples: |
| 21 | |
| 22 | gpio_fan { |
| 23 | compatible = "gpio-fan"; |
| 24 | gpios = <&gpio1 14 1 |
| 25 | &gpio1 13 1>; |
| 26 | gpio-fan,speed-map = <0 0 |
| 27 | 3000 1 |
| 28 | 6000 2>; |
| 29 | alarm-gpios = <&gpio1 15 1>; |
| 30 | }; |
| 31 | gpio_fan_cool: gpio_fan { |
| 32 | compatible = "gpio-fan"; |
| 33 | gpios = <&gpio2 14 1 |
| 34 | &gpio2 13 1>; |
| 35 | gpio-fan,speed-map = <0 0>, |
| 36 | <3000 1>, |
| 37 | <6000 2>; |
| 38 | alarm-gpios = <&gpio2 15 1>; |
| 39 | #cooling-cells = <2>; /* min followed by max */ |
| 40 | }; |