[PATCH v2 1/3] dt-bindings: pwm: amlogic: Add core clock for T7
Ronald Claveau via B4 Relay
devnull+linux-kernel-dev.aliel.fr at kernel.org
Fri Sep 25 08:13:28 PDT 2026
From: Ronald Claveau <linux-kernel-dev at aliel.fr>
The T7, A1, C3, and S4 PWM controllers have a system clock in
addition to the two input clocks of channels A and B.
The channel clocks are acquired by index in the pwm driver,
where the core clock is fetched by name, with optional get
which is silent when not provided.
Require clock-names and minimum 3 items for T7, where the
PWM devices do not work without all 3 clocks.
Add an example showing T7 usage with its fallback to
amlogic,meson-s4-pwm.
Signed-off-by: Ronald Claveau <linux-kernel-dev at aliel.fr>
---
.../devicetree/bindings/pwm/pwm-amlogic.yaml | 33 ++++++++++++++++++++--
1 file changed, 31 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/pwm/pwm-amlogic.yaml b/Documentation/devicetree/bindings/pwm/pwm-amlogic.yaml
index c337d85da40f1..59320f288552b 100644
--- a/Documentation/devicetree/bindings/pwm/pwm-amlogic.yaml
+++ b/Documentation/devicetree/bindings/pwm/pwm-amlogic.yaml
@@ -62,7 +62,7 @@ properties:
clock-names:
minItems: 1
- maxItems: 2
+ maxItems: 3
power-domains:
maxItems: 1
@@ -140,13 +140,34 @@ allOf:
then:
properties:
clocks:
+ minItems: 2
items:
- description: input clock of PWM channel A
- description: input clock of PWM channel B
- clock-names: false
+ - description: gate clock for the PWM controller
+ clock-names:
+ minItems: 2
+ items:
+ - const: channel-a
+ - const: channel-b
+ - const: core
required:
- clocks
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: amlogic,t7-pwm
+ then:
+ properties:
+ clocks:
+ minItems: 3
+ clock-names:
+ minItems: 3
+ required:
+ - clock-names
+
- if:
properties:
compatible:
@@ -182,3 +203,11 @@ examples:
clocks = <&pwm_src_a>, <&pwm_src_b>;
#pwm-cells = <3>;
};
+ - |
+ pwm at 60000 {
+ compatible = "amlogic,t7-pwm", "amlogic,meson-s4-pwm";
+ reg = <0x60000 0x24>;
+ clocks = <&channel_a>, <&channel_b>, <&core>;
+ clock-names = "channel-a", "channel-b", "core";
+ #pwm-cells = <3>;
+ };
--
2.49.0
More information about the linux-amlogic
mailing list