diff mbox series

[v2] dt-bindings: watchdog: improve QCOM compatible parsing for modern chips

Message ID 20220111212310.97566-1-david@ixit.cz
State Superseded
Headers show
Series [v2] dt-bindings: watchdog: improve QCOM compatible parsing for modern chips | expand

Commit Message

David Heidelberg Jan. 11, 2022, 9:23 p.m. UTC
Parse compatible as expected for modern QCOMs.

Fixes warnings as:
arch/arm64/boot/dts/qcom/sdm845-oneplus-fajita.dt.yaml: watchdog@17980000: compatible: ['qcom,apss-wdt-sdm845', 'qcom,kpss-wdt'] is too long
        From schema: Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
arch/arm64/boot/dts/qcom/sdm845-oneplus-fajita.dt.yaml: watchdog@17980000: compatible: Additional items are not allowed ('qcom,kpss-wdt' was unexpected)
        From schema: Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml

Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: David Heidelberg <david@ixit.cz>
---
v2:
 - updated compatible list as two compatibles has been added upstream
 -> resolve merge conflict
---
 .../bindings/watchdog/qcom-wdt.yaml           | 37 +++++++++++--------
 1 file changed, 21 insertions(+), 16 deletions(-)

Comments

Guenter Roeck Jan. 17, 2022, 5:45 p.m. UTC | #1
On 1/11/22 1:23 PM, David Heidelberg wrote:
> Parse compatible as expected for modern QCOMs.
> 
> Fixes warnings as:
> arch/arm64/boot/dts/qcom/sdm845-oneplus-fajita.dt.yaml: watchdog@17980000: compatible: ['qcom,apss-wdt-sdm845', 'qcom,kpss-wdt'] is too long
>          From schema: Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> arch/arm64/boot/dts/qcom/sdm845-oneplus-fajita.dt.yaml: watchdog@17980000: compatible: Additional items are not allowed ('qcom,kpss-wdt' was unexpected)
>          From schema: Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> 
> Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> Reviewed-by: Rob Herring <robh@kernel.org>
> Signed-off-by: David Heidelberg <david@ixit.cz>

Reviewed-by: Guenter Roeck <linux@roeck-us.net>

> ---
> v2:
>   - updated compatible list as two compatibles has been added upstream
>   -> resolve merge conflict
> ---
>   .../bindings/watchdog/qcom-wdt.yaml           | 37 +++++++++++--------
>   1 file changed, 21 insertions(+), 16 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml b/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> index 16c6f82a13ca..4ff8c59c59ab 100644
> --- a/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> +++ b/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> @@ -14,22 +14,27 @@ allOf:
>   
>   properties:
>     compatible:
> -    enum:
> -      - qcom,apss-wdt-qcs404
> -      - qcom,apss-wdt-sc7180
> -      - qcom,apss-wdt-sc7280
> -      - qcom,apss-wdt-sdm845
> -      - qcom,apss-wdt-sdx55
> -      - qcom,apss-wdt-sm6350
> -      - qcom,apss-wdt-sm8150
> -      - qcom,apss-wdt-sm8250
> -      - qcom,kpss-timer
> -      - qcom,kpss-wdt
> -      - qcom,kpss-wdt-apq8064
> -      - qcom,kpss-wdt-ipq4019
> -      - qcom,kpss-wdt-ipq8064
> -      - qcom,kpss-wdt-msm8960
> -      - qcom,scss-timer
> +    oneOf:
> +      - items:
> +          - enum:
> +              - qcom,apss-wdt-qcs404
> +              - qcom,apss-wdt-sc7180
> +              - qcom,apss-wdt-sc7280
> +              - qcom,apss-wdt-sdm845
> +              - qcom,apss-wdt-sdx55
> +              - qcom,apss-wdt-sm6350
> +              - qcom,apss-wdt-sm8150
> +              - qcom,apss-wdt-sm8250
> +          - const: qcom,kpss-wdt
> +      - items:
> +          - enum:
> +              - qcom,kpss-wdt
> +              - qcom,kpss-timer
> +              - qcom,kpss-wdt-apq8064
> +              - qcom,kpss-wdt-ipq4019
> +              - qcom,kpss-wdt-ipq8064
> +              - qcom,kpss-wdt-msm8960
> +              - qcom,scss-timer
>   
>     reg:
>       maxItems: 1
>
Krzysztof Kozlowski May 7, 2022, 5:22 p.m. UTC | #2
On 11/01/2022 22:23, David Heidelberg wrote:
> Parse compatible as expected for modern QCOMs.
> 
> Fixes warnings as:
> arch/arm64/boot/dts/qcom/sdm845-oneplus-fajita.dt.yaml: watchdog@17980000: compatible: ['qcom,apss-wdt-sdm845', 'qcom,kpss-wdt'] is too long
>         From schema: Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> arch/arm64/boot/dts/qcom/sdm845-oneplus-fajita.dt.yaml: watchdog@17980000: compatible: Additional items are not allowed ('qcom,kpss-wdt' was unexpected)
>         From schema: Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> 
> Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> Reviewed-by: Rob Herring <robh@kernel.org>
> Signed-off-by: David Heidelberg <david@ixit.cz>
> ---
> v2:
>  - updated compatible list as two compatibles has been added upstream
>  -> resolve merge conflict
> ---
>  .../bindings/watchdog/qcom-wdt.yaml           | 37 +++++++++++--------
>  1 file changed, 21 insertions(+), 16 deletions(-)

