Merge tag 'u-boot-at91-2022.07-a' of https://source.denx.de/u-boot/custodians/u-boot...
[platform/kernel/u-boot.git] / drivers / gpio / Kconfig
index 4a89c1a..a55e368 100644 (file)
@@ -2,7 +2,19 @@
 # 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"
@@ -39,7 +51,6 @@ config TPL_DM_GPIO
 config GPIO_HOG
        bool "Enable GPIO hog support"
        depends on DM_GPIO
-       default n
        help
          Enable gpio hog support
          The GPIO chip may contain GPIO hog definitions. GPIO hogging
@@ -73,10 +84,15 @@ config ALTERA_PIO
          Select this to enable PIO for Altera devices. Please find
          details on the "Embedded Peripherals IP User Guide" of Altera.
 
+config BCM2835_GPIO
+       bool "BCM2835 GPIO driver"
+       depends on DM_GPIO
+
 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.
 
@@ -91,13 +107,11 @@ config CORTINA_GPIO
 config DWAPB_GPIO
        bool "DWAPB GPIO driver"
        depends on DM && DM_GPIO
-       default n
        help
          Support for the Designware APB GPIO driver.
 
 config AT91_GPIO
        bool "AT91 PIO GPIO driver"
-       default n
        help
          Say yes here to select AT91 PIO GPIO driver. AT91 PIO
          controller manages up to 32 fully programmable input/output
@@ -110,7 +124,6 @@ config AT91_GPIO
 config ATMEL_PIO4
        bool "ATMEL PIO4 driver"
        depends on DM_GPIO
-       default n
        help
          Say yes here to support the Atmel PIO4 driver.
          The PIO4 is new version of Atmel PIO controller, which manages
@@ -118,11 +131,25 @@ config ATMEL_PIO4
          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
@@ -150,13 +177,11 @@ config INTEL_ICH6_GPIO
 config IMX_RGPIO2P
        bool "i.MX7ULP RGPIO2P driver"
        depends on DM
-       default n
        help
          This driver supports i.MX7ULP Rapid GPIO2P controller.
 
 config IPROC_GPIO
        bool "Broadcom iProc GPIO driver(without pinconf)"
-       default n
        help
          The Broadcom iProc based SoCs- Cygnus, NS2, NS3, NSP and Stingray,
          use the same GPIO Controller IP hence this driver could be used
@@ -168,17 +193,28 @@ config IPROC_GPIO
 config HSDK_CREG_GPIO
        bool "HSDK CREG GPIO griver"
        depends on DM_GPIO
-       default n
        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
-       default n
        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
@@ -203,7 +239,6 @@ config MSCC_SGPIO
 config MSM_GPIO
        bool "Qualcomm GPIO driver"
        depends on DM_GPIO
-       default n
        help
          Support GPIO controllers on Qualcomm Snapdragon family of SoCs.
          This controller have single bank (default name "soc"), every
@@ -345,7 +380,6 @@ config GPIO_UNIPHIER
 config VYBRID_GPIO
        bool "Vybrid GPIO driver"
        depends on DM
-       default n
        help
          Say yes here to support Vybrid vf610 GPIOs.
 
@@ -358,7 +392,7 @@ config PIC32_GPIO
 
 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
@@ -513,4 +547,27 @@ config NOMADIK_GPIO
          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.
+
+config SLG7XL45106_I2C_GPO
+       bool "slg7xl45106 i2c gpo expander"
+       depends on DM_GPIO
+       help
+          Support for slg7xl45106 i2c gpo expander. It is an i2c based
+          8-bit gpo expander, all gpo lines are controlled by writing
+          value into data register.
+
+endif