diff mbox series

[v5,1/9] dt-bindings: fsi: fsi2spi: Document SPI controller child nodes

Message ID 20240514195435.155372-2-eajames@linux.ibm.com
State New
Headers show
Series dt-bindings: fsi: Convert to json-schema and add missing engines | expand

Commit Message

Eddie James May 14, 2024, 7:54 p.m. UTC
The FSI2SPI bridge has several SPI controllers behind it, which
should be documented. Also, therefore the node needs to specify
address and size cells.

Signed-off-by: Eddie James <eajames@linux.ibm.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
Depends on https://lore.kernel.org/all/20240514192630.152747-1-eajames@linux.ibm.com/

 .../devicetree/bindings/fsi/ibm,fsi2spi.yaml  | 36 ++++++++++++++++---
 1 file changed, 32 insertions(+), 4 deletions(-)

Comments

Rob Herring May 14, 2024, 10:35 p.m. UTC | #1
On Tue, 14 May 2024 14:54:27 -0500, Eddie James wrote:
> The FSI2SPI bridge has several SPI controllers behind it, which
> should be documented. Also, therefore the node needs to specify
> address and size cells.
> 
> Signed-off-by: Eddie James <eajames@linux.ibm.com>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
> Depends on https://lore.kernel.org/all/20240514192630.152747-1-eajames@linux.ibm.com/
> 
>  .../devicetree/bindings/fsi/ibm,fsi2spi.yaml  | 36 ++++++++++++++++---
>  1 file changed, 32 insertions(+), 4 deletions(-)
> 

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/fsi/ibm,fsi2spi.yaml:
Error in referenced schema matching $id: http://devicetree.org/schemas/spi/ibm,spi-fsi.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/fsi/ibm,fsi2spi.example.dtb: fsi2spi@1c00: spi@0: False schema does not allow {'compatible': ['ibm,spi-fsi'], 'reg': [[0]], '#address-cells': [[1]], '#size-cells': [[0]], 'eeprom@0': {'compatible': ['atmel,at25'], 'reg': [[0]], 'address-width': [[24]], 'pagesize': [[256]], 'size': [[524288]], 'spi-max-frequency': [[1000000]]}}
	from schema $id: http://devicetree.org/schemas/fsi/ibm,fsi2spi.yaml#
Documentation/devicetree/bindings/fsi/ibm,fsi2spi.example.dtb: /example-0/fsi2spi@1c00/spi@0: failed to match any schema with compatible: ['ibm,spi-fsi']

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20240514195435.155372-2-eajames@linux.ibm.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 May 15, 2024, 8:14 a.m. UTC | #2
On 14/05/2024 21:54, Eddie James wrote:

>  properties:
>    compatible:
> @@ -24,6 +23,17 @@ properties:
>      items:
>        - description: FSI slave address
>  
> +  "#address-cells":
> +    const: 1
> +
> +  "#size-cells":
> +    const: 0
> +
> +patternProperties:
> +  "^spi@[0-9a-f]+$":
> +    type: object
> +    $ref: /schemas/spi/ibm,spi-fsi.yaml

Are you sure you do not have dependencies? Nothing was explained about
this in the cover letter or changelog.

Best regards,
Krzysztof
Eddie James May 15, 2024, 1:06 p.m. UTC | #3
On 5/15/24 03:14, Krzysztof Kozlowski wrote:
> On 14/05/2024 21:54, Eddie James wrote:
>
>>   properties:
>>     compatible:
>> @@ -24,6 +23,17 @@ properties:
>>       items:
>>         - description: FSI slave address
>>   
>> +  "#address-cells":
>> +    const: 1
>> +
>> +  "#size-cells":
>> +    const: 0
>> +
>> +patternProperties:
>> +  "^spi@[0-9a-f]+$":
>> +    type: object
>> +    $ref: /schemas/spi/ibm,spi-fsi.yaml
> Are you sure you do not have dependencies? Nothing was explained about
> this in the cover letter or changelog.


I did mention that it depends on the SPI binding change below the commit 
message in this patch. I guess I should have kept these two together...

Thanks,

Eddie


>
> Best regards,
> Krzysztof
>
Krzysztof Kozlowski May 15, 2024, 2:12 p.m. UTC | #4
On 15/05/2024 15:06, Eddie James wrote:
> 
> On 5/15/24 03:14, Krzysztof Kozlowski wrote:
>> On 14/05/2024 21:54, Eddie James wrote:
>>
>>>   properties:
>>>     compatible:
>>> @@ -24,6 +23,17 @@ properties:
>>>       items:
>>>         - description: FSI slave address
>>>   
>>> +  "#address-cells":
>>> +    const: 1
>>> +
>>> +  "#size-cells":
>>> +    const: 0
>>> +
>>> +patternProperties:
>>> +  "^spi@[0-9a-f]+$":
>>> +    type: object
>>> +    $ref: /schemas/spi/ibm,spi-fsi.yaml
>> Are you sure you do not have dependencies? Nothing was explained about
>> this in the cover letter or changelog.
> 
> 
> I did mention that it depends on the SPI binding change below the commit 
> message in this patch. I guess I should have kept these two together...

Ah, I missed that. Yeah, you must keep them together or wait one more
cycle... Just test bisectability of your patchset.

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/fsi/ibm,fsi2spi.yaml b/Documentation/devicetree/bindings/fsi/ibm,fsi2spi.yaml
index e2ca0b0004714..ad5c83f484255 100644
--- a/Documentation/devicetree/bindings/fsi/ibm,fsi2spi.yaml
+++ b/Documentation/devicetree/bindings/fsi/ibm,fsi2spi.yaml
@@ -9,11 +9,10 @@  title: IBM FSI-attached SPI controllers
 maintainers:
   - Eddie James <eajames@linux.ibm.com>
 
-description: |
+description:
   This binding describes an FSI CFAM engine called the FSI2SPI. Therefore this
-  node will always be a child of an FSI CFAM node; see fsi.txt for details on
-  FSI slave and CFAM nodes. This FSI2SPI engine provides access to a number of
-  SPI controllers.
+  node will always be a child of an FSI CFAM node. This FSI2SPI engine provides
+  access to a number of SPI controllers.
 
 properties:
   compatible:
@@ -24,6 +23,17 @@  properties:
     items:
       - description: FSI slave address
 
+  "#address-cells":
+    const: 1
+
+  "#size-cells":
+    const: 0
+
+patternProperties:
+  "^spi@[0-9a-f]+$":
+    type: object
+    $ref: /schemas/spi/ibm,spi-fsi.yaml
+
 required:
   - compatible
   - reg
@@ -35,4 +45,22 @@  examples:
     fsi2spi@1c00 {
         compatible = "ibm,fsi2spi";
         reg = <0x1c00 0x400>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        spi@0 {
+            compatible = "ibm,spi-fsi";
+            reg = <0>;
+            #address-cells = <1>;
+            #size-cells = <0>;
+
+            eeprom@0 {
+                compatible = "atmel,at25";
+                reg = <0>;
+                address-width = <24>;
+                pagesize = <256>;
+                size = <0x80000>;
+                spi-max-frequency = <1000000>;
+            };
+        };
     };