next-20160914 build: 2 failures 3 warnings (next-20160914)
Arnd Bergmann
arnd at arndb.de
Mon Sep 19 04:30:42 PDT 2016
On Monday, September 19, 2016 11:54:29 AM CEST Mark Brown wrote:
> On Mon, Sep 19, 2016 at 12:31:04PM +0200, Arnd Bergmann wrote:
>
> > My guess is that this is indeed the correct fix, but I don't understand
> > at all what the function does, and Marcin Niestroj said the same thing,
> > he just copied the code from a driver that is always built-in.
>
> Yes, most of the code is copied from regmap-irq. Setting the parent is
> needed for edge triggered interrupts that don't latch state when
> disabled but isn't needed in the general case.
I found this in the tps65217 data sheet:
9.3.7 Interrupt Pin (nINT)
The interrupt pin is used to signal any event or fault
condition to the host processor. Whenever a fault or event
occurs in the IC the corresponding interrupt bit is set in
the INT register, and the open-drain output is pulled low.
The nINT pin is released (returns to Hi-Z state) and fault
bits are cleared when the INT register is read by the
host. However, if a failure persists, the corresponding
INT bit remains set and the nINT pin is pulled low again
after a maximum of 32 µs.
Interrupt events include pushbutton pressed/released, USB
and AC voltage status change.
The MASK bits in the INT register are used to mask events
from generating interrupts. The MASK settings affect the
nINT pin only and have no impact on protection and
monitor circuits themselves. Note that persisting event
conditions such as ISINK enabled shutdown can cause the
nINT pin to be pulled low for an extended period of
time which can keep the host in a loop trying to resolve
the interrupt. If this behavior is not desired, set the
corresponding mask bit after receiving the interrupt and
keep polling the INT register to see when the event
condition has disappeared. Then unmask the interrupt bit
again.
Does this tell us if it's needed or not?
Arnd
More information about the linux-arm-kernel
mailing list