| # SPDX-License-Identifier: GPL-2.0-only | |
| # | |
| # Broadcom pinctrl drivers | |
| # | |
| config PINCTRL_BCM281XX | |
| bool "Broadcom BCM281xx pinctrl driver" | |
| depends on OF && (ARCH_BCM_MOBILE || COMPILE_TEST) | |
| select PINMUX | |
| select PINCONF | |
| select GENERIC_PINCONF | |
| select REGMAP_MMIO | |
| default ARCH_BCM_MOBILE | |
| help | |
| Say Y here to support Broadcom BCM281xx pinctrl driver, which is used | |
| for the BCM281xx SoC family, including BCM11130, BCM11140, BCM11351, | |
| BCM28145, and BCM28155 SoCs. This driver requires the pinctrl | |
| framework. GPIO is provided by a separate GPIO driver. | |
| config PINCTRL_BCM2835 | |
| bool "Broadcom BCM2835 GPIO (with PINCONF) driver" | |
| depends on OF && (ARCH_BCM2835 || ARCH_BRCMSTB || COMPILE_TEST) | |
| select PINMUX | |
| select PINCONF | |
| select GENERIC_PINCONF | |
| select GPIOLIB_IRQCHIP | |
| default ARCH_BCM2835 || ARCH_BRCMSTB | |
| help | |
| Say Y here to enable the Broadcom BCM2835 GPIO driver. | |
| config PINCTRL_IPROC_GPIO | |
| bool "Broadcom iProc GPIO (with PINCONF) driver" | |
| depends on OF_GPIO && (ARCH_BCM_IPROC || COMPILE_TEST) | |
| select GPIOLIB_IRQCHIP | |
| select PINCONF | |
| select GENERIC_PINCONF | |
| default ARCH_BCM_IPROC | |
| help | |
| Say yes here to enable the Broadcom iProc GPIO driver. | |
| The Broadcom iProc based SoCs- Cygnus, NS2, NSP and Stingray, use | |
| same GPIO Controller IP hence this driver could be used for all. | |
| The Broadcom Cygnus SoC has 3 GPIO controllers including the ASIU | |
| GPIO controller (ASIU), the chipCommonG GPIO controller (CCM), and | |
| the always-ON GPIO controller (CRMU/AON). All 3 GPIO controllers are | |
| supported by this driver. | |
| The Broadcom NSP has two GPIO controllers including the ChipcommonA | |
| GPIO, the ChipcommonB GPIO. Later controller is supported by this | |
| driver. | |
| The Broadcom NS2 has two GPIO controller including the CRMU GPIO, | |
| the ChipcommonG GPIO. Both controllers are supported by this driver. | |
| The Broadcom Stingray GPIO controllers are supported by this driver. | |
| All above SoCs GPIO controllers support basic PINCONF functions such | |
| as bias pull up, pull down, and drive strength configurations, when | |
| these pins are muxed to GPIO. | |
| It provides the framework where pins from the individual GPIO can be | |
| individually muxed to GPIO function, through interaction with the | |
| SoCs IOMUX controller. This features could be used only on SoCs which | |
| support individual pin muxing. | |
| config PINCTRL_CYGNUS_MUX | |
| bool "Broadcom Cygnus IOMUX driver" | |
| depends on (ARCH_BCM_CYGNUS || COMPILE_TEST) | |
| depends on OF | |
| select PINMUX | |
| select GENERIC_PINCONF | |
| default ARCH_BCM_CYGNUS | |
| help | |
| Say yes here to enable the Broadcom Cygnus IOMUX driver. | |
| The Broadcom Cygnus IOMUX driver supports group based IOMUX | |
| configuration, with the exception that certain individual pins | |
| can be overridden to GPIO function | |
| config PINCTRL_NS | |
| bool "Broadcom Northstar pins driver" | |
| depends on OF && (ARCH_BCM_5301X || COMPILE_TEST) | |
| select PINMUX | |
| select GENERIC_PINCONF | |
| default ARCH_BCM_5301X | |
| help | |
| Say yes here to enable the Broadcom NS SoC pins driver. | |
| The Broadcom Northstar pins driver supports muxing multi-purpose pins | |
| that can be used for various functions (e.g. SPI, I2C, UART) as well | |
| as GPIOs. | |
| config PINCTRL_NSP_GPIO | |
| bool "Broadcom NSP GPIO (with PINCONF) driver" | |
| depends on OF_GPIO && (ARCH_BCM_NSP || COMPILE_TEST) | |
| select GPIOLIB_IRQCHIP | |
| select PINCONF | |
| select GENERIC_PINCONF | |
| default ARCH_BCM_NSP | |
| help | |
| Say yes here to enable the Broadcom NSP GPIO driver. | |
| The Broadcom Northstar Plus SoC ChipcommonA GPIO controller is | |
| supported by this driver. | |
| The ChipcommonA GPIO controller support basic PINCONF functions such | |
| as bias pull up, pull down, and drive strength configurations, when | |
| these pins are muxed to GPIO. | |
| config PINCTRL_NS2_MUX | |
| bool "Broadcom Northstar2 pinmux driver" | |
| depends on OF | |
| depends on ARCH_BCM_IPROC || COMPILE_TEST | |
| select PINMUX | |
| select GENERIC_PINCONF | |
| default ARM64 && ARCH_BCM_IPROC | |
| help | |
| Say yes here to enable the Broadcom NS2 MUX driver. | |
| The Broadcom Northstar2 IOMUX driver supports group based IOMUX | |
| configuration. | |
| config PINCTRL_NSP_MUX | |
| bool "Broadcom NSP IOMUX driver" | |
| depends on (ARCH_BCM_NSP || COMPILE_TEST) | |
| depends on OF | |
| select PINMUX | |
| select GENERIC_PINCONF | |
| default ARCH_BCM_NSP | |
| help | |
| Say yes here to enable the Broadcom NSP SOC IOMUX driver. | |
| The Broadcom Northstar Plus IOMUX driver supports pin based IOMUX | |
| configuration, with certain individual pins can be overridden | |
| to GPIO function. |