Re: [PATCH v3 08/10] dt-bindings: iio: bma255: Allow multiple interrupts

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

 



On Fri, Jun 11, 2021 at 07:26:39PM +0100, Jonathan Cameron wrote:
> On Fri, 11 Jun 2021 20:21:05 +0200
> Stephan Gerhold <stephan@xxxxxxxxxxx> wrote:
> 
> > On Fri, Jun 11, 2021 at 06:59:41PM +0100, Jonathan Cameron wrote:
> > > On Fri, 11 Jun 2021 10:09:01 +0200
> > > Stephan Gerhold <stephan@xxxxxxxxxxx> wrote:
> > >   
> > > > BMA253 has two interrupt pins (INT1 and INT2) that can be configured
> > > > independently. At the moment the bmc150-accel driver does not make use
> > > > of them but it might be able to in the future, so it's useful to already
> > > > specify all available interrupts in the device tree.
> > > > 
> > > > Set maxItems: 2 for interrupts to allow specifying a second one.
> > > > This is necessary as preparation to move the bosch,bma254 compatible
> > > > from bosch,bma180.yaml to bosch,bma255.yaml since bma180 allows two
> > > > interrupts, but BMA254 is better supported by the bmc150-accel driver.
> > > > 
> > > > Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
> > > > Reviewed-by: Hans de Goede <hdegoede@xxxxxxxxxx>
> > > > Reviewed-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
> > > > Signed-off-by: Stephan Gerhold <stephan@xxxxxxxxxxx>
> > > > ---
> > > >  .../devicetree/bindings/iio/accel/bosch,bma255.yaml        | 7 ++++++-
> > > >  1 file changed, 6 insertions(+), 1 deletion(-)
> > > > 
> > > > diff --git a/Documentation/devicetree/bindings/iio/accel/bosch,bma255.yaml b/Documentation/devicetree/bindings/iio/accel/bosch,bma255.yaml
> > > > index 8afb0fe8ef5c..65b299a5619b 100644
> > > > --- a/Documentation/devicetree/bindings/iio/accel/bosch,bma255.yaml
> > > > +++ b/Documentation/devicetree/bindings/iio/accel/bosch,bma255.yaml
> > > > @@ -32,7 +32,12 @@ properties:
> > > >    vddio-supply: true
> > > >  
> > > >    interrupts:
> > > > -    maxItems: 1
> > > > +    minItems: 1
> > > > +    maxItems: 2
> > > > +    description: |
> > > > +      The first interrupt listed must be the one connected to the INT1 pin,
> > > > +      the second (optional) interrupt listed must be the one connected to the
> > > > +      INT2 pin (if available).  
> > > 
> > > As this is a direct copy from the bma180 binding and we are moving devices
> > > from one to the other, we need to support this as the default.
> > > Longer term, from the bma253 datasheet, it look looks the two pins are equally
> > > capable so if we get a board where only the int2 pin is connected then we will
> > > need to use interrupt-names to distinguish the two (as we do in other drivers).
> > >   
> > 
> > This kind of sounds like a strange board layout in general. But what's
> > worse is that for some reason even Bosch thought this is a "good" idea
> > so they released the BMC156 [1]. It works just like the BMC150 but has
> > only a single interrupt pin. One would expect that would be INT1,
> > but nope, it's INT2 of course. :-)
> > 
> > I have a device with BMC156 where this is the case, so I guess I need to
> > make bmc150-accel use INT2 somehow (without specifying INT1). It might
> > be easiest if we treat this the same way as the case that you mentioned,
> > i.e. everyone with BMC156 would specify the interrupt-names explicitly
> > to have a consistent meaning of the device tree.
> 
> That will really confuse people who think they just have one interrupt so
> why do they need the name!  You'll have to special case that delight in
> the driver.
> 

Okay, good that we discussed this before then. :)
I was unsure if it would be better to special case it for BMC156 *or*
add support for the interrupt-names, but perhaps I'm just going to do
*both* then. (Special case it for BMC156, look at interrupt-names for
all others.)

Thanks!
Stephan



[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