diff mbox series

[02/25] dt-bindings: iio: adc: exynos-adc: require second interrupt with touch screen

Message ID 20200907161141.31034-3-krzk@kernel.org (mailing list archive)
State Superseded
Headers show
Series ARM: dts: s5pv210: Cleanup - dtschema warnings | expand

Commit Message

Krzysztof Kozlowski Sept. 7, 2020, 4:11 p.m. UTC
The ADC in S3C/S5P/Exynos SoCs can be used also for handling touch
screen.  In such case the second interrupt is required.  This second
interrupt can be anyway provided, even without touch screens.  This
fixes dtbs_check warnings like:

  arch/arm/boot/dts/s5pv210-aquila.dt.yaml: adc@e1700000: interrupts: [[23], [24]] is too long

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
---
 .../bindings/iio/adc/samsung,exynos-adc.yaml      | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

Comments

Jonathan Cameron Sept. 7, 2020, 4:38 p.m. UTC | #1
On Mon,  7 Sep 2020 18:11:18 +0200
Krzysztof Kozlowski <krzk@kernel.org> wrote:

> The ADC in S3C/S5P/Exynos SoCs can be used also for handling touch
> screen.  In such case the second interrupt is required.  This second
> interrupt can be anyway provided, even without touch screens.  This
> fixes dtbs_check warnings like:
> 
>   arch/arm/boot/dts/s5pv210-aquila.dt.yaml: adc@e1700000: interrupts: [[23], [24]] is too long
> 
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>

Acked-by: Jonathan Cameron <Jonathan.Cameron@huwei.com>

Or I can pick this up through the IIO tree if that makes sense.
I doubt anything else will touch this binding this cycle, so either
way works for me.

Jonathan

