Re: [PATCH 2/4] dt-bindings: iio: accel: bma255: Add bosch,bmc156_accel

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

 



On Mon, 19 Jul 2021 13:21:54 +0200
Stephan Gerhold <stephan@xxxxxxxxxxx> wrote:

> BMC156 is very smilar to BMC150, but it has only one accelerometer
> interrupt pin. It would make sense if only INT1 was exposed but someone
> at Bosch was crazy and decided to only have an INT2 pin.
> 
> In this case, it does not make sense if the first interrupt pin is
> treated as INT1 (since that pin does not exist). Add a note to the
> bindings that the first interrupt pin is treated as INT2 for BMC156.
> 
> Signed-off-by: Stephan Gerhold <stephan@xxxxxxxxxxx>
> ---
>  .../bindings/iio/accel/bosch,bma255.yaml       | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/iio/accel/bosch,bma255.yaml b/Documentation/devicetree/bindings/iio/accel/bosch,bma255.yaml
> index 897a1d808ef5..f7848e4a7b29 100644
> --- a/Documentation/devicetree/bindings/iio/accel/bosch,bma255.yaml
> +++ b/Documentation/devicetree/bindings/iio/accel/bosch,bma255.yaml
> @@ -26,6 +26,7 @@ properties:
>        - bosch,bma255
>        - bosch,bma280
>        - bosch,bmc150_accel
> +      - bosch,bmc156_accel
>        - bosch,bmi055_accel
>  
>        # bma180 driver in Linux
> @@ -49,6 +50,9 @@ properties:
>        the second (optional) interrupt listed must be the one connected to the
>        INT2 pin (if available). The type should be IRQ_TYPE_EDGE_RISING.
>  
> +      BMC156 does not have an INT1 pin, therefore the first interrupt pin is
> +      always treated as INT2.

We 'could' enforce any name present for the bmc156 to be INT2, but we probably
still want the fallback you have in the driver to handle the case of
not interrupt-name provided.

Rob, do you think it's worth the complexity for this corner case?

Jonathan
> +
>    interrupt-names:
>      minItems: 1
>      maxItems: 2
> @@ -84,6 +88,20 @@ examples:
>              interrupt-names = "INT1";
>          };
>      };
> +  - |
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +        accelerometer@10 {
> +            compatible = "bosch,bmc156_accel";
> +            reg = <0x10>;
> +            vddio-supply = <&vddio>;
> +            vdd-supply = <&vdd>;
> +            interrupts = <116 IRQ_TYPE_EDGE_RISING>;
> +            interrupt-names = "INT2";
> +        };
> +    };
>    - |
>      # include <dt-bindings/interrupt-controller/irq.h>
>      spi {




[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