Re: [PATCH 18/22] dt-bindings: spi: document support for SA8255p

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Aug 28, 2024 at 01:37:17PM -0700, Nikunj Kela wrote:
> Add compatible representing spi support on SA8255p.
> 
> Clocks and interconnects are being configured in firmware VM
> on SA8255p platform, therefore making them optional.
> 
> CC: Praveen Talari <quic_ptalari@xxxxxxxxxxx>
> Signed-off-by: Nikunj Kela <quic_nkela@xxxxxxxxxxx>
> ---
>  .../bindings/spi/qcom,spi-geni-qcom.yaml      | 64 +++++++++++++++----
>  1 file changed, 53 insertions(+), 11 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/spi/qcom,spi-geni-qcom.yaml b/Documentation/devicetree/bindings/spi/qcom,spi-geni-qcom.yaml
> index 2e20ca313ec1..74ea7c4f2451 100644
> --- a/Documentation/devicetree/bindings/spi/qcom,spi-geni-qcom.yaml
> +++ b/Documentation/devicetree/bindings/spi/qcom,spi-geni-qcom.yaml
> @@ -25,10 +25,41 @@ description:
>  
>  allOf:
>    - $ref: /schemas/spi/spi-controller.yaml#
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: qcom,sa8255p-geni-spi
> +    then:
> +      required:
> +        - power-domains
> +        - power-domain-names

blank line

> +      properties:
> +        power-domains:
> +          minItems: 2
> +          maxItems: 2

Drop maxItems as 2 is already the max (with my change below).

Add blank line here.

> +    else:
> +      required:
> +        - clocks
> +        - clock-names

blank line

> +      properties:
> +        power-domains:
> +          maxItems: 1

blank line

> +        interconnects:
> +          minItems: 2
> +          maxItems: 3

blank line

> +        interconnect-names:
> +          minItems: 2
> +          items:
> +            - const: qup-core
> +            - const: qup-config
> +            - const: qup-memory
>  
>  properties:
>    compatible:
> -    const: qcom,geni-spi
> +    enum:
> +      - qcom,geni-spi
> +      - qcom,sa8255p-geni-spi
>  
>    clocks:
>      maxItems: 1
> @@ -45,15 +76,10 @@ properties:
>        - const: rx
>  
>    interconnects:
> -    minItems: 2
> -    maxItems: 3
> +    description: phandles of interconnect bw provider
>  
>    interconnect-names:
> -    minItems: 2
> -    items:
> -      - const: qup-core
> -      - const: qup-config
> -      - const: qup-memory
> +    description: names of interconnects

No, keep all properties defined at the top-level and then add 
constraints in if/then schemas.

>  
>    interrupts:
>      maxItems: 1
> @@ -61,15 +87,18 @@ properties:
>    operating-points-v2: true
>  
>    power-domains:
> -    maxItems: 1
> +    $ref: "/schemas/power/power-domain.yaml#/properties/power-domains"

Do you see an example of this anywhere else? No. You need:

minItems: 1
maxItems: 2

> +
> +  power-domain-names:
> +    items:
> +      - const: power
> +      - const: perf
>  
>    reg:
>      maxItems: 1
>  
>  required:
>    - compatible
> -  - clocks
> -  - clock-names
>    - interrupts
>    - reg
>  
> @@ -116,3 +145,16 @@ examples:
>          #address-cells = <1>;
>          #size-cells = <0>;
>      };
> +
> +  - |
> +    #include <dt-bindings/interrupt-controller/arm-gic.h>
> +
> +    spi@888000 {
> +        compatible = "qcom,sa8255p-geni-spi";
> +        reg = <0x888000 0x4000>;
> +        interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +        power-domains = <&scmi10_pd 16>, <&scmi10_dvfs 16>;
> +        power-domain-names = "power", "perf";
> +    };
> -- 
> 2.34.1
> 




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux