Skip to content
  • Wei Chen's avatar
    pinctrl: sirf: add sirf atlas7 pinctrl and gpio support · f9367793
    Wei Chen authored and Linus Walleij's avatar Linus Walleij committed
    The Pinctrl module (ioc) controls the Pad's function select
    (each pad can have 8 functions), Pad's Drive Strength, Pad's
    Pull Select and Pad's Input Disable status.
    
    The ioc has two modules, ioc_top & ioc_rtc. Both of these two
    modules have function select/clear, Pull select and Drive
    Strength registers. But only ioc_rtc has input-disable
    registers. The Pads on ioc_top have to access ioc_rtc to set
    their input-disable status and intpu-disable-value.
    
    So have to use one ioc driver instance to drive these two
    ioc modules at the same time, and each ioc module will be
    treat as one bank on the "IOC Device".
    
    The GPIO Controller controls the GPIO status if the Pad has
    been config as GPIO by Pinctrl already. Includes the GPIO
    Input/output, Interrupt type, Interrupt Status, and Set/Get
    Values.
    The GPIO pull up/down are controlled by Pinctrl.
    
    There are 7 GPIO Groups and splited into 3 MACROs in atlas7.
    The GPIO Groups in one MACRO share one GPIO controllers,...
    f9367793