1# 2# Broadcom pinctrl drivers 3# 4 5config PINCTRL_BCM281XX 6 bool "Broadcom BCM281xx pinctrl driver" 7 depends on OF && (ARCH_BCM_MOBILE || COMPILE_TEST) 8 select PINMUX 9 select PINCONF 10 select GENERIC_PINCONF 11 select REGMAP_MMIO 12 default ARCH_BCM_MOBILE 13 help 14 Say Y here to support Broadcom BCM281xx pinctrl driver, which is used 15 for the BCM281xx SoC family, including BCM11130, BCM11140, BCM11351, 16 BCM28145, and BCM28155 SoCs. This driver requires the pinctrl 17 framework. GPIO is provided by a separate GPIO driver. 18 19config PINCTRL_BCM2835 20 bool "Broadcom BCM2835 GPIO (with PINCONF) driver" 21 depends on OF && (ARCH_BCM2835 || ARCH_BRCMSTB || COMPILE_TEST) 22 select PINMUX 23 select PINCONF 24 select GENERIC_PINCONF 25 select GPIOLIB_IRQCHIP 26 default ARCH_BCM2835 || ARCH_BRCMSTB 27 help 28 Say Y here to enable the Broadcom BCM2835 GPIO driver. 29 30config PINCTRL_IPROC_GPIO 31 bool "Broadcom iProc GPIO (with PINCONF) driver" 32 depends on OF_GPIO && (ARCH_BCM_IPROC || COMPILE_TEST) 33 select GPIOLIB_IRQCHIP 34 select PINCONF 35 select GENERIC_PINCONF 36 default ARCH_BCM_IPROC 37 help 38 Say yes here to enable the Broadcom iProc GPIO driver. 39 40 The Broadcom iProc based SoCs- Cygnus, NS2, NSP and Stingray, use 41 same GPIO Controller IP hence this driver could be used for all. 42 43 The Broadcom Cygnus SoC has 3 GPIO controllers including the ASIU 44 GPIO controller (ASIU), the chipCommonG GPIO controller (CCM), and 45 the always-ON GPIO controller (CRMU/AON). All 3 GPIO controllers are 46 supported by this driver. 47 48 The Broadcom NSP has two GPIO controllers including the ChipcommonA 49 GPIO, the ChipcommonB GPIO. Later controller is supported by this 50 driver. 51 52 The Broadcom NS2 has two GPIO controller including the CRMU GPIO, 53 the ChipcommonG GPIO. Both controllers are supported by this driver. 54 55 The Broadcom Stingray GPIO controllers are supported by this driver. 56 57 All above SoCs GPIO controllers support basic PINCONF functions such 58 as bias pull up, pull down, and drive strength configurations, when 59 these pins are muxed to GPIO. 60 61 It provides the framework where pins from the individual GPIO can be 62 individually muxed to GPIO function, through interaction with the 63 SoCs IOMUX controller. This features could be used only on SoCs which 64 support individual pin muxing. 65 66config PINCTRL_CYGNUS_MUX 67 bool "Broadcom Cygnus IOMUX driver" 68 depends on (ARCH_BCM_CYGNUS || COMPILE_TEST) 69 depends on OF 70 select PINMUX 71 select GENERIC_PINCONF 72 default ARCH_BCM_CYGNUS 73 help 74 Say yes here to enable the Broadcom Cygnus IOMUX driver. 75 76 The Broadcom Cygnus IOMUX driver supports group based IOMUX 77 configuration, with the exception that certain individual pins 78 can be overridden to GPIO function 79 80config PINCTRL_NS 81 bool "Broadcom Northstar pins driver" 82 depends on OF && (ARCH_BCM_5301X || COMPILE_TEST) 83 select PINMUX 84 select GENERIC_PINCONF 85 default ARCH_BCM_5301X 86 help 87 Say yes here to enable the Broadcom NS SoC pins driver. 88 89 The Broadcom Northstar pins driver supports muxing multi-purpose pins 90 that can be used for various functions (e.g. SPI, I2C, UART) as well 91 as GPIOs. 92 93config PINCTRL_NSP_GPIO 94 bool "Broadcom NSP GPIO (with PINCONF) driver" 95 depends on OF_GPIO && (ARCH_BCM_NSP || COMPILE_TEST) 96 select GPIOLIB_IRQCHIP 97 select PINCONF 98 select GENERIC_PINCONF 99 default ARCH_BCM_NSP 100 help 101 Say yes here to enable the Broadcom NSP GPIO driver. 102 103 The Broadcom Northstar Plus SoC ChipcommonA GPIO controller is 104 supported by this driver. 105 106 The ChipcommonA GPIO controller support basic PINCONF functions such 107 as bias pull up, pull down, and drive strength configurations, when 108 these pins are muxed to GPIO. 109 110config PINCTRL_NS2_MUX 111 bool "Broadcom Northstar2 pinmux driver" 112 depends on OF 113 depends on ARCH_BCM_IPROC || COMPILE_TEST 114 select PINMUX 115 select GENERIC_PINCONF 116 default ARM64 && ARCH_BCM_IPROC 117 help 118 Say yes here to enable the Broadcom NS2 MUX driver. 119 120 The Broadcom Northstar2 IOMUX driver supports group based IOMUX 121 configuration. 122 123config PINCTRL_NSP_MUX 124 bool "Broadcom NSP IOMUX driver" 125 depends on (ARCH_BCM_NSP || COMPILE_TEST) 126 depends on OF 127 select PINMUX 128 select GENERIC_PINCONF 129 default ARCH_BCM_NSP 130 help 131 Say yes here to enable the Broadcom NSP SOC IOMUX driver. 132 133 The Broadcom Northstar Plus IOMUX driver supports pin based IOMUX 134 configuration, with certain individual pins can be overridden 135 to GPIO function. 136