• Linus Walleij's avatar
    gpio: thunderx: Switch to GPIOLIB_IRQCHIP · a7fc89f9
    Linus Walleij authored
    Use the new infrastructure for hierarchical irqchips in
    gpiolib.
    
    The major part of the rewrite was dues to the fact that
    the driver was passing around a per-irq pointer to
    struct thunderx_line * data container, and the central
    handlers will assume struct gpio_chip * to be passed
    to we need to use the hwirq as index to look up the
    struct thunderx_line * for each IRQ.
    
    The pushing and pop:ing of the irqdomain was confusing
    because I've never seen this before, but I tried to
    replicate it as best I could.
    
    I have no chance to test or debug this so I need
    help.
    
    Cc: David Daney <david.daney@cavium.com>
    Cc: Thierry Reding <treding@nvidia.com>
    Cc: Brian Masney <masneyb@onstation.org>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Link: https://lore.kernel.org/r/20190808123242.5359-4-linus.walleij@linaro.org
    a7fc89f9
gpio-thunderx.c 15.2 KB