• Cyril Chemparathy's avatar
    Davinci: gpio - register layout invariant inlines · c12f415a
    Cyril Chemparathy authored
    This patch renders the inlined gpio accessors in gpio.h independent of the
    underlying controller's register layout.  This is done by including three new
    fields in davinci_gpio_controller to hold the addresses of the set, clear, and
    in data registers.
    
    Other changes:
    
    1. davinci_gpio_regs structure definition moved to gpio.c.  This structure is
    no longer common across all davinci socs (davinci_gpio_controller is).
    
    2. controller base address calculation code (gpio2controller()) moved to
    gpio.c as this was no longer necessary for the inline implementation.
    
    3. modified inline range checks to use davinci_soc_info.gpio_num instead of
    DAVINCI_N_GPIO.
    Signed-off-by: default avatarCyril Chemparathy <cyril@ti.com>
    Tested-by: default avatarSandeep Paulraj <s-paulraj@ti.com>
    Signed-off-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
    c12f415a
gpio.c 11.7 KB