[PATCH] dt-bindings: gpio: gpio-xilinx: Mark clocks as required property

Michal Simek posted 1 patch 4 months ago
There is a newer version of this series
Documentation/devicetree/bindings/gpio/xlnx,gpio-xilinx.yaml | 1 +
1 file changed, 1 insertion(+)
[PATCH] dt-bindings: gpio: gpio-xilinx: Mark clocks as required property
Posted by Michal Simek 4 months ago
On Microblaze platforms there is no need to handle clocks because the
system is starting with clocks enabled (can be described via fixed clock
node or clock-frequency property or not described at all).
With using soft IPs with SOC platforms there is mandatory to handle clocks
as is explained in commit 60dbdc6e08d6 ("dt-bindings: net: emaclite: Add
clock support").
That's why make clock as required in dt binding because it is present in
both configurations and should be described even there is no way how to
handle it on Microblaze systems.

Signed-off-by: Michal Simek <michal.simek@amd.com>
---

Based on discussion at
https://lore.kernel.org/lkml/20241002-revivable-crummy-f780adec538c@spud/

Actually this shouldn't be only targetting GPIO but also for example
xlnx,xps-timebase-wdt-1.00.a but I would like to check it first on gpio
before starting to check other bindings.

---
 Documentation/devicetree/bindings/gpio/xlnx,gpio-xilinx.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/gpio/xlnx,gpio-xilinx.yaml b/Documentation/devicetree/bindings/gpio/xlnx,gpio-xilinx.yaml
index 8fbf12ca067e..7af4eb2d1858 100644
--- a/Documentation/devicetree/bindings/gpio/xlnx,gpio-xilinx.yaml
+++ b/Documentation/devicetree/bindings/gpio/xlnx,gpio-xilinx.yaml
@@ -117,6 +117,7 @@ properties:
 required:
   - reg
   - compatible
+  - clocks
   - gpio-controller
   - "#gpio-cells"
 
-- 
2.43.0
Re: [PATCH] dt-bindings: gpio: gpio-xilinx: Mark clocks as required property
Posted by Rob Herring (Arm) 4 months ago
On Tue, 10 Jun 2025 09:34:31 +0200, Michal Simek wrote:
> On Microblaze platforms there is no need to handle clocks because the
> system is starting with clocks enabled (can be described via fixed clock
> node or clock-frequency property or not described at all).
> With using soft IPs with SOC platforms there is mandatory to handle clocks
> as is explained in commit 60dbdc6e08d6 ("dt-bindings: net: emaclite: Add
> clock support").
> That's why make clock as required in dt binding because it is present in
> both configurations and should be described even there is no way how to
> handle it on Microblaze systems.
> 
> Signed-off-by: Michal Simek <michal.simek@amd.com>
> ---
> 
> Based on discussion at
> https://lore.kernel.org/lkml/20241002-revivable-crummy-f780adec538c@spud/
> 
> Actually this shouldn't be only targetting GPIO but also for example
> xlnx,xps-timebase-wdt-1.00.a but I would like to check it first on gpio
> before starting to check other bindings.
> 
> ---
>  Documentation/devicetree/bindings/gpio/xlnx,gpio-xilinx.yaml | 1 +
>  1 file changed, 1 insertion(+)
> 

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/fpga/fpga-region.example.dtb: gpio@40000000 (xlnx,xps-gpio-1.00.a): 'clocks' is a required property
	from schema $id: http://devicetree.org/schemas/gpio/xlnx,gpio-xilinx.yaml#

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/dba4f2c39a25b54010c292c36e349cb289d6cd98.1749540869.git.michal.simek@amd.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.
Re: [PATCH] dt-bindings: gpio: gpio-xilinx: Mark clocks as required property
Posted by Michal Simek 4 months ago

On 6/10/25 10:32, Rob Herring (Arm) wrote:
> 
> On Tue, 10 Jun 2025 09:34:31 +0200, Michal Simek wrote:
>> On Microblaze platforms there is no need to handle clocks because the
>> system is starting with clocks enabled (can be described via fixed clock
>> node or clock-frequency property or not described at all).
>> With using soft IPs with SOC platforms there is mandatory to handle clocks
>> as is explained in commit 60dbdc6e08d6 ("dt-bindings: net: emaclite: Add
>> clock support").
>> That's why make clock as required in dt binding because it is present in
>> both configurations and should be described even there is no way how to
>> handle it on Microblaze systems.
>>
>> Signed-off-by: Michal Simek <michal.simek@amd.com>
>> ---
>>
>> Based on discussion at
>> https://lore.kernel.org/lkml/20241002-revivable-crummy-f780adec538c@spud/
>>
>> Actually this shouldn't be only targetting GPIO but also for example
>> xlnx,xps-timebase-wdt-1.00.a but I would like to check it first on gpio
>> before starting to check other bindings.
>>
>> ---
>>   Documentation/devicetree/bindings/gpio/xlnx,gpio-xilinx.yaml | 1 +
>>   1 file changed, 1 insertion(+)
>>
> 
> 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/fpga/fpga-region.example.dtb: gpio@40000000 (xlnx,xps-gpio-1.00.a): 'clocks' is a required property
> 	from schema $id: http://devicetree.org/schemas/gpio/xlnx,gpio-xilinx.yaml#
> 
> doc reference errors (make refcheckdocs):
> 
> See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/dba4f2c39a25b54010c292c36e349cb289d6cd98.1749540869.git.michal.simek@amd.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.
> 

I have sent v2 to also fix fpga-region DT binding which contains axi gpio nodes 
which is what this error is reporting.

Thanks,
Michal