217 lines
		
	
	
		
			6.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			217 lines
		
	
	
		
			6.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # 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
 | |
| 	tristate "Broadcom BCM2835 GPIO (with PINCONF) driver"
 | |
| 	depends on OF && (ARCH_BCM2835 || ARCH_BRCMSTB || COMPILE_TEST)
 | |
| 	select PINMUX
 | |
| 	select PINCONF
 | |
| 	select GENERIC_PINCONF
 | |
| 	select GPIOLIB
 | |
| 	select GPIOLIB_IRQCHIP
 | |
| 	default ARCH_BCM2835 || ARCH_BRCMSTB
 | |
| 	help
 | |
| 	   Say Y here to enable the Broadcom BCM2835 GPIO driver.
 | |
| 
 | |
| config PINCTRL_BCM4908
 | |
| 	tristate "Broadcom BCM4908 pinmux driver"
 | |
| 	depends on OF && (ARCH_BCMBCA || COMPILE_TEST)
 | |
| 	select PINMUX
 | |
| 	select PINCONF
 | |
| 	select GENERIC_PINCONF
 | |
| 	select GENERIC_PINCTRL_GROUPS
 | |
| 	select GENERIC_PINMUX_FUNCTIONS
 | |
| 	default ARCH_BCMBCA
 | |
| 	help
 | |
| 	  Driver for BCM4908 family SoCs with integrated pin controller.
 | |
| 
 | |
| 	  If compiled as module it will be called pinctrl-bcm4908.
 | |
| 
 | |
| config PINCTRL_BCM63XX
 | |
| 	bool
 | |
| 	select PINMUX
 | |
| 	select PINCONF
 | |
| 	select GENERIC_PINCONF
 | |
| 	select GPIOLIB
 | |
| 	select REGMAP
 | |
| 	select GPIO_REGMAP
 | |
| 
 | |
| config PINCTRL_BCM6318
 | |
| 	bool "Broadcom BCM6318 GPIO driver"
 | |
| 	depends on (BMIPS_GENERIC || COMPILE_TEST)
 | |
| 	depends on OF
 | |
| 	select PINCTRL_BCM63XX
 | |
| 	default BMIPS_GENERIC
 | |
| 	help
 | |
| 	   Say Y here to enable the Broadcom BCM6318 GPIO driver.
 | |
| 
 | |
| config PINCTRL_BCM6328
 | |
| 	bool "Broadcom BCM6328 GPIO driver"
 | |
| 	depends on (BMIPS_GENERIC || COMPILE_TEST)
 | |
| 	depends on OF
 | |
| 	select PINCTRL_BCM63XX
 | |
| 	default BMIPS_GENERIC
 | |
| 	help
 | |
| 	   Say Y here to enable the Broadcom BCM6328 GPIO driver.
 | |
| 
 | |
| config PINCTRL_BCM6358
 | |
| 	bool "Broadcom BCM6358 GPIO driver"
 | |
| 	depends on (BMIPS_GENERIC || COMPILE_TEST)
 | |
| 	depends on OF
 | |
| 	select PINCTRL_BCM63XX
 | |
| 	default BMIPS_GENERIC
 | |
| 	help
 | |
| 	   Say Y here to enable the Broadcom BCM6358 GPIO driver.
 | |
| 
 | |
| config PINCTRL_BCM6362
 | |
| 	bool "Broadcom BCM6362 GPIO driver"
 | |
| 	depends on (BMIPS_GENERIC || COMPILE_TEST)
 | |
| 	depends on OF
 | |
| 	select PINCTRL_BCM63XX
 | |
| 	default BMIPS_GENERIC
 | |
| 	help
 | |
| 	   Say Y here to enable the Broadcom BCM6362 GPIO driver.
 | |
| 
 | |
| config PINCTRL_BCM6368
 | |
| 	bool "Broadcom BCM6368 GPIO driver"
 | |
| 	depends on (BMIPS_GENERIC || COMPILE_TEST)
 | |
| 	depends on OF
 | |
| 	select PINCTRL_BCM63XX
 | |
| 	default BMIPS_GENERIC
 | |
| 	help
 | |
| 	   Say Y here to enable the Broadcom BCM6368 GPIO driver.
 | |
| 
 | |
| config PINCTRL_BCM63268
 | |
| 	bool "Broadcom BCM63268 GPIO driver"
 | |
| 	depends on (BMIPS_GENERIC || COMPILE_TEST)
 | |
| 	depends on OF
 | |
| 	select PINCTRL_BCM63XX
 | |
| 	default BMIPS_GENERIC
 | |
| 	help
 | |
| 	   Say Y here to enable the Broadcom BCM63268 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
 | |
| 	select GENERIC_PINCTRL_GROUPS
 | |
| 	select GENERIC_PINMUX_FUNCTIONS
 | |
| 	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.
 |