• Tomasz Figa's avatar
    pinctrl: exynos: Consolidate irq_chips of GPIO and WKUP EINTs · 2e4a4fda
    Tomasz Figa authored
    Handling of irq_chip operations for GPIO and WKUP external interrupts
    is mostly the same, with the difference being offset of registers.
    However currently the driver has all the code duplicated for both EINT
    types, which is undesirable, because changes in irq_chip operations have
    to be done to both instances of the same code.
    
    This patch fixes this by creating exynos_irq_chip struct that has normal
    irq_chip struct embedded and contain differences between particular EINT
    types, which are three register offsets. One instance of code is removed
    and the new structure is used instead to fetch necessary data instead of
    samsung_pin_ctrl struct used previously.
    
    While at it, the patch removes Exynos-specific fields from
    aforementioned structure to improve layering of the driver.
    Signed-off-by: default avatarTomasz Figa <t.figa@samsung.com>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    2e4a4fda
pinctrl-exynos.c 35.8 KB