2023-05-08 09:27:25

by Stanislav Jakubek

[permalink] [raw]
Subject: [PATCH] dt-bindings: pwm: brcm,kona-pwm: convert to YAML

Convert Broadcom Kona family PWM controller bindings to DT schema.

Signed-off-by: Stanislav Jakubek <[email protected]>
---
.../devicetree/bindings/pwm/brcm,kona-pwm.txt | 21 --------
.../bindings/pwm/brcm,kona-pwm.yaml | 51 +++++++++++++++++++
2 files changed, 51 insertions(+), 21 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/pwm/brcm,kona-pwm.txt
create mode 100644 Documentation/devicetree/bindings/pwm/brcm,kona-pwm.yaml

diff --git a/Documentation/devicetree/bindings/pwm/brcm,kona-pwm.txt b/Documentation/devicetree/bindings/pwm/brcm,kona-pwm.txt
deleted file mode 100644
index c42eecfc81ed..000000000000
--- a/Documentation/devicetree/bindings/pwm/brcm,kona-pwm.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-Broadcom Kona PWM controller device tree bindings
-
-This controller has 6 channels.
-
-Required Properties :
-- compatible: should contain "brcm,kona-pwm"
-- reg: physical base address and length of the controller's registers
-- clocks: phandle + clock specifier pair for the external clock
-- #pwm-cells: Should be 3. See pwm.yaml in this directory for a
- description of the cells format.
-
-Refer to clocks/clock-bindings.txt for generic clock consumer properties.
-
-Example:
-
-pwm: pwm@3e01a000 {
- compatible = "brcm,bcm11351-pwm", "brcm,kona-pwm";
- reg = <0x3e01a000 0xc4>;
- clocks = <&pwm_clk>;
- #pwm-cells = <3>;
-};
diff --git a/Documentation/devicetree/bindings/pwm/brcm,kona-pwm.yaml b/Documentation/devicetree/bindings/pwm/brcm,kona-pwm.yaml
new file mode 100644
index 000000000000..d1a58d130708
--- /dev/null
+++ b/Documentation/devicetree/bindings/pwm/brcm,kona-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/brcm,kona-pwm.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Broadcom Kona family PWM controller
+
+description:
+ This controller has 6 channels.
+
+maintainers:
+ - Florian Fainelli <[email protected]>
+
+allOf:
+ - $ref: pwm.yaml#
+
+properties:
+ compatible:
+ items:
+ - enum:
+ - brcm,bcm11351-pwm
+ - const: brcm,kona-pwm
+
+ reg:
+ maxItems: 1
+
+ clocks:
+ maxItems: 1
+
+ '#pwm-cells':
+ const: 3
+
+required:
+ - compatible
+ - reg
+ - clocks
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include "dt-bindings/clock/bcm281xx.h"
+
+ pwm@3e01a000 {
+ compatible = "brcm,bcm11351-pwm", "brcm,kona-pwm";
+ reg = <0x3e01a000 0xcc>;
+ clocks = <&slave_ccu BCM281XX_SLAVE_CCU_PWM>;
+ #pwm-cells = <3>;
+ };
+...
--
2.25.1


2023-05-08 09:31:29

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: pwm: brcm,kona-pwm: convert to YAML

On 08/05/2023 10:57, Stanislav Jakubek wrote:
> Convert Broadcom Kona family PWM controller bindings to DT schema.

Please mention in the commit log changes to original binding. You added
new compatible.

>
> Signed-off-by: Stanislav Jakubek <[email protected]>
> ---
> .../devicetree/bindings/pwm/brcm,kona-pwm.txt | 21 --------
> .../bindings/pwm/brcm,kona-pwm.yaml | 51 +++++++++++++++++++
> 2 files changed, 51 insertions(+), 21 deletions(-)


Best regards,
Krzysztof

2023-05-08 09:40:50

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: pwm: brcm,kona-pwm: convert to YAML


On Mon, 08 May 2023 10:57:27 +0200, Stanislav Jakubek wrote:
> Convert Broadcom Kona family PWM controller bindings to DT schema.
>
> Signed-off-by: Stanislav Jakubek <[email protected]>
> ---
> .../devicetree/bindings/pwm/brcm,kona-pwm.txt | 21 --------
> .../bindings/pwm/brcm,kona-pwm.yaml | 51 +++++++++++++++++++
> 2 files changed, 51 insertions(+), 21 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/pwm/brcm,kona-pwm.txt
> create mode 100644 Documentation/devicetree/bindings/pwm/brcm,kona-pwm.yaml
>

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/media/rockchip-isp1.example.dtb: camera@3c: port:endpoint:data-lanes: [[1]] is too short
From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/media/i2c/ovti,ov2685.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/media/i2c/ovti,ov2685.example.dtb: camera-sensor@3c: port:endpoint:data-lanes: [[1]] is too short
From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/media/i2c/ovti,ov2685.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie-ep.example.dtb: pcie-ep@33800000: Unevaluated properties are not allowed ('assigned-clock-parents', 'assigned-clock-rates', 'assigned-clocks' were unexpected)
From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie-ep.yaml

doc reference errors (make refcheckdocs):
Documentation/usb/gadget_uvc.rst: Documentation/userspace-api/media/v4l/pixfmt-packed.yuv.rst
MAINTAINERS: Documentation/devicetree/bindings/pwm/pwm-apple.yaml

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230508085727.GA7252@standask-GA-A55M-S2HP

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.