Allwinner H616 PWM block is quite different from the A10 or H6, but at
the end, it uses the same clocks as the H6; so the sun4i pwm binding can
be used.
It has 6 channels than can generate PWM waveforms or clocks if bypass is
enabled.
Suggested-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Richard Genoud <richard.genoud@bootlin.com>
---
.../bindings/pwm/allwinner,sun4i-a10-pwm.yaml | 19 ++++++++++++++++++-
1 file changed, 18 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml b/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml
index 1197858e431f..4f58110ec98f 100644
--- a/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml
+++ b/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml
@@ -14,6 +14,9 @@ properties:
"#pwm-cells":
const: 3
+ "#clock-cells":
+ const: 1
+
compatible:
oneOf:
- const: allwinner,sun4i-a10-pwm
@@ -36,6 +39,7 @@ properties:
- const: allwinner,sun50i-h5-pwm
- const: allwinner,sun5i-a13-pwm
- const: allwinner,sun50i-h6-pwm
+ - const: allwinner,sun50i-h616-pwm
reg:
maxItems: 1
@@ -62,7 +66,9 @@ allOf:
properties:
compatible:
contains:
- const: allwinner,sun50i-h6-pwm
+ enum:
+ - allwinner,sun50i-h6-pwm
+ - allwinner,sun50i-h616-pwm
then:
properties:
@@ -83,6 +89,17 @@ allOf:
clocks:
maxItems: 1
+ - if:
+ not:
+ properties:
+ compatible:
+ contains:
+ const: allwinner,sun50i-h616-pwm
+
+ then:
+ properties:
+ "#clock-cells": false
+
required:
- compatible
- reg
--
2.47.3
On 17/12/2025 09:25, Richard Genoud wrote: > Allwinner H616 PWM block is quite different from the A10 or H6, but at > the end, it uses the same clocks as the H6; so the sun4i pwm binding can > be used. > It has 6 channels than can generate PWM waveforms or clocks if bypass is > enabled. > > Suggested-by: Krzysztof Kozlowski <krzk@kernel.org> Hm? Where did I suggest anything about adding clock cells or documenting this allwinner device? Best regards, Krzysztof
Le 18/12/2025 à 11:15, Krzysztof Kozlowski a écrit : > On 17/12/2025 09:25, Richard Genoud wrote: >> Allwinner H616 PWM block is quite different from the A10 or H6, but at >> the end, it uses the same clocks as the H6; so the sun4i pwm binding can >> be used. >> It has 6 channels than can generate PWM waveforms or clocks if bypass is >> enabled. >> >> Suggested-by: Krzysztof Kozlowski <krzk@kernel.org> > > Hm? Where did I suggest anything about adding clock cells or documenting > this allwinner device? Hum, indeed. The suggestion, as I understood it, was to re-use the sun4i PWM binding, which is why this patch exists now. But I agree, the suggestion wasn't on the content itself. Sorry if it's misleading. > > > Best regards, > Krzysztof Regards, Richard
Dne sreda, 17. december 2025 ob 09:25:01 Srednjeevropski standardni čas je Richard Genoud napisal(a): > Allwinner H616 PWM block is quite different from the A10 or H6, but at > the end, it uses the same clocks as the H6; so the sun4i pwm binding can > be used. > It has 6 channels than can generate PWM waveforms or clocks if bypass is > enabled. > > Suggested-by: Krzysztof Kozlowski <krzk@kernel.org> > Signed-off-by: Richard Genoud <richard.genoud@bootlin.com> > --- > .../bindings/pwm/allwinner,sun4i-a10-pwm.yaml | 19 ++++++++++++++++++- > 1 file changed, 18 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml b/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml > index 1197858e431f..4f58110ec98f 100644 > --- a/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml > +++ b/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml > @@ -14,6 +14,9 @@ properties: > "#pwm-cells": > const: 3 > > + "#clock-cells": > + const: 1 Why #clock-cells? I don't see any reason to add it. Other properties seem fine. Best regards, Jernej > + > compatible: > oneOf: > - const: allwinner,sun4i-a10-pwm > @@ -36,6 +39,7 @@ properties: > - const: allwinner,sun50i-h5-pwm > - const: allwinner,sun5i-a13-pwm > - const: allwinner,sun50i-h6-pwm > + - const: allwinner,sun50i-h616-pwm > > reg: > maxItems: 1 > @@ -62,7 +66,9 @@ allOf: > properties: > compatible: > contains: > - const: allwinner,sun50i-h6-pwm > + enum: > + - allwinner,sun50i-h6-pwm > + - allwinner,sun50i-h616-pwm > > then: > properties: > @@ -83,6 +89,17 @@ allOf: > clocks: > maxItems: 1 > > + - if: > + not: > + properties: > + compatible: > + contains: > + const: allwinner,sun50i-h616-pwm > + > + then: > + properties: > + "#clock-cells": false > + > required: > - compatible > - reg >
© 2016 - 2026 Red Hat, Inc.