• Bartosz Golaszewski's avatar
    regmap: irq: handle HW using separate rising/falling edge interrupts · bc998a73
    Bartosz Golaszewski authored
    Some interrupt controllers use separate bits for controlling rising
    and falling edge interrupts in the mask register i.e. they have one
    interrupt for rising edge and one for falling.
    
    We already handle the case where we have a single interrupt in the
    mask register and a separate type configuration register.
    
    Add a new switch to regmap_irq_chip which tells the framework to use
    the mask_base address for configuring the edge of the interrupts that
    define type_falling/rising_mask values.
    
    For such interrupts we never update the type_base bits. For interrupts
    that don't define type masks or their regmap irq chip doesn't set the
    type_in_mask to true everything stays the same.
    Signed-off-by: default avatarBartosz Golaszewski <bgolaszewski@baylibre.com>
    Signed-off-by: default avatarMark Brown <broonie@kernel.org>
    bc998a73
regmap-irq.c 22.1 KB