2024-06-11 17:23:35

by Aniket

[permalink] [raw]
Subject: [PATCH 0/2] i3c: dw: Add APB clk

The patches add APB clk aka pclk to the
dw i3c driver and the binding doc.

Aniket (2):
dt-bindings: i3c: dw: Add clock binding
i3c: dw: Add optional apb clock

.../bindings/i3c/snps,dw-i3c-master.yaml | 19 ++++++++++++++++++-
drivers/i3c/master/dw-i3c-master.c | 12 ++++++++++++
drivers/i3c/master/dw-i3c-master.h | 1 +
3 files changed, 31 insertions(+), 1 deletion(-)

--
2.45.2.505.gda0bf45e8d-goog



2024-06-11 17:27:48

by Aniket

[permalink] [raw]
Subject: [PATCH 1/2] dt-bindings: i3c: dw: Add clock binding

Add dt binding for optional apb clock.
Core clock is mandatory. Also add
an example.

Signed-off-by: Aniket <[email protected]>
---
.../bindings/i3c/snps,dw-i3c-master.yaml | 19 ++++++++++++++++++-
1 file changed, 18 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml b/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml
index c0e805e531be..7e3d4f308477 100644
--- a/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml
+++ b/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml
@@ -20,7 +20,16 @@ properties:
maxItems: 1

clocks:
- maxItems: 1
+ minItems: 1
+ items:
+ - description: Core interface clock
+ - description: APB interface clock
+
+ clock-names:
+ minItems: 1
+ items:
+ - const: core_clk
+ - const: pclk

interrupts:
maxItems: 1
@@ -49,4 +58,12 @@ examples:
pagesize = <0x8>;
};
};
+ - |
+ i3c@10400 {
+ compatible = "snps,dw-i3c-master-1.00a";
+ reg = <0x10400 0x1000>;
+ interrupts = <8>;
+ clocks = <&i3c0_cclk>,<&i3c0_pclk>;
+ clock-names = "core_clk", "pclk";
+ };
...
--
2.45.2.505.gda0bf45e8d-goog


2024-06-11 18:19:27

by Conor Dooley

[permalink] [raw]
Subject: Re: [PATCH 1/2] dt-bindings: i3c: dw: Add clock binding

On Tue, Jun 11, 2024 at 05:15:59PM +0000, Aniket wrote:
> Add dt binding for optional apb clock.
> Core clock is mandatory. Also add
> an example.

Please fix your line wrapping here.

> Signed-off-by: Aniket <[email protected]>

Full name please.

> ---
> .../bindings/i3c/snps,dw-i3c-master.yaml | 19 ++++++++++++++++++-
> 1 file changed, 18 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml b/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml
> index c0e805e531be..7e3d4f308477 100644
> --- a/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml
> +++ b/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml
> @@ -20,7 +20,16 @@ properties:
> maxItems: 1
>
> clocks:
> - maxItems: 1
> + minItems: 1
> + items:
> + - description: Core interface clock

s/interface //.

> + - description: APB interface clock
> +
> + clock-names:
> + minItems: 1
> + items:
> + - const: core_clk
> + - const: pclk

Why not name them "core" and "apb"? Putting "clk" in both names is
redundant infomration, we already know they're clocks.

>
> interrupts:
> maxItems: 1
> @@ -49,4 +58,12 @@ examples:
> pagesize = <0x8>;
> };
> };
> + - |
> + i3c@10400 {

No need for an extra example for this.

Thanks,
Conor.

> + compatible = "snps,dw-i3c-master-1.00a";
> + reg = <0x10400 0x1000>;
> + interrupts = <8>;
> + clocks = <&i3c0_cclk>,<&i3c0_pclk>;
^^
missing a space here.

> + clock-names = "core_clk", "pclk";
> + };
> ...
> --
> 2.45.2.505.gda0bf45e8d-goog
>
>


Attachments:
(No filename) (1.73 kB)
signature.asc (235.00 B)
Download all attachments

2024-06-11 18:35:02

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 1/2] dt-bindings: i3c: dw: Add clock binding


On Tue, 11 Jun 2024 17:15:59 +0000, Aniket wrote:
> Add dt binding for optional apb clock.
> Core clock is mandatory. Also add
> an example.
>
> Signed-off-by: Aniket <[email protected]>
> ---
> .../bindings/i3c/snps,dw-i3c-master.yaml | 19 ++++++++++++++++++-
> 1 file changed, 18 insertions(+), 1 deletion(-)
>

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/i3c/snps,dw-i3c-master.example.dtb: i3c@10400: '#address-cells' is a required property
from schema $id: http://devicetree.org/schemas/i3c/snps,dw-i3c-master.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.example.dtb: i3c@10400: '#size-cells' is a required property
from schema $id: http://devicetree.org/schemas/i3c/snps,dw-i3c-master.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.example.dtb: i3c@10400: '#address-cells' is a required property
from schema $id: http://devicetree.org/schemas/i3c/i3c.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.example.dtb: i3c@10400: '#size-cells' is a required property
from schema $id: http://devicetree.org/schemas/i3c/i3c.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.