2024-02-26 10:02:32

by Mubin Sayyed

[permalink] [raw]
Subject: [PATCH v3] dt-bindings: timer: Add support for cadence TTC PWM

Cadence TTC can act as PWM device, it will be supported through
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.
Update bindings to support TTC PWM configuration.

Signed-off-by: Mubin Sayyed <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
---
Changes for v3:
Add Reviewed-by: Krzysztof Kozlowski <[email protected]>
tag
Remove bindings from subject
1/3 and 3/3 are dropped as of now (WIP).

Changes for v2:
Update subject
Modify #pwm-cells to constant 3
Update example to use generic name

link for v2:
https://lore.kernel.org/linux-arm-kernel/[email protected]/T/
---
.../devicetree/bindings/timer/cdns,ttc.yaml | 22 ++++++++++++++++++-
1 file changed, 21 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/timer/cdns,ttc.yaml b/Documentation/devicetree/bindings/timer/cdns,ttc.yaml
index dbba780c9b02..da342464d32e 100644
--- a/Documentation/devicetree/bindings/timer/cdns,ttc.yaml
+++ b/Documentation/devicetree/bindings/timer/cdns,ttc.yaml
@@ -32,12 +32,23 @@ properties:
description: |
Bit width of the timer, necessary if not 16.

+ "#pwm-cells":
+ const: 3
+
required:
- compatible
- reg
- - interrupts
- clocks

+allOf:
+ - if:
+ not:
+ required:
+ - "#pwm-cells"
+ then:
+ required:
+ - interrupts
+
additionalProperties: false

examples:
@@ -50,3 +61,12 @@ examples:
clocks = <&cpu_clk 3>;
timer-width = <32>;
};
+
+ - |
+ pwm: pwm@f8002000 {
+ compatible = "cdns,ttc";
+ reg = <0xf8002000 0x1000>;
+ clocks = <&cpu_clk 3>;
+ timer-width = <32>;
+ #pwm-cells = <3>;
+ };
--
2.25.1



2024-02-26 15:31:07

by Daniel Lezcano

[permalink] [raw]
Subject: Re: [PATCH v3] dt-bindings: timer: Add support for cadence TTC PWM

On 26/02/2024 10:33, Mubin Sayyed wrote:
> Cadence TTC can act as PWM device, it will be supported through
> 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.
> Update bindings to support TTC PWM configuration.
>
> Signed-off-by: Mubin Sayyed <[email protected]>
> Reviewed-by: Krzysztof Kozlowski <[email protected]>
> ---
> Changes for v3:
> Add Reviewed-by: Krzysztof Kozlowski <[email protected]>
> tag
> Remove bindings from subject
> 1/3 and 3/3 are dropped as of now (WIP).
>
> Changes for v2:
> Update subject
> Modify #pwm-cells to constant 3
> Update example to use generic name
>
> link for v2:
> https://lore.kernel.org/linux-arm-kernel/[email protected]/T/
> ---

Applied, thanks


--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog


Subject: [tip: timers/core] dt-bindings: timer: Add support for cadence TTC PWM

The following commit has been merged into the timers/core branch of tip:

Commit-ID: c819dbd078321f948101ef7a19f1e171164bb3cf
Gitweb: https://git.kernel.org/tip/c819dbd078321f948101ef7a19f1e171164bb3cf
Author: Mubin Sayyed <[email protected]>
AuthorDate: Mon, 26 Feb 2024 15:03:33 +05:30
Committer: Daniel Lezcano <[email protected]>
CommitterDate: Mon, 26 Feb 2024 15:43:58 +01:00

dt-bindings: timer: Add support for cadence TTC PWM

Cadence TTC can act as PWM device, it will be supported through
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.
Update bindings to support TTC PWM configuration.

Signed-off-by: Mubin Sayyed <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Signed-off-by: Daniel Lezcano <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
---
Documentation/devicetree/bindings/timer/cdns,ttc.yaml | 22 +++++++++-
1 file changed, 21 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/timer/cdns,ttc.yaml b/Documentation/devicetree/bindings/timer/cdns,ttc.yaml
index dbba780..da34246 100644
--- a/Documentation/devicetree/bindings/timer/cdns,ttc.yaml
+++ b/Documentation/devicetree/bindings/timer/cdns,ttc.yaml
@@ -32,12 +32,23 @@ properties:
description: |
Bit width of the timer, necessary if not 16.

+ "#pwm-cells":
+ const: 3
+
required:
- compatible
- reg
- - interrupts
- clocks

+allOf:
+ - if:
+ not:
+ required:
+ - "#pwm-cells"
+ then:
+ required:
+ - interrupts
+
additionalProperties: false

examples:
@@ -50,3 +61,12 @@ examples:
clocks = <&cpu_clk 3>;
timer-width = <32>;
};
+
+ - |
+ pwm: pwm@f8002000 {
+ compatible = "cdns,ttc";
+ reg = <0xf8002000 0x1000>;
+ clocks = <&cpu_clk 3>;
+ timer-width = <32>;
+ #pwm-cells = <3>;
+ };