> ---
>  .../bindings/iio/adc/samsung,exynos-adc.yaml      | 15 ++++++++++++++-
>  1 file changed, 14 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
> index cc3c8ea6a894..89b4f9c252a6 100644
> --- a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
> +++ b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
> @@ -41,7 +41,10 @@ properties:
>      maxItems: 2
>  
>    interrupts:
> -    maxItems: 1
> +    description:
> +      ADC interrupt followed by optional touchscreen interrupt.
> +    minItems: 1
> +    maxItems: 2
>  
>    "#io-channel-cells":
>      const: 1
> @@ -107,6 +110,16 @@ allOf:
>            items:
>              - const: adc
>  
> +  - if:
> +      properties:
> +        has-touchscreen:
> +          true
> +    then:
> +      properties:
> +        interrupts:
> +          minItems: 2
> +          maxItems: 2
> +
>  examples:
>    - |
>      adc: adc@12d10000 {
Krzysztof Kozlowski Sept. 7, 2020, 5:11 p.m. UTC | #2
On Mon, 7 Sep 2020 at 18:39, Jonathan Cameron
<Jonathan.Cameron@huawei.com> wrote:
>
> On Mon,  7 Sep 2020 18:11:18 +0200
> Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> > The ADC in S3C/S5P/Exynos SoCs can be used also for handling touch
> > screen.  In such case the second interrupt is required.  This second
> > interrupt can be anyway provided, even without touch screens.  This
> > fixes dtbs_check warnings like:
> >
> >   arch/arm/boot/dts/s5pv210-aquila.dt.yaml: adc@e1700000: interrupts: [[23], [24]] is too long
> >
> > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
>
> Acked-by: Jonathan Cameron <Jonathan.Cameron@huwei.com>
>
> Or I can pick this up through the IIO tree if that makes sense.
> I doubt anything else will touch this binding this cycle, so either
> way works for me.

Let's wait for Rob's review and then if you could, please pick it up.

Best regards,
Krzysztof
Rob Herring Sept. 8, 2020, 8:24 p.m. UTC | #3
On Mon, 07 Sep 2020 18:11:18 +0200, Krzysztof Kozlowski wrote:
> The ADC in S3C/S5P/Exynos SoCs can be used also for handling touch
> screen.  In such case the second interrupt is required.  This second
> interrupt can be anyway provided, even without touch screens.  This
> fixes dtbs_check warnings like:
> 
>   arch/arm/boot/dts/s5pv210-aquila.dt.yaml: adc@e1700000: interrupts: [[23], [24]] is too long
> 
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
>  .../bindings/iio/adc/samsung,exynos-adc.yaml      | 15 ++++++++++++++-
>  1 file changed, 14 insertions(+), 1 deletion(-)
> 


My bot found errors running 'make dt_binding_check' on your patch:

/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.example.dt.yaml: adc@12d10000: interrupts: [[0, 106, 0]] is too short
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.example.dt.yaml: adc@126c0000: interrupts: [[0, 137, 0]] is too short
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml


See https://patchwork.ozlabs.org/patch/1359054

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure dt-schema is up to date:

pip3 install git+https://github.com/devicetree-org/dt-schema.git@master --upgrade

Please check and re-submit.
Rob Herring Sept. 8, 2020, 8:25 p.m. UTC | #4
On Mon, Sep 07, 2020 at 06:11:18PM +0200, Krzysztof Kozlowski wrote:
> The ADC in S3C/S5P/Exynos SoCs can be used also for handling touch
> screen.  In such case the second interrupt is required.  This second
> interrupt can be anyway provided, even without touch screens.  This
> fixes dtbs_check warnings like:
> 
>   arch/arm/boot/dts/s5pv210-aquila.dt.yaml: adc@e1700000: interrupts: [[23], [24]] is too long
> 
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
>  .../bindings/iio/adc/samsung,exynos-adc.yaml      | 15 ++++++++++++++-
>  1 file changed, 14 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
> index cc3c8ea6a894..89b4f9c252a6 100644
> --- a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
> +++ b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
> @@ -41,7 +41,10 @@ properties:
>      maxItems: 2
>  
>    interrupts:
> -    maxItems: 1
> +    description:
> +      ADC interrupt followed by optional touchscreen interrupt.
> +    minItems: 1
> +    maxItems: 2
>  
>    "#io-channel-cells":
>      const: 1
> @@ -107,6 +110,16 @@ allOf:
>            items:
>              - const: adc
>  
> +  - if:
> +      properties:
> +        has-touchscreen:
> +          true

This evaluates as true if 'has-touchscreen' is not present too. You 
should use 'required' here.

> +    then:
> +      properties:
> +        interrupts:
> +          minItems: 2
> +          maxItems: 2
> +
>  examples:
>    - |
>      adc: adc@12d10000 {
> -- 
> 2.17.1
>
Krzysztof Kozlowski Sept. 10, 2020, 11:55 a.m. UTC | #5
On Tue, 8 Sep 2020 at 22:25, Rob Herring <robh@kernel.org> wrote:
>
> On Mon, Sep 07, 2020 at 06:11:18PM +0200, Krzysztof Kozlowski wrote:
> > The ADC in S3C/S5P/Exynos SoCs can be used also for handling touch
> > screen.  In such case the second interrupt is required.  This second
> > interrupt can be anyway provided, even without touch screens.  This
> > fixes dtbs_check warnings like:
> >
> >   arch/arm/boot/dts/s5pv210-aquila.dt.yaml: adc@e1700000: interrupts: [[23], [24]] is too long
> >
> > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> > ---
> >  .../bindings/iio/adc/samsung,exynos-adc.yaml      | 15 ++++++++++++++-
> >  1 file changed, 14 insertions(+), 1 deletion(-)
> >
> > diff --git a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
> > index cc3c8ea6a894..89b4f9c252a6 100644
> > --- a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
> > +++ b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
> > @@ -41,7 +41,10 @@ properties:
> >      maxItems: 2
> >
> >    interrupts:
> > -    maxItems: 1
> > +    description:
> > +      ADC interrupt followed by optional touchscreen interrupt.
> > +    minItems: 1
> > +    maxItems: 2
> >
> >    "#io-channel-cells":
> >      const: 1
> > @@ -107,6 +110,16 @@ allOf:
> >            items:
> >              - const: adc
> >
> > +  - if:
> > +      properties:
> > +        has-touchscreen:
> > +          true
>
> This evaluates as true if 'has-touchscreen' is not present too. You
> should use 'required' here.

I see, thanks. I'll send a v2.

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
index cc3c8ea6a894..89b4f9c252a6 100644
--- a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
+++ b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.yaml
@@ -41,7 +41,10 @@  properties:
     maxItems: 2
 
   interrupts:
-    maxItems: 1
+    description:
+      ADC interrupt followed by optional touchscreen interrupt.
+    minItems: 1
+    maxItems: 2
 
   "#io-channel-cells":
     const: 1
@@ -107,6 +110,16 @@  allOf:
           items:
             - const: adc
 
+  - if:
+      properties:
+        has-touchscreen:
+          true
+    then:
+      properties:
+        interrupts:
+          minItems: 2
+          maxItems: 2
+
 examples:
   - |
     adc: adc@12d10000 {