From: Rebecca Cran <rebecca@bsdio.com>
To: Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>, Joel Stanley <joel@jms.id.au>,
Andrew Jeffery <andrew@codeconstruct.com.au>,
devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-aspeed@lists.ozlabs.org, linux-kernel@vger.kernel.org
Cc: Rebecca Cran <rebecca@bsdio.com>, Billy Tsai <billy_tsai@aspeedtech.com>
Subject: [PATCH v3 3/3] dt-bindings: hwmon: (aspeed,g5-pwm-tacho) Move info from txt to yaml
Date: Thu, 4 Dec 2025 14:02:36 -0700 [thread overview]
Message-ID: <20251204210238.40742-4-rebecca@bsdio.com> (raw)
In-Reply-To: <20251204210238.40742-1-rebecca@bsdio.com>
Move the documentation for the aspeed,ast2400-pwm-tacho and
aspeed,ast2500-pwm-tacho devices from a text file to yaml file.
This allows for dts files containing these devices to be validated.
Where the text file documenation of required properties differ from the
implementation, prefer the implementation and update the schema to
match.
"#size-cells" was 1 but implementation is 0.
"#cooling-cells" was marked as required but appears optional.
In the fan subnode, "cooling-levels" is optional according to the code
in drivers/hwmon/aspeed-pwm-tacho.c.
Signed-off-by: Rebecca Cran <rebecca@bsdio.com>
---
Documentation/devicetree/bindings/hwmon/aspeed,pwm-tacho.yaml | 91 ++++++++++++++++++++
Documentation/devicetree/bindings/hwmon/aspeed-pwm-tacho.txt | 73 ----------------
2 files changed, 91 insertions(+), 73 deletions(-)
diff --git a/Documentation/devicetree/bindings/hwmon/aspeed,pwm-tacho.yaml b/Documentation/devicetree/bindings/hwmon/aspeed,pwm-tacho.yaml
new file mode 100644
index 000000000000..b23c3519604b
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/aspeed,pwm-tacho.yaml
@@ -0,0 +1,91 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+# Copyright (C) 2023 Aspeed, Inc.
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/hwmon/aspeed,g5-pwm-tacho.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: ASPEED AST2400/AST2500 PWM and Fan Tacho controller
+
+maintainers:
+ - Billy Tsai <billy_tsai@aspeedtech.com>
+
+description: |
+ The ASPEED PWM controller can support up to 8 PWM outputs. The ASPEED Fan
+ Tacho controller can support up to 16 Fan tachometer inputs.
+
+ There can be up to 8 fans supported. Each fan can have one PWM output and
+ one/two Fan tach inputs.
+
+properties:
+ compatible:
+ enum:
+ - aspeed,ast2400-pwm-tacho
+ - aspeed,ast2500-pwm-tacho
+
+ "#address-cells":
+ const: 1
+
+ "#size-cells":
+ const: 0
+
+ reg:
+ maxItems: 1
+
+ clocks:
+ maxItems: 1
+
+ resets:
+ maxItems: 1
+
+patternProperties:
+ "^fan@[0-9]+$":
+ $ref: fan-common.yaml#
+ unevaluatedProperties: false
+ properties:
+ aspeed,fan-tach-ch:
+ description:
+ The tach channel used for the fan.
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+
+ required:
+ - reg
+ - aspeed,fan-tach-ch
+
+required:
+ - compatible
+ - "#address-cells"
+ - "#size-cells"
+ - reg
+ - pinctrl-names
+ - pinctrl-0
+ - clocks
+ - resets
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/clock/aspeed-clock.h>
+ pwm_tacho: pwmtachocontroller@1e786000 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ #cooling-cells = <2>;
+ reg = <0x1E786000 0x1000>;
+ compatible = "aspeed,ast2500-pwm-tacho";
+ clocks = <&syscon ASPEED_CLK_APB>;
+ resets = <&syscon ASPEED_RESET_PWM>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default>;
+
+ fan@0 {
+ reg = <0x00>;
+ cooling-levels = /bits/ 8 <125 151 177 203 229 255>;
+ aspeed,fan-tach-ch = /bits/ 8 <0x00>;
+ };
+
+ fan@1 {
+ reg = <0x01>;
+ aspeed,fan-tach-ch = /bits/ 8 <0x01 0x02>;
+ };
+ };
diff --git a/Documentation/devicetree/bindings/hwmon/aspeed-pwm-tacho.txt b/Documentation/devicetree/bindings/hwmon/aspeed-pwm-tacho.txt
deleted file mode 100644
index 8645cd3b867a..000000000000
--- a/Documentation/devicetree/bindings/hwmon/aspeed-pwm-tacho.txt
+++ /dev/null
@@ -1,73 +0,0 @@
-ASPEED AST2400/AST2500 PWM and Fan Tacho controller device driver
-
-The ASPEED PWM controller can support upto 8 PWM outputs. The ASPEED Fan Tacho
-controller can support upto 16 Fan tachometer inputs.
-
-There can be upto 8 fans supported. Each fan can have one PWM output and
-one/two Fan tach inputs.
-
-Required properties for pwm-tacho node:
-- #address-cells : should be 1.
-
-- #size-cells : should be 1.
-
-- #cooling-cells: should be 2.
-
-- reg : address and length of the register set for the device.
-
-- pinctrl-names : a pinctrl state named "default" must be defined.
-
-- pinctrl-0 : phandle referencing pin configuration of the PWM ports.
-
-- compatible : should be "aspeed,ast2400-pwm-tacho" for AST2400 and
- "aspeed,ast2500-pwm-tacho" for AST2500.
-
-- clocks : phandle to clock provider with the clock number in the second cell
-
-- resets : phandle to reset controller with the reset number in the second cell
-
-fan subnode format:
-===================
-Under fan subnode there can upto 8 child nodes, with each child node
-representing a fan. If there are 8 fans each fan can have one PWM port and
-one/two Fan tach inputs.
-For PWM port can be configured cooling-levels to create cooling device.
-Cooling device could be bound to a thermal zone for the thermal control.
-
-Required properties for each child node:
-- reg : should specify PWM source port.
- integer value in the range 0 to 7 with 0 indicating PWM port A and
- 7 indicating PWM port H.
-
-- cooling-levels: PWM duty cycle values in a range from 0 to 255
- which correspond to thermal cooling states.
-
-- aspeed,fan-tach-ch : should specify the Fan tach input channel.
- integer value in the range 0 through 15, with 0 indicating
- Fan tach channel 0 and 15 indicating Fan tach channel 15.
- At least one Fan tach input channel is required.
-
-Examples:
-
-pwm_tacho: pwmtachocontroller@1e786000 {
- #address-cells = <1>;
- #size-cells = <1>;
- #cooling-cells = <2>;
- reg = <0x1E786000 0x1000>;
- compatible = "aspeed,ast2500-pwm-tacho";
- clocks = <&syscon ASPEED_CLK_APB>;
- resets = <&syscon ASPEED_RESET_PWM>;
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default>;
-
- fan@0 {
- reg = <0x00>;
- cooling-levels = /bits/ 8 <125 151 177 203 229 255>;
- aspeed,fan-tach-ch = /bits/ 8 <0x00>;
- };
-
- fan@1 {
- reg = <0x01>;
- aspeed,fan-tach-ch = /bits/ 8 <0x01 0x02>;
- };
-};
--
2.47.3
next prev parent reply other threads:[~2025-12-04 21:03 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-04 21:02 [PATCH v3 0/3] Add device tree for ASRock Rack ALTRAD8 BMC Rebecca Cran
2025-12-04 21:02 ` [PATCH v3 1/3] dt-bindings: arm: aspeed: add ASRock Rack ALTRAD8 board Rebecca Cran
2025-12-04 21:02 ` [PATCH v3 2/3] ARM: dts: aspeed: add device tree for ASRock Rack ALTRAD8 BMC Rebecca Cran
2025-12-04 22:29 ` Tan Siewert
2025-12-05 14:08 ` Tan Siewert
2025-12-04 21:02 ` Rebecca Cran [this message]
2025-12-04 21:12 ` [PATCH v3 3/3] dt-bindings: hwmon: (aspeed,g5-pwm-tacho) Move info from txt to yaml Rebecca Cran
2025-12-05 12:31 ` Rob Herring (Arm)
2025-12-05 14:49 ` Rob Herring
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251204210238.40742-4-rebecca@bsdio.com \
--to=rebecca@bsdio.com \
--cc=andrew@codeconstruct.com.au \
--cc=billy_tsai@aspeedtech.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=joel@jms.id.au \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-aspeed@lists.ozlabs.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®