Re: [PATCH v2 0/3] input: rmi4: Regulator supply support

From: Bjorn Andersson
Date: Tue May 10 2016 - 11:49:13 EST


On Mon 09 May 17:36 PDT 2016, Andrew Duggan wrote:

> Hi Bjorn,
>
> On 05/06/2016 09:40 PM, Bjorn Andersson wrote:
> >The first version of the regulator support patch suffered from being
> >implemented in the transport driver, as a work around for resource availability
> >racing (EPROBE_DEFER of the core driver) with the interrupt handler.
> >
> >After reconsidering the solutions discussed following that I concluded that the
> >interrupt management is not really part of the transport, neither conceptually
> >or electrically. I therefor here suggest (patch 1/3) to move the interrupt
> >registration and handling to the core rmi driver.
>
> My concern with moving interrupt processing to the core is that not all
> transports report attn to the rmi core using an irq. The HID and SMBus
> transports which are currently in development, reside a little higher in the
> stack and attention is reported using different mechanisms. We moved
> interrupt handling to the transport drivers so that they could handle the
> differences in how attn is reported.
>

I suspected that to be the case.

> This message has some of the previous discussion regarding interrupt
> processing:
> https://lkml.org/lkml/2015/11/28/123
>
> Similarly, not all transports will need support for regulators. Implementing
> both in the transport drivers avoids the EPROBE_DEFER racing and avoids
> adding checks in the core to see if it needs to handle interrupts and manage
> regulators.
>

So either we duplicate the regulator support in spi/i2c or we make them
optional in the core driver. Sounds like you prefer the prior, i.e. v1
of my patch.

Regards,
Bjorn