Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0-only
0002 #
0003 # Broadcom pinctrl drivers
0004 #
0005 
0006 config PINCTRL_BCM281XX
0007         bool "Broadcom BCM281xx pinctrl driver"
0008         depends on OF && (ARCH_BCM_MOBILE || COMPILE_TEST)
0009         select PINMUX
0010         select PINCONF
0011         select GENERIC_PINCONF
0012         select REGMAP_MMIO
0013         default ARCH_BCM_MOBILE
0014         help
0015           Say Y here to support Broadcom BCM281xx pinctrl driver, which is used
0016           for the BCM281xx SoC family, including BCM11130, BCM11140, BCM11351,
0017           BCM28145, and BCM28155 SoCs.  This driver requires the pinctrl
0018           framework.  GPIO is provided by a separate GPIO driver.
0019 
0020 config PINCTRL_BCM2835
0021         tristate "Broadcom BCM2835 GPIO (with PINCONF) driver"
0022         depends on OF && (ARCH_BCM2835 || ARCH_BRCMSTB || COMPILE_TEST)
0023         select PINMUX
0024         select PINCONF
0025         select GENERIC_PINCONF
0026         select GPIOLIB
0027         select GPIOLIB_IRQCHIP
0028         default ARCH_BCM2835 || ARCH_BRCMSTB
0029         help
0030            Say Y here to enable the Broadcom BCM2835 GPIO driver.
0031 
0032 config PINCTRL_BCM4908
0033         tristate "Broadcom BCM4908 pinmux driver"
0034         depends on OF && (ARCH_BCM4908 || COMPILE_TEST)
0035         select PINMUX
0036         select PINCONF
0037         select GENERIC_PINCONF
0038         select GENERIC_PINCTRL_GROUPS
0039         select GENERIC_PINMUX_FUNCTIONS
0040         default ARCH_BCM4908
0041         help
0042           Driver for BCM4908 family SoCs with integrated pin controller.
0043 
0044           If compiled as module it will be called pinctrl-bcm4908.
0045 
0046 config PINCTRL_BCM63XX
0047         bool
0048         select PINMUX
0049         select PINCONF
0050         select GENERIC_PINCONF
0051         select GPIOLIB
0052         select REGMAP
0053         select GPIO_REGMAP
0054 
0055 config PINCTRL_BCM6318
0056         bool "Broadcom BCM6318 GPIO driver"
0057         depends on (BMIPS_GENERIC || COMPILE_TEST)
0058         depends on OF
0059         select PINCTRL_BCM63XX
0060         default BMIPS_GENERIC
0061         help
0062            Say Y here to enable the Broadcom BCM6318 GPIO driver.
0063 
0064 config PINCTRL_BCM6328
0065         bool "Broadcom BCM6328 GPIO driver"
0066         depends on (BMIPS_GENERIC || COMPILE_TEST)
0067         depends on OF
0068         select PINCTRL_BCM63XX
0069         default BMIPS_GENERIC
0070         help
0071            Say Y here to enable the Broadcom BCM6328 GPIO driver.
0072 
0073 config PINCTRL_BCM6358
0074         bool "Broadcom BCM6358 GPIO driver"
0075         depends on (BMIPS_GENERIC || COMPILE_TEST)
0076         depends on OF
0077         select PINCTRL_BCM63XX
0078         default BMIPS_GENERIC
0079         help
0080            Say Y here to enable the Broadcom BCM6358 GPIO driver.
0081 
0082 config PINCTRL_BCM6362
0083         bool "Broadcom BCM6362 GPIO driver"
0084         depends on (BMIPS_GENERIC || COMPILE_TEST)
0085         depends on OF
0086         select PINCTRL_BCM63XX
0087         default BMIPS_GENERIC
0088         help
0089            Say Y here to enable the Broadcom BCM6362 GPIO driver.
0090 
0091 config PINCTRL_BCM6368
0092         bool "Broadcom BCM6368 GPIO driver"
0093         depends on (BMIPS_GENERIC || COMPILE_TEST)
0094         depends on OF
0095         select PINCTRL_BCM63XX
0096         default BMIPS_GENERIC
0097         help
0098            Say Y here to enable the Broadcom BCM6368 GPIO driver.
0099 
0100 config PINCTRL_BCM63268
0101         bool "Broadcom BCM63268 GPIO driver"
0102         depends on (BMIPS_GENERIC || COMPILE_TEST)
0103         depends on OF
0104         select PINCTRL_BCM63XX
0105         default BMIPS_GENERIC
0106         help
0107            Say Y here to enable the Broadcom BCM63268 GPIO driver.
0108 
0109 config PINCTRL_IPROC_GPIO
0110         bool "Broadcom iProc GPIO (with PINCONF) driver"
0111         depends on OF_GPIO && (ARCH_BCM_IPROC || COMPILE_TEST)
0112         select GPIOLIB_IRQCHIP
0113         select PINCONF
0114         select GENERIC_PINCONF
0115         default ARCH_BCM_IPROC
0116         help
0117           Say yes here to enable the Broadcom iProc GPIO driver.
0118 
0119           The Broadcom iProc based SoCs- Cygnus, NS2, NSP and Stingray, use
0120           same GPIO Controller IP hence this driver could be used for all.
0121 
0122           The Broadcom Cygnus SoC has 3 GPIO controllers including the ASIU
0123           GPIO controller (ASIU), the chipCommonG GPIO controller (CCM), and
0124           the always-ON GPIO controller (CRMU/AON). All 3 GPIO controllers are
0125           supported by this driver.
0126 
0127           The Broadcom NSP has two GPIO controllers including the ChipcommonA
0128           GPIO, the ChipcommonB GPIO. Later controller is supported by this
0129           driver.
0130 
0131           The Broadcom NS2 has two GPIO controller including the CRMU GPIO,
0132           the ChipcommonG GPIO. Both controllers are supported by this driver.
0133 
0134           The Broadcom Stingray GPIO controllers are supported by this driver.
0135 
0136           All above SoCs GPIO controllers support basic PINCONF functions such
0137           as bias pull up, pull down, and drive strength configurations, when
0138           these pins are muxed to GPIO.
0139 
0140           It provides the framework where pins from the individual GPIO can be
0141           individually muxed to GPIO function, through interaction with the
0142           SoCs IOMUX controller. This features could be used only on SoCs which
0143           support individual pin muxing.
0144 
0145 config PINCTRL_CYGNUS_MUX
0146         bool "Broadcom Cygnus IOMUX driver"
0147         depends on (ARCH_BCM_CYGNUS || COMPILE_TEST)
0148         depends on OF
0149         select PINMUX
0150         select GENERIC_PINCONF
0151         default ARCH_BCM_CYGNUS
0152         help
0153           Say yes here to enable the Broadcom Cygnus IOMUX driver.
0154 
0155           The Broadcom Cygnus IOMUX driver supports group based IOMUX
0156           configuration, with the exception that certain individual pins
0157           can be overridden to GPIO function
0158 
0159 config PINCTRL_NS
0160         bool "Broadcom Northstar pins driver"
0161         depends on OF && (ARCH_BCM_5301X || COMPILE_TEST)
0162         select PINMUX
0163         select GENERIC_PINCONF
0164         select GENERIC_PINCTRL_GROUPS
0165         select GENERIC_PINMUX_FUNCTIONS
0166         default ARCH_BCM_5301X
0167         help
0168           Say yes here to enable the Broadcom NS SoC pins driver.
0169 
0170           The Broadcom Northstar pins driver supports muxing multi-purpose pins
0171           that can be used for various functions (e.g. SPI, I2C, UART) as well
0172           as GPIOs.
0173 
0174 config PINCTRL_NSP_GPIO
0175         bool "Broadcom NSP GPIO (with PINCONF) driver"
0176         depends on OF_GPIO && (ARCH_BCM_NSP || COMPILE_TEST)
0177         select GPIOLIB_IRQCHIP
0178         select PINCONF
0179         select GENERIC_PINCONF
0180         default ARCH_BCM_NSP
0181         help
0182           Say yes here to enable the Broadcom NSP GPIO driver.
0183 
0184           The Broadcom Northstar Plus SoC ChipcommonA GPIO controller is
0185           supported by this driver.
0186 
0187           The ChipcommonA GPIO controller support basic PINCONF functions such
0188           as bias pull up, pull down, and drive strength configurations, when
0189           these pins are muxed to GPIO.
0190 
0191 config PINCTRL_NS2_MUX
0192         bool "Broadcom Northstar2 pinmux driver"
0193         depends on OF
0194         depends on ARCH_BCM_IPROC || COMPILE_TEST
0195         select PINMUX
0196         select GENERIC_PINCONF
0197         default ARM64 && ARCH_BCM_IPROC
0198         help
0199           Say yes here to enable the Broadcom NS2 MUX driver.
0200 
0201           The Broadcom Northstar2 IOMUX driver supports group based IOMUX
0202           configuration.
0203 
0204 config PINCTRL_NSP_MUX
0205         bool "Broadcom NSP IOMUX driver"
0206         depends on (ARCH_BCM_NSP || COMPILE_TEST)
0207         depends on OF
0208         select PINMUX
0209         select GENERIC_PINCONF
0210         default ARCH_BCM_NSP
0211         help
0212           Say yes here to enable the Broadcom NSP SOC IOMUX driver.
0213 
0214           The Broadcom Northstar Plus IOMUX driver supports pin based IOMUX
0215           configuration, with certain individual pins can be overridden
0216           to GPIO function.