[PATCH 1/2] regulator: ltc3589: make IRQ optional

Lothar Waßmann LW at KARO-electronics.de
Thu Jan 21 03:33:11 PST 2016


Hi,

> On Thu, Jan 21, 2016 at 11:26:11AM +0100, Lothar Waßmann wrote:
> > > On Thu, Jan 21, 2016 at 08:05:24AM +0100, Lothar Waßmann wrote:
> > > > > On Wed, Jan 20, 2016 at 01:29:51PM +0100, Lothar Waßmann wrote:
> 
> > > > > > This pin is used as IRQ pin for the LTC3589 PMIC on the Ka-Ro
> > > > > > electronics TX48 module. Make the IRQ optional in the driver and use a
> > > > > > polling routine instead if no IRQ is specified in DT.
> > > > > > Otherwise the driver will continuously generate interrupts and make
> > > > > > the system unusable.
> 
> > > > > How will the driver generate interrupts if there is no interrupt
> > > > > physically present in the system?
> 
> > > > It's using timer interrupts to poll the LTC3589 state.
> 
> > > I know that is what your patch does, my question is why you say in your
> > > commit log that "Otherwise the driver will continuously generate
> > > interrupts and make the system unusable".
> 
> > Because the interrupt is level triggered and the polarity of the
> > EXTINT pin is inverted, the interrupt will be constantly active when
> > the IRQ pin of the LTC3589 is inactive.
> 
> So, to repeat my original question, how will that generate interrupts if
> there is no interrupt physically present in the system?
>
It won't. That's the whole purpose of this patch.
I'm afraid, I don't quite understand what you want to say...

Without this patch there will be a constantly active interrupt, which
will stall the system because the nNMI interrupt (on the EXTINTn pin) is
level triggered.
Since the polarity of the interrupt input is fixed, there is no way to
use it in our HW.


Lothar Waßmann



More information about the linux-arm-kernel mailing list