[LINUX PATCH 2/3] dt-bindings: timer: Update device tree bindings for cadence TTC PWM

Krzysztof Kozlowski krzk at kernel.org
Thu Jan 12 02:10:52 PST 2023


On 12/01/2023 08:15, Mubin Sayyed wrote:
> Cadence TTC can act as PWM device, it is supported through

Subject: drop second/last, redundant "device tree bindings". The
"dt-bindings" prefix is already stating that these are bindings.

Anyway subject is poor - every commit is an "update", so basically you
said there nothing...

> separate PWM framework based driver. Decision to configure
> specific TTC device as PWM or clocksource/clockevent would
> be done based on presence of "#pwm-cells" property.
> 
> Also, interrupt property is not required for TTC PWM driver.
> Updated bindings to support TTC PWM configuration.

Please use scripts/get_maintainers.pl to get a list of necessary people
and lists to CC.  It might happen, that command when run on an older
kernel, gives you outdated entries.  Therefore please be sure you base
your patches on recent Linux kernel.

> 
> Signed-off-by: Mubin Sayyed <mubin.sayyed at amd.com>
> ---
>  .../devicetree/bindings/timer/cdns,ttc.yaml   | 25 ++++++++++++++++++-
>  1 file changed, 24 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/timer/cdns,ttc.yaml b/Documentation/devicetree/bindings/timer/cdns,ttc.yaml
> index 7d821fd480f6..2855e92e02e3 100644
> --- a/Documentation/devicetree/bindings/timer/cdns,ttc.yaml
> +++ b/Documentation/devicetree/bindings/timer/cdns,ttc.yaml
> @@ -32,12 +32,26 @@ properties:
>      description: |
>        Bit width of the timer, necessary if not 16.
>  
> +  "#pwm-cells":
> +    description: |
> +      Required to configure TTC as PWM device, supported cells are 0 to 3.
> +    minimum: 0
> +    maximum: 3

Better make it const. What's the benefit of flexible cells? You also
should describe the arguments.

> +
>  required:
>    - compatible
>    - reg
> -  - interrupts
>    - clocks
>  
> +allOf:
> +  - if:
> +      not:
> +        required:
> +          - "#pwm-cells"
> +    then:
> +      required:
> +        - interrupts
> +
>  additionalProperties: false
>  
>  examples:
> @@ -50,3 +64,12 @@ examples:
>          clocks = <&cpu_clk 3>;
>          timer-width = <32>;
>      };
> +
> +  - |
> +    ttc1: ttc1 at f8002000 {

Node names should be generic.
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation

> +        compatible = "cdns,ttc";
> +        reg = <0xF8002000 0x1000>;

lowercase hex

> +        clocks = <&cpu_clk 3>;
> +        timer-width = <32>;
> +        #pwm-cells = <3>;
> +    };

Best regards,
Krzysztof




More information about the linux-arm-kernel mailing list