[PATCH v3 1/3] dt-bindings: pwm: amlogic: Add core clock for S4 like

Conor Dooley conor at kernel.org
Mon Sep 28 09:46:31 PDT 2026


On Sun, Sep 27, 2026 at 04:28:15PM +0200, Ronald Claveau via B4 Relay wrote:
> 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 S4, and devices
> which fallback to S4, 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        | 21 ++++++++++++++++++---
>  1 file changed, 18 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/pwm/pwm-amlogic.yaml b/Documentation/devicetree/bindings/pwm/pwm-amlogic.yaml
> index c337d85da40f1..e9cd5f1fdf264 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
> @@ -143,9 +143,15 @@ allOf:
>            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:
> +          items:
> +            - const: channel-a
> +            - const: channel-b
> +            - const: core
>        required:
>          - clocks
> +        - clock-names
>  
>    - if:
>        properties:
> @@ -179,6 +185,15 @@ examples:
>      pwm at 1000 {
>        compatible = "amlogic,meson-s4-pwm";
>        reg = <0x1000 0x10>;
> -      clocks = <&pwm_src_a>, <&pwm_src_b>;
> +      clocks = <&pwm_src_a>, <&pwm_src_b>, <&pwm_src_core>;
> +      clock-names = "channel-a", "channel-b", "core";
> +      #pwm-cells = <3>;
> +    };
> +  - |
> +    pwm at 60000 {

If you respin, drop the second example please, since it doesn't actually
do anything different anymore.

Acked-by: Conor Dooley <conor.dooley at microchip.com>
pw-bot: not-applicable

> +      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
> 
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-amlogic/attachments/20260928/d18ca7ff/attachment.sig>


More information about the linux-amlogic mailing list