# GPIO infrastructure and drivers
#
-menu "GPIO Support"
+menuconfig GPIO
+ bool "GPIO support"
+ default y
+ help
+ Enable support for GPIOs (General-purpose Input/Output) in U-Boot.
+ GPIOs allow U-Boot to read the state of an input line (high or
+ low) and set the state of an output line. This can be used to
+ drive LEDs, control power to various system parts and read user
+ input. GPIOs can be useful to enable a 'sign-of-life' LED,
+ for example. Enable this option to build the drivers in
+ drivers/gpio as part of an U-Boot build.
+
+if GPIO
config DM_GPIO
bool "Enable Driver Model for GPIO drivers"
config BCM6345_GPIO
bool "BCM6345 GPIO driver"
depends on DM_GPIO && (ARCH_BMIPS || ARCH_BCM68360 || \
- ARCH_BCM6858 || ARCH_BCM63158)
+ ARCH_BCM6858 || ARCH_BCM63158 || \
+ ARCH_BCM6753)
help
This driver supports the GPIO banks on BCM6345 SoCs.
may be dedicated as a general purpose I/O or be assigned to
a function of an embedded peripheral.
+config ASPEED_GPIO
+ bool "Aspeed GPIO Driver"
+ help
+ Say yes here to support the Aspeed GPIO driver. The controller
+ is found in the AST2400, AST2500 and AST2600 BMC SoCs and
+ provides access to over 200 GPIOs on each chip.
+
config DA8XX_GPIO
bool "DA8xx GPIO Driver"
help
This driver supports the DA8xx GPIO controller
+config FXL6408_GPIO
+ bool "FXL6408 I2C GPIO expander driver"
+ depends on DM_GPIO && DM_I2C
+ help
+ This driver supports the Fairchild FXL6408 device. FXL6408 is a
+ fully configurable 8-bit I2C-controlled GPIO expander.
+
config INTEL_BROADWELL_GPIO
bool "Intel Broadwell GPIO driver"
depends on DM
help
This driver supports CREG GPIOs on Synopsys HSDK SOC.
+config KIRKWOOD_GPIO
+ bool "Kirkwood GPIO driver"
+ help
+ This drdiver supports GPIOs on Kirkwood platforms
+
config LPC32XX_GPIO
bool "LPC32XX GPIO driver"
depends on DM
help
Support for the LPC32XX GPIO driver.
+config MAX7320_GPIO
+ bool "MAX7320 I2C GPIO Expander driver"
+ depends on DM_GPIO && DM_I2C
+ help
+ Support for MAX7320 I2C 8/16-bit GPIO expander.
+ original maxim device has 8 push/pull outputs,
+ some clones offers 16bit.
+
config MCP230XX_GPIO
bool "MCP230XX GPIO driver"
depends on DM
config OCTEON_GPIO
bool "Octeon II/III/TX/TX2 GPIO driver"
- depends on DM_GPIO && DM_PCI && (ARCH_OCTEON || ARCH_OCTEONTX || ARCH_OCTEONTX2)
+ depends on DM_GPIO && PCI && (ARCH_OCTEON || ARCH_OCTEONTX || ARCH_OCTEONTX2)
default y
help
Add support for the Marvell Octeon GPIO driver. This is used with
into a number of banks each with 32 GPIOs. The GPIOs for a device are
defined in the device tree with one node for each bank.
-endmenu
+config ZYNQMP_GPIO_MODEPIN
+ bool "ZynqMP gpio modepin"
+ depends on DM_GPIO
+ help
+ This config enables the ZynqMP gpio modepin driver. ZynqMP modepin
+ driver will set and get the status of PS_MODE pins. These modepins
+ are accessed using xilinx firmware. In modepin register, [3:0] bits
+ set direction, [7:4] bits read IO, [11:8] bits set/clear IO.
+
+config SL28CPLD_GPIO
+ bool "Kontron sl28cpld GPIO driver"
+ depends on DM_GPIO && SL28CPLD
+ help
+ Support GPIO access on Kontron sl28cpld board management controllers.
+
+endif