Re: [PATCH 3/7] pwm: dwc: add of/platform support

From: Ben Dooks
Date: Wed Jul 13 2022 - 07:57:06 EST


On 12/07/2022 23:17, Rob Herring wrote:
On Tue, Jul 12, 2022 at 11:01:09AM +0100, Ben Dooks wrote:
The dwc pwm controller can be used in non-PCI systems, so allow
either platform or OF based probing.

Signed-off-by: Ben Dooks <ben.dooks@xxxxxxxxxx>
---
.../devicetree/bindings/pwm/pwm-synposys.yaml | 40 ++++++++++++++

Use compatible string for filename.

ok, will fix.

drivers/pwm/Kconfig | 5 +-
drivers/pwm/pwm-dwc.c | 53 +++++++++++++++++++
3 files changed, 96 insertions(+), 2 deletions(-)
create mode 100644 Documentation/devicetree/bindings/pwm/pwm-synposys.yaml

diff --git a/Documentation/devicetree/bindings/pwm/pwm-synposys.yaml b/Documentation/devicetree/bindings/pwm/pwm-synposys.yaml
new file mode 100644
index 000000000000..38ac0da75272
--- /dev/null
+++ b/Documentation/devicetree/bindings/pwm/pwm-synposys.yaml
@@ -0,0 +1,40 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+# Copyright (C) 2022 SiFive, Inc.
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pwm/pwm-synposys.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Synopsys PWM controller
+
+maintainers:
+ - Ben Dooks <ben.dooks@xxxxxxxxxx>
+
+properties:
+ "#pwm-cells":
+ description: |
+ See pwm.yaml in this directory for a description of the cells format.

pwm.yaml doesn't define how many cells. You need to. And you don't need
generic descriptions.

"#pwm-cells":
const: 1

should be sufficient then?

+
+ clocks:
+ items:
+ - description: Interface bus clock
+ - description: PWM reference clock
+
+ clock-names:
+ items:
+ - const: bus
+ - const: timer
+
+ compatible:

Convention is compatible comes first in the list.

ok, fixed.


+ oneOf:
+ - items:
+ - const: snps,pwm

Don't need oneOf or items. Just 'const: snps,pwm'.

ok, fixed.


That's pretty generic for a compatible. There's only 1 version of the IP
or is the version discoverable?

This IP block doesn't seem to have evolved much since being included so
I don't think so at this point, most of the revision list is for the
internal options and cleanup.

I will go through and check if all the compile-time properties are deal
with, but that'll be adding more properiteis if they are needed.

+
+required:
+ - "#pwm-cells"
+ - compatible
+ - reg
+ - clocks
+ - clock-names
+
+additionalProperties: false