2024-01-06 20:46:25

by Duje Mihanović

[permalink] [raw]
Subject: [PATCH v2] dt-bindings: pxa-pwm: Convert to YAML

Convert the PXA PWM binding file from TXT to YAML.

The original binding does not mention any clocks, but the PWM controller
will not probe without a clock.

Reviewed-by: Uwe Kleine-König <[email protected]>
Signed-off-by: Duje Mihanović <[email protected]>
---
Changes in v2:
- Rename to marvell,pxa-pwm.yaml
- Note addition of clock property
- Update trailers
- Link to v1: https://lore.kernel.org/r/[email protected]
---
.../devicetree/bindings/pwm/marvell,pxa-pwm.yaml | 51 ++++++++++++++++++++++
Documentation/devicetree/bindings/pwm/pxa-pwm.txt | 30 -------------
2 files changed, 51 insertions(+), 30 deletions(-)

diff --git a/Documentation/devicetree/bindings/pwm/marvell,pxa-pwm.yaml b/Documentation/devicetree/bindings/pwm/marvell,pxa-pwm.yaml
new file mode 100644
index 000000000000..fb20e4e1daa8
--- /dev/null
+++ b/Documentation/devicetree/bindings/pwm/marvell,pxa-pwm.yaml
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pwm/pwm-pxa.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Marvell PXA PWM
+
+maintainers:
+ - Duje Mihanović <[email protected]>
+
+allOf:
+ - $ref: pwm.yaml#
+
+properties:
+ compatible:
+ enum:
+ - marvell,pxa250-pwm
+ - marvell,pxa270-pwm
+ - marvell,pxa168-pwm
+ - marvell,pxa910-pwm
+
+ reg:
+ # Length should be 0x10
+ maxItems: 1
+
+ "#pwm-cells":
+ # Used for specifying the period length in nanoseconds
+ const: 1
+
+ clocks:
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+ - "#pwm-cells"
+ - clocks
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/clock/pxa-clock.h>
+
+ pwm0: pwm@40b00000 {
+ compatible = "marvell,pxa250-pwm";
+ reg = <0x40b00000 0x10>;
+ #pwm-cells = <1>;
+ clocks = <&clks CLK_PWM0>;
+ };
diff --git a/Documentation/devicetree/bindings/pwm/pxa-pwm.txt b/Documentation/devicetree/bindings/pwm/pxa-pwm.txt
deleted file mode 100644
index 5ae9f1e3c338..000000000000
--- a/Documentation/devicetree/bindings/pwm/pxa-pwm.txt
+++ /dev/null
@@ -1,30 +0,0 @@
-Marvell PWM controller
-
-Required properties:
-- compatible: should be one or more of:
- - "marvell,pxa250-pwm"
- - "marvell,pxa270-pwm"
- - "marvell,pxa168-pwm"
- - "marvell,pxa910-pwm"
-- reg: Physical base address and length of the registers used by the PWM channel
- Note that one device instance must be created for each PWM that is used, so the
- length covers only the register window for one PWM output, not that of the
- entire PWM controller. Currently length is 0x10 for all supported devices.
-- #pwm-cells: Should be 1. This cell is used to specify the period in
- nanoseconds.
-
-Example PWM device node:
-
-pwm0: pwm@40b00000 {
- compatible = "marvell,pxa250-pwm";
- reg = <0x40b00000 0x10>;
- #pwm-cells = <1>;
-};
-
-Example PWM client node:
-
-backlight {
- compatible = "pwm-backlight";
- pwms = <&pwm0 5000000>;
- ...
-}

---
base-commit: 610a9b8f49fbcf1100716370d3b5f6f884a2835a
change-id: 20240105-pxa-pwm-yaml-8dbb00dfe7c6

Best regards,
--
Duje Mihanović <[email protected]>




2024-01-06 23:26:06

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH v2] dt-bindings: pxa-pwm: Convert to YAML


On Sat, 06 Jan 2024 21:45:46 +0100, Duje Mihanović wrote:
> Convert the PXA PWM binding file from TXT to YAML.
>
> The original binding does not mention any clocks, but the PWM controller
> will not probe without a clock.
>
> Reviewed-by: Uwe Kleine-König <[email protected]>
> Signed-off-by: Duje Mihanović <[email protected]>
> ---
> Changes in v2:
> - Rename to marvell,pxa-pwm.yaml
> - Note addition of clock property
> - Update trailers
> - Link to v1: https://lore.kernel.org/r/[email protected]
> ---
> .../devicetree/bindings/pwm/marvell,pxa-pwm.yaml | 51 ++++++++++++++++++++++
> Documentation/devicetree/bindings/pwm/pxa-pwm.txt | 30 -------------
> 2 files changed, 51 insertions(+), 30 deletions(-)
>

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pwm/marvell,pxa-pwm.yaml: $id: Cannot determine base path from $id, relative path/filename doesn't match actual path or filename
$id: http://devicetree.org/schemas/pwm/pwm-pxa.yaml
file: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pwm/marvell,pxa-pwm.yaml

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/[email protected]

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.


2024-01-07 10:37:24

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v2] dt-bindings: pxa-pwm: Convert to YAML

On 06/01/2024 21:45, Duje Mihanović wrote:
> Convert the PXA PWM binding file from TXT to YAML.
>
> The original binding does not mention any clocks, but the PWM controller
> will not probe without a clock.
>
> Reviewed-by: Uwe Kleine-König <[email protected]>
> Signed-off-by: Duje Mihanović <[email protected]>
> ---
> Changes in v2:
> - Rename to marvell,pxa-pwm.yaml
> - Note addition of clock property
> - Update trailers
> - Link to v1: https://lore.kernel.org/r/[email protected]
> ---
> .../devicetree/bindings/pwm/marvell,pxa-pwm.yaml | 51 ++++++++++++++++++++++
> Documentation/devicetree/bindings/pwm/pxa-pwm.txt | 30 -------------
> 2 files changed, 51 insertions(+), 30 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/pwm/marvell,pxa-pwm.yaml b/Documentation/devicetree/bindings/pwm/marvell,pxa-pwm.yaml
> new file mode 100644
> index 000000000000..fb20e4e1daa8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/pwm/marvell,pxa-pwm.yaml
> @@ -0,0 +1,51 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/pwm/pwm-pxa.yaml#

It does not look like you tested the bindings, at least after quick
look. Please run `make dt_binding_check` (see
Documentation/devicetree/bindings/writing-schema.rst for instructions).
Maybe you need to update your dtschema and yamllint.

Best regards,
Krzysztof