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