xref: /linux/Documentation/devicetree/bindings/hwmon/aspeed,g6-pwm-tach.yaml (revision 79790b6818e96c58fe2bffee1b418c16e64e7b80)
1*df9d235cSBilly Tsai# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*df9d235cSBilly Tsai# Copyright (C) 2023 Aspeed, Inc.
3*df9d235cSBilly Tsai%YAML 1.2
4*df9d235cSBilly Tsai---
5*df9d235cSBilly Tsai$id: http://devicetree.org/schemas/hwmon/aspeed,g6-pwm-tach.yaml#
6*df9d235cSBilly Tsai$schema: http://devicetree.org/meta-schemas/core.yaml#
7*df9d235cSBilly Tsai
8*df9d235cSBilly Tsaititle: ASPEED G6 PWM and Fan Tach controller
9*df9d235cSBilly Tsai
10*df9d235cSBilly Tsaimaintainers:
11*df9d235cSBilly Tsai  - Billy Tsai <billy_tsai@aspeedtech.com>
12*df9d235cSBilly Tsai
13*df9d235cSBilly Tsaidescription: |
14*df9d235cSBilly Tsai  The ASPEED PWM controller can support up to 16 PWM outputs.
15*df9d235cSBilly Tsai  The ASPEED Fan Tacho controller can support up to 16 fan tach input.
16*df9d235cSBilly Tsai  They are independent hardware blocks, which are different from the
17*df9d235cSBilly Tsai  previous version of the ASPEED chip.
18*df9d235cSBilly Tsai
19*df9d235cSBilly Tsaiproperties:
20*df9d235cSBilly Tsai  compatible:
21*df9d235cSBilly Tsai    enum:
22*df9d235cSBilly Tsai      - aspeed,ast2600-pwm-tach
23*df9d235cSBilly Tsai
24*df9d235cSBilly Tsai  reg:
25*df9d235cSBilly Tsai    maxItems: 1
26*df9d235cSBilly Tsai
27*df9d235cSBilly Tsai  clocks:
28*df9d235cSBilly Tsai    maxItems: 1
29*df9d235cSBilly Tsai
30*df9d235cSBilly Tsai  resets:
31*df9d235cSBilly Tsai    maxItems: 1
32*df9d235cSBilly Tsai
33*df9d235cSBilly Tsai  "#pwm-cells":
34*df9d235cSBilly Tsai    const: 3
35*df9d235cSBilly Tsai
36*df9d235cSBilly TsaipatternProperties:
37*df9d235cSBilly Tsai  "^fan-[0-9]+$":
38*df9d235cSBilly Tsai    $ref: fan-common.yaml#
39*df9d235cSBilly Tsai    unevaluatedProperties: false
40*df9d235cSBilly Tsai    required:
41*df9d235cSBilly Tsai      - tach-ch
42*df9d235cSBilly Tsai
43*df9d235cSBilly Tsairequired:
44*df9d235cSBilly Tsai  - reg
45*df9d235cSBilly Tsai  - clocks
46*df9d235cSBilly Tsai  - resets
47*df9d235cSBilly Tsai  - "#pwm-cells"
48*df9d235cSBilly Tsai  - compatible
49*df9d235cSBilly Tsai
50*df9d235cSBilly TsaiadditionalProperties: false
51*df9d235cSBilly Tsai
52*df9d235cSBilly Tsaiexamples:
53*df9d235cSBilly Tsai  - |
54*df9d235cSBilly Tsai    #include <dt-bindings/clock/aspeed-clock.h>
55*df9d235cSBilly Tsai    pwm_tach: pwm-tach-controller@1e610000 {
56*df9d235cSBilly Tsai      compatible = "aspeed,ast2600-pwm-tach";
57*df9d235cSBilly Tsai      reg = <0x1e610000 0x100>;
58*df9d235cSBilly Tsai      clocks = <&syscon ASPEED_CLK_AHB>;
59*df9d235cSBilly Tsai      resets = <&syscon ASPEED_RESET_PWM>;
60*df9d235cSBilly Tsai      #pwm-cells = <3>;
61*df9d235cSBilly Tsai
62*df9d235cSBilly Tsai      fan-0 {
63*df9d235cSBilly Tsai        tach-ch = /bits/ 8 <0x0>;
64*df9d235cSBilly Tsai        pwms = <&pwm_tach 0 40000 0>;
65*df9d235cSBilly Tsai      };
66*df9d235cSBilly Tsai
67*df9d235cSBilly Tsai      fan-1 {
68*df9d235cSBilly Tsai        tach-ch = /bits/ 8 <0x1 0x2>;
69*df9d235cSBilly Tsai        pwms = <&pwm_tach 1 40000 0>;
70*df9d235cSBilly Tsai      };
71*df9d235cSBilly Tsai    };
72