It seems this patch received three reviews but was not picked up. David,
do you plan to work on this?

> 
> diff --git a/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml b/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> index 16c6f82a13ca..4ff8c59c59ab 100644
> --- a/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> +++ b/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> @@ -14,22 +14,27 @@ allOf:
>  
>  properties:
>    compatible:
> -    enum:
> -      - qcom,apss-wdt-qcs404
> -      - qcom,apss-wdt-sc7180
> -      - qcom,apss-wdt-sc7280
> -      - qcom,apss-wdt-sdm845
> -      - qcom,apss-wdt-sdx55
> -      - qcom,apss-wdt-sm6350
> -      - qcom,apss-wdt-sm8150
> -      - qcom,apss-wdt-sm8250
> -      - qcom,kpss-timer
> -      - qcom,kpss-wdt
> -      - qcom,kpss-wdt-apq8064
> -      - qcom,kpss-wdt-ipq4019
> -      - qcom,kpss-wdt-ipq8064
> -      - qcom,kpss-wdt-msm8960
> -      - qcom,scss-timer
> +    oneOf:
> +      - items:
> +          - enum:
> +              - qcom,apss-wdt-qcs404
> +              - qcom,apss-wdt-sc7180
> +              - qcom,apss-wdt-sc7280
> +              - qcom,apss-wdt-sdm845
> +              - qcom,apss-wdt-sdx55
> +              - qcom,apss-wdt-sm6350
> +              - qcom,apss-wdt-sm8150
> +              - qcom,apss-wdt-sm8250
> +          - const: qcom,kpss-wdt
> +      - items:
> +          - enum:
> +              - qcom,kpss-wdt
> +              - qcom,kpss-timer
> +              - qcom,kpss-wdt-apq8064
> +              - qcom,kpss-wdt-ipq4019
> +              - qcom,kpss-wdt-ipq8064
> +              - qcom,kpss-wdt-msm8960

These do not look correct without appropriate fallback.

> +              - qcom,scss-timer
>  
>    reg:
>      maxItems: 1


