2024-03-26 17:46:57

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 2/3] dt-bindings: ufs: qcom: document SC7180 UFS

Document already upstreamed and used Qualcomm SC7180 UFS host controller
to fix dtbs_check warnings like:

sc7180-idp.dtb: ufshc@1d84000: compatible:0: 'qcom,sc7180-ufshc' is not one of ...
sc7180-idp.dtb: ufshc@1d84000: clocks: [[39, 99], [39, 7], [39, 98], [39, 107], [36, 0], [39, 106], [39, 105]] is too short
sc7180-idp.dtb: ufshc@1d84000: clock-names: ['core_clk', 'bus_aggr_clk', 'iface_clk', 'core_clk_unipro', ...] is too short

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../devicetree/bindings/ufs/qcom,ufs.yaml | 34 ++++++++++++++++---
1 file changed, 30 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
index 1ab3d16917ac..7e6d442545ad 100644
--- a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
+++ b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
@@ -27,6 +27,7 @@ properties:
- qcom,msm8996-ufshc
- qcom,msm8998-ufshc
- qcom,sa8775p-ufshc
+ - qcom,sc7180-ufshc
- qcom,sc7280-ufshc
- qcom,sc8180x-ufshc
- qcom,sc8280xp-ufshc
@@ -43,11 +44,11 @@ properties:
- const: jedec,ufs-2.0

clocks:
- minItems: 8
+ minItems: 7
maxItems: 11

clock-names:
- minItems: 8
+ minItems: 7
maxItems: 11

dma-coherent: true
@@ -113,6 +114,31 @@ required:
allOf:
- $ref: ufs-common.yaml

+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - qcom,sc7180-ufshc
+ then:
+ properties:
+ clocks:
+ minItems: 7
+ maxItems: 7
+ clock-names:
+ items:
+ - const: core_clk
+ - const: bus_aggr_clk
+ - const: iface_clk
+ - const: core_clk_unipro
+ - const: ref_clk
+ - const: tx_lane0_sync_clk
+ - const: rx_lane0_sync_clk
+ reg:
+ maxItems: 1
+ reg-names:
+ maxItems: 1
+
- if:
properties:
compatible:
@@ -250,7 +276,7 @@ allOf:
reg:
maxItems: 1
clocks:
- minItems: 8
+ minItems: 7
maxItems: 8
else:
properties:
@@ -258,7 +284,7 @@ allOf:
minItems: 1
maxItems: 2
clocks:
- minItems: 8
+ minItems: 7
maxItems: 11

unevaluatedProperties: false
--
2.34.1



2024-03-28 03:59:33

by Manivannan Sadhasivam

[permalink] [raw]
Subject: Re: [PATCH 2/3] dt-bindings: ufs: qcom: document SC7180 UFS

On Tue, Mar 26, 2024 at 06:46:31PM +0100, Krzysztof Kozlowski wrote:
> Document already upstreamed and used Qualcomm SC7180 UFS host controller
> to fix dtbs_check warnings like:
>
> sc7180-idp.dtb: ufshc@1d84000: compatible:0: 'qcom,sc7180-ufshc' is not one of ...
> sc7180-idp.dtb: ufshc@1d84000: clocks: [[39, 99], [39, 7], [39, 98], [39, 107], [36, 0], [39, 106], [39, 105]] is too short
> sc7180-idp.dtb: ufshc@1d84000: clock-names: ['core_clk', 'bus_aggr_clk', 'iface_clk', 'core_clk_unipro', ...] is too short
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../devicetree/bindings/ufs/qcom,ufs.yaml | 34 ++++++++++++++++---
> 1 file changed, 30 insertions(+), 4 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
> index 1ab3d16917ac..7e6d442545ad 100644
> --- a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
> +++ b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
> @@ -27,6 +27,7 @@ properties:
> - qcom,msm8996-ufshc
> - qcom,msm8998-ufshc
> - qcom,sa8775p-ufshc
> + - qcom,sc7180-ufshc
> - qcom,sc7280-ufshc
> - qcom,sc8180x-ufshc
> - qcom,sc8280xp-ufshc
> @@ -43,11 +44,11 @@ properties:
> - const: jedec,ufs-2.0
>
> clocks:
> - minItems: 8
> + minItems: 7
> maxItems: 11
>
> clock-names:
> - minItems: 8
> + minItems: 7
> maxItems: 11
>
> dma-coherent: true
> @@ -113,6 +114,31 @@ required:
> allOf:
> - $ref: ufs-common.yaml
>
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - qcom,sc7180-ufshc
> + then:
> + properties:
> + clocks:
> + minItems: 7
> + maxItems: 7
> + clock-names:
> + items:
> + - const: core_clk
> + - const: bus_aggr_clk
> + - const: iface_clk
> + - const: core_clk_unipro
> + - const: ref_clk
> + - const: tx_lane0_sync_clk
> + - const: rx_lane0_sync_clk
> + reg:
> + maxItems: 1
> + reg-names:
> + maxItems: 1
> +
> - if:
> properties:
> compatible:
> @@ -250,7 +276,7 @@ allOf:
> reg:
> maxItems: 1
> clocks:
> - minItems: 8
> + minItems: 7
> maxItems: 8
> else:
> properties:
> @@ -258,7 +284,7 @@ allOf:
> minItems: 1
> maxItems: 2
> clocks:
> - minItems: 8
> + minItems: 7

I'm getting confused by the clock requirements for qcom,ice. Why does specifying
the qcom,ice phandle require these clocks? These are the UFSHC clocks and
already defined above.

- Mani

> maxItems: 11
>
> unevaluatedProperties: false
> --
> 2.34.1
>

--
மணிவண்ணன் சதாசிவம்

2024-03-28 08:53:50

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 2/3] dt-bindings: ufs: qcom: document SC7180 UFS

On 28/03/2024 04:59, Manivannan Sadhasivam wrote:
>> - if:
>> properties:
>> compatible:
>> @@ -250,7 +276,7 @@ allOf:
>> reg:
>> maxItems: 1
>> clocks:
>> - minItems: 8
>> + minItems: 7
>> maxItems: 8
>> else:
>> properties:
>> @@ -258,7 +284,7 @@ allOf:
>> minItems: 1
>> maxItems: 2
>> clocks:
>> - minItems: 8
>> + minItems: 7
>
> I'm getting confused by the clock requirements for qcom,ice. Why does specifying
> the qcom,ice phandle require these clocks? These are the UFSHC clocks and
> already defined above.

I am also confused, but I did not change that logic. I don't think that
it is anyway useful, but that separate topic from this patch.

Best regards,
Krzysztof