diff mbox series

dt-bindings: reset: brcm,bcm63138-pmb: convert to yaml

Message ID 20240611035329.33648-2-kanakshilledar@gmail.com (mailing list archive)
State New
Headers show
Series dt-bindings: reset: brcm,bcm63138-pmb: convert to yaml | expand

Commit Message

Kanak Shilledar June 11, 2024, 3:53 a.m. UTC
Convert the Broadcom BCM63138 Processor Monitor Bus to newer DT
schema. Created DT schema based on the .txt file which had `compatible`,
`reg` and `"#reset-cells" as required properties.
Added one line description which was missing in the original .txt file.
Added Philipp Zabel as the maintainer (took from MAINTAINERS file).

Signed-off-by: Kanak Shilledar <kanakshilledar@gmail.com>
---
 .../bindings/reset/brcm,bcm63138-pmb.txt      | 19 --------
 .../bindings/reset/brcm,bcm63138-pmb.yaml     | 43 +++++++++++++++++++
 2 files changed, 43 insertions(+), 19 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.txt
 create mode 100644 Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.yaml

Comments

Rob Herring (Arm) June 11, 2024, 5:30 a.m. UTC | #1
On Tue, 11 Jun 2024 09:23:23 +0530, Kanak Shilledar wrote:
> Convert the Broadcom BCM63138 Processor Monitor Bus to newer DT
> schema. Created DT schema based on the .txt file which had `compatible`,
> `reg` and `"#reset-cells" as required properties.
> Added one line description which was missing in the original .txt file.
> Added Philipp Zabel as the maintainer (took from MAINTAINERS file).
> 
> Signed-off-by: Kanak Shilledar <kanakshilledar@gmail.com>
> ---
>  .../bindings/reset/brcm,bcm63138-pmb.txt      | 19 --------
>  .../bindings/reset/brcm,bcm63138-pmb.yaml     | 43 +++++++++++++++++++
>  2 files changed, 43 insertions(+), 19 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.txt
>  create mode 100644 Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.yaml
> 

My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.example.dtb: reset-controller@4800c0: '#power-domain-cells' is a required property
	from schema $id: http://devicetree.org/schemas/power/brcm,bcm-pmb.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.example.dtb: reset-controller@4800c0: '#reset-cells' does not match any of the regexes: 'pinctrl-[0-9]+'
	from schema $id: http://devicetree.org/schemas/power/brcm,bcm-pmb.yaml#

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20240611035329.33648-2-kanakshilledar@gmail.com

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.
Krzysztof Kozlowski June 11, 2024, 6:58 a.m. UTC | #2
On 11/06/2024 05:53, Kanak Shilledar wrote:
> Convert the Broadcom BCM63138 Processor Monitor Bus to newer DT
> schema. Created DT schema based on the .txt file which had `compatible`,
> `reg` and `"#reset-cells" as required properties.
> Added one line description which was missing in the original .txt file.
> Added Philipp Zabel as the maintainer (took from MAINTAINERS file).

One of the necessary steps EVERYTIME you make conversion of some random
binding is to grep. git grep. You grep for stale paths and usage of
compatible in DTS. Sometimes you find nothing, sometimes you would find
something.

`git grep bcm63138-pmb` gives you:
1. stale path which you did not fix,
2. duplicated schema...

Best regards,
Krzysztof
Kanak Shilledar June 11, 2024, 7:23 a.m. UTC | #3
On Tue, Jun 11, 2024 at 12:28 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> On 11/06/2024 05:53, Kanak Shilledar wrote:
> > Convert the Broadcom BCM63138 Processor Monitor Bus to newer DT
> > schema. Created DT schema based on the .txt file which had `compatible`,
> > `reg` and `"#reset-cells" as required properties.
> > Added one line description which was missing in the original .txt file.
> > Added Philipp Zabel as the maintainer (took from MAINTAINERS file).
>
> One of the necessary steps EVERYTIME you make conversion of some random
> binding is to grep. git grep. You grep for stale paths and usage of
> compatible in DTS. Sometimes you find nothing, sometimes you would find
> something.
>
> `git grep bcm63138-pmb` gives you:
> 1. stale path which you did not fix,
> 2. duplicated schema...

There is `brcm,bcm63138-pmb` defined in "/power/brcm,bcm-pmb.yaml" and
"/reset/brcm,bcm63138-pmb.txt" but they both are for different purposes.
By stale path are you referring that I will need to convert
"/arm/bcm/brcm,bcm63138.txt"
to DT Schema as well?

> Best regards,
> Krzysztof
>
Krzysztof Kozlowski June 11, 2024, 8:14 a.m. UTC | #4
On 11/06/2024 09:23, Kanak Shilledar wrote:
> On Tue, Jun 11, 2024 at 12:28 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>>
>> On 11/06/2024 05:53, Kanak Shilledar wrote:
>>> Convert the Broadcom BCM63138 Processor Monitor Bus to newer DT
>>> schema. Created DT schema based on the .txt file which had `compatible`,
>>> `reg` and `"#reset-cells" as required properties.
>>> Added one line description which was missing in the original .txt file.
>>> Added Philipp Zabel as the maintainer (took from MAINTAINERS file).
>>
>> One of the necessary steps EVERYTIME you make conversion of some random
>> binding is to grep. git grep. You grep for stale paths and usage of
>> compatible in DTS. Sometimes you find nothing, sometimes you would find
>> something.
>>
>> `git grep bcm63138-pmb` gives you:
>> 1. stale path which you did not fix,
>> 2. duplicated schema...
> 
> There is `brcm,bcm63138-pmb` defined in "/power/brcm,bcm-pmb.yaml" and
> "/reset/brcm,bcm63138-pmb.txt" but they both are for different purposes.

What do you mean by "different purposes"? It is the same device. You
cannot have same device with same compatible and two different bindings.
Testing also told you that: warnings.

> By stale path are you referring that I will need to convert
> "/arm/bcm/brcm,bcm63138.txt"
> to DT Schema as well?

No, I mean each wrong/stale path needs to be fixed. E.g. dropped or
updated, depending on the case.

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.txt b/Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.txt
deleted file mode 100644
index a98872d27872..000000000000
--- a/Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.txt
+++ /dev/null
@@ -1,19 +0,0 @@ 
-Broadcom BCM63138 Processor Monitor Bus binding
-===============================================
-
-Please also refer to reset.txt in this directory for common reset
-controller binding usage.
-
-Require properties:
-
-- compatible: must be "brcm,bcm63138-pmb"
-- reg: base register address and size for this bus controller
-- #reset-cells: must be 2 first cell is the address within the bus instance designated
-  by the phandle, and the second is the number of zones for this peripheral
-
-Example:
-	pmb0: reset-controller@4800c0 {
-		compatible = "brcm,bcm63138-pmb";
-		reg = <0x4800c0 0x10>;
-		#reset-cells = <2>;
-	};
diff --git a/Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.yaml b/Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.yaml
new file mode 100644
index 000000000000..162b4c472c18
--- /dev/null
+++ b/Documentation/devicetree/bindings/reset/brcm,bcm63138-pmb.yaml
@@ -0,0 +1,43 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/reset/brcm,bcm63138-pmb.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Broadcom BCM63138 Processor Monitor Bus
+
+description: This document describes the BCM63138 processor monitor bus.
+
+maintainers:
+  - Philipp Zabel <p.zabel@pengutronix.de>
+  - Kanak Shilledar <kanakshilledar111@protonmail.com>
+
+properties:
+  compatible:
+    const: brcm,bcm63138-pmb
+
+  reg:
+    description: base register address and size for this bus controller
+    maxItems: 1
+
+  "#reset-cells":
+    description: |
+      must be 2 first cell is the address within the bus instance
+      designated by the phandle, and the second is the number of zones
+      for this peripheral.
+    const: 2
+
+required:
+  - compatible
+  - reg
+  - "#reset-cells"
+
+additionalProperties: false
+
+examples:
+  - |
+    pmb0: reset-controller@4800c0 {
+        compatible = "brcm,bcm63138-pmb";
+        reg = <0x4800c0 0x10>;
+        #reset-cells = <2>;
+    };