Best regards,
Krzysztof
David Heidelberg May 7, 2022, 7:30 p.m. UTC | #3
On 07/05/2022 19:22, Krzysztof Kozlowski wrote:
> On 11/01/2022 22:23, David Heidelberg wrote:
>> Parse compatible as expected for modern QCOMs.
>>
>> Fixes warnings as:
>> arch/arm64/boot/dts/qcom/sdm845-oneplus-fajita.dt.yaml: watchdog@17980000: compatible: ['qcom,apss-wdt-sdm845', 'qcom,kpss-wdt'] is too long
>>          From schema: Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
>> arch/arm64/boot/dts/qcom/sdm845-oneplus-fajita.dt.yaml: watchdog@17980000: compatible: Additional items are not allowed ('qcom,kpss-wdt' was unexpected)
>>          From schema: Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
>>
>> Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
>> Reviewed-by: Rob Herring <robh@kernel.org>
>> Signed-off-by: David Heidelberg <david@ixit.cz>
>> ---
>> v2:
>>   - updated compatible list as two compatibles has been added upstream
>>   -> resolve merge conflict
>> ---
>>   .../bindings/watchdog/qcom-wdt.yaml           | 37 +++++++++++--------
>>   1 file changed, 21 insertions(+), 16 deletions(-)
> It seems this patch received three reviews but was not picked up. David,
> do you plan to work on this?
>
>> diff --git a/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml b/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
>> index 16c6f82a13ca..4ff8c59c59ab 100644
>> --- a/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
>> +++ b/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
>> @@ -14,22 +14,27 @@ allOf:
>>   
>>   properties:
>>     compatible:
>> -    enum:
>> -      - qcom,apss-wdt-qcs404
>> -      - qcom,apss-wdt-sc7180
>> -      - qcom,apss-wdt-sc7280
>> -      - qcom,apss-wdt-sdm845
>> -      - qcom,apss-wdt-sdx55
>> -      - qcom,apss-wdt-sm6350
>> -      - qcom,apss-wdt-sm8150
>> -      - qcom,apss-wdt-sm8250
>> -      - qcom,kpss-timer
>> -      - qcom,kpss-wdt
>> -      - qcom,kpss-wdt-apq8064
>> -      - qcom,kpss-wdt-ipq4019
>> -      - qcom,kpss-wdt-ipq8064
>> -      - qcom,kpss-wdt-msm8960
>> -      - qcom,scss-timer
>> +    oneOf:
>> +      - items:
>> +          - enum:
>> +              - qcom,apss-wdt-qcs404
>> +              - qcom,apss-wdt-sc7180
>> +              - qcom,apss-wdt-sc7280
>> +              - qcom,apss-wdt-sdm845
>> +              - qcom,apss-wdt-sdx55
>> +              - qcom,apss-wdt-sm6350
>> +              - qcom,apss-wdt-sm8150
>> +              - qcom,apss-wdt-sm8250
>> +          - const: qcom,kpss-wdt
>> +      - items:
>> +          - enum:
>> +              - qcom,kpss-wdt
>> +              - qcom,kpss-timer
>> +              - qcom,kpss-wdt-apq8064
>> +              - qcom,kpss-wdt-ipq4019
>> +              - qcom,kpss-wdt-ipq8064
>> +              - qcom,kpss-wdt-msm8960
> These do not look correct without appropriate fallback.

Yes the situation there isn't optimal and I'm afraid I cannot solve it 
in scope of this change.

Previously I was thinking about also merging MSM timer into this 
binding, which shares the compatible, but uses different driver. Sadly, 
currently don't have a time for it (have some WIP patch locally, if 
anyone interested to take a look).

I'm (re-)sending v3 with another S-off, but it solves only warnings 
described in commit message.

David

>
>> +              - qcom,scss-timer
>>   
>>     reg:
>>       maxItems: 1
>
> Best regards,
> Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml b/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
index 16c6f82a13ca..4ff8c59c59ab 100644
--- a/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
+++ b/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
@@ -14,22 +14,27 @@  allOf:
 
 properties:
   compatible:
-    enum:
-      - qcom,apss-wdt-qcs404
-      - qcom,apss-wdt-sc7180
-      - qcom,apss-wdt-sc7280
-      - qcom,apss-wdt-sdm845
-      - qcom,apss-wdt-sdx55
-      - qcom,apss-wdt-sm6350
-      - qcom,apss-wdt-sm8150
-      - qcom,apss-wdt-sm8250
-      - qcom,kpss-timer
-      - qcom,kpss-wdt
-      - qcom,kpss-wdt-apq8064
-      - qcom,kpss-wdt-ipq4019
-      - qcom,kpss-wdt-ipq8064
-      - qcom,kpss-wdt-msm8960
-      - qcom,scss-timer
+    oneOf:
+      - items:
+          - enum:
+              - qcom,apss-wdt-qcs404
+              - qcom,apss-wdt-sc7180
+              - qcom,apss-wdt-sc7280
+              - qcom,apss-wdt-sdm845
+              - qcom,apss-wdt-sdx55
+              - qcom,apss-wdt-sm6350
+              - qcom,apss-wdt-sm8150
+              - qcom,apss-wdt-sm8250
+          - const: qcom,kpss-wdt
+      - items:
+          - enum:
+              - qcom,kpss-wdt
+              - qcom,kpss-timer
+              - qcom,kpss-wdt-apq8064
+              - qcom,kpss-wdt-ipq4019
+              - qcom,kpss-wdt-ipq8064
+              - qcom,kpss-wdt-msm8960
+              - qcom,scss-timer
 
   reg:
     maxItems: 1