blob: 23113090b3982208fd09f8410b6b43c94d31edbd [file] [log] [blame]
#
# GPIO infrastructure and drivers
#
menu "GPIO Support"
config DM_GPIO
bool "Enable Driver Model for GPIO drivers"
depends on DM
help
Enable driver model for GPIO access. The standard GPIO
interface (gpio_get_value(), etc.) is then implemented by
the GPIO uclass. Drivers provide methods to query the
particular GPIOs that they provide. The uclass interface
is defined in include/asm-generic/gpio.h.
config ALTERA_PIO
bool "Altera PIO driver"
depends on DM_GPIO
help
Select this to enable PIO for Altera devices. Please find
details on the "Embedded Peripherals IP User Guide" of Altera.
config DWAPB_GPIO
bool "DWAPB GPIO driver"
depends on DM && DM_GPIO
default n
help
Support for the Designware APB GPIO driver.
config ATMEL_PIO4
bool "ATMEL PIO4 driver"
depends on DM
default n
help
Say yes here to support the Atmel PIO4 driver.
The PIO4 is new version of Atmel PIO controller, which manages
up to 128 fully programmable input/output lines. Each I/O line
may be dedicated as a general purpose I/O or be assigned to
a function of an embedded peripheral.
config INTEL_BROADWELL_GPIO
bool "Intel Broadwell GPIO driver"
depends on DM
help
This driver supports Broadwell U devices which have an expanded
GPIO feature set. The difference is large enough to merit a separate
driver from the common Intel ICH6 driver. It supports a total of
95 GPIOs which can be configured from the device tree.
config LPC32XX_GPIO
bool "LPC32XX GPIO driver"
depends on DM
default n
help
Support for the LPC32XX GPIO driver.
config ROCKCHIP_GPIO
bool "Rockchip GPIO driver"
depends on DM_GPIO
help
Support GPIO access on Rockchip SoCs. The GPIOs are arranged into
a number of banks (different for each SoC type) each with 32 GPIOs.
The GPIOs for a device are defined in the device tree with one node
for each bank.
config SANDBOX_GPIO
bool "Enable sandbox GPIO driver"
depends on SANDBOX && DM && DM_GPIO
help
This driver supports some simulated GPIOs which can be adjusted
using 'back door' functions like sandbox_gpio_set_value(). Then the
GPIOs can be inspected through the normal get_get_value()
interface. The purpose of this is to allow GPIOs to be used as
normal in sandbox, perhaps with test code actually driving the
behaviour of those GPIOs.
config SANDBOX_GPIO_COUNT
int "Number of sandbox GPIOs"
depends on SANDBOX_GPIO
default 128
help
The sandbox driver can support any number of GPIOs. Generally these
are specified using the device tree. But you can also have a number
of 'anonymous' GPIOs that do not belong to any device or bank.
Select a suitable value depending on your needs.
config GPIO_UNIPHIER
bool "UniPhier GPIO"
depends on ARCH_UNIPHIER
help
Say yes here to support UniPhier GPIOs.
config VYBRID_GPIO
bool "Vybrid GPIO driver"
depends on DM
default n
help
Say yes here to support Vybrid vf610 GPIOs.
config PIC32_GPIO
bool "Microchip PIC32 GPIO driver"
depends on DM_GPIO && MACH_PIC32
default y
help
Say yes here to support Microchip PIC32 GPIOs.
config MVEBU_GPIO
bool "Marvell MVEBU GPIO driver"
depends on DM_GPIO && ARCH_MVEBU
default y
help
Say yes here to support Marvell MVEBU (Armada XP/38x) GPIOs.
endmenu