• Tony Lindgren's avatar
    mfd: cpcap: Fix interrupt to use level interrupt · ac894732
    Tony Lindgren authored
    I made a mistake assuming the device tree configuration for interrupt
    triggering was somehow passed to the SPI device but it's not.
    
    In the Motorola Linux kernel tree CPCAP PMIC is configured as a rising
    edge triggered interrupt, but then then it's interrupt handler keeps
    looping until the GPIO line goes down. So the CPCAP interrupt is clearly
    a level interrupt and not an edge interrupt.
    
    Earlier when I tried to configure it as level interrupt using the
    device tree, I did not account that the triggering only gets passed
    to the SPI core and it also needs to be specified in the CPCAP driver
    when we do devm_regmap_add_irq_chip().
    
    Fixes: 56e1d40d ("mfd: cpcap: Add minimal support")
    Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
    Acked-by: default avatarCharles Keepax <ckeepax@opensource.wolfsonmicro.com>
    Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
    ac894732
motorola-cpcap.c 6.5 KB