]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blame - drivers/pinctrl/bcm/Kconfig
UBUNTU: Ubuntu-5.15.0-39.42
[mirror_ubuntu-jammy-kernel.git] / drivers / pinctrl / bcm / Kconfig
CommitLineData
ec8f24b7 1# SPDX-License-Identifier: GPL-2.0-only
b17f2f9b
RJ
2#
3# Broadcom pinctrl drivers
4#
5
6config PINCTRL_BCM281XX
7 bool "Broadcom BCM281xx pinctrl driver"
8 depends on OF && (ARCH_BCM_MOBILE || COMPILE_TEST)
9 select PINMUX
10 select PINCONF
11 select GENERIC_PINCONF
12 select REGMAP_MMIO
652da824 13 default ARCH_BCM_MOBILE
b17f2f9b
RJ
14 help
15 Say Y here to support Broadcom BCM281xx pinctrl driver, which is used
16 for the BCM281xx SoC family, including BCM11130, BCM11140, BCM11351,
17 BCM28145, and BCM28155 SoCs. This driver requires the pinctrl
18 framework. GPIO is provided by a separate GPIO driver.
19
20config PINCTRL_BCM2835
ee11f864 21 bool "Broadcom BCM2835 GPIO (with PINCONF) driver"
138f79db 22 depends on OF && (ARCH_BCM2835 || ARCH_BRCMSTB || COMPILE_TEST)
b17f2f9b
RJ
23 select PINMUX
24 select PINCONF
0de70495 25 select GENERIC_PINCONF
513034d8 26 select GPIOLIB
85ae9e51 27 select GPIOLIB_IRQCHIP
ee11f864
DB
28 default ARCH_BCM2835 || ARCH_BRCMSTB
29 help
30 Say Y here to enable the Broadcom BCM2835 GPIO driver.
cbd159ed 31
132f9501
ÁFR
32config PINCTRL_BCM63XX
33 bool
26ea7ac9
LW
34 select PINMUX
35 select PINCONF
132f9501 36 select GENERIC_PINCONF
26ea7ac9 37 select GPIOLIB
c82fac8e 38 select REGMAP
132f9501 39 select GPIO_REGMAP
132f9501 40
d28039fc
ÁFR
41config PINCTRL_BCM6318
42 bool "Broadcom BCM6318 GPIO driver"
43 depends on (BMIPS_GENERIC || COMPILE_TEST)
da35b19d 44 depends on OF
d28039fc
ÁFR
45 select PINCTRL_BCM63XX
46 default BMIPS_GENERIC
47 help
48 Say Y here to enable the Broadcom BCM6318 GPIO driver.
49
9bf34ac5
ÁFR
50config PINCTRL_BCM6328
51 bool "Broadcom BCM6328 GPIO driver"
52 depends on (BMIPS_GENERIC || COMPILE_TEST)
da35b19d 53 depends on OF
9bf34ac5
ÁFR
54 select PINCTRL_BCM63XX
55 default BMIPS_GENERIC
56 help
57 Say Y here to enable the Broadcom BCM6328 GPIO driver.
58
9494b169
ÁFR
59config PINCTRL_BCM6358
60 bool "Broadcom BCM6358 GPIO driver"
61 depends on (BMIPS_GENERIC || COMPILE_TEST)
da35b19d 62 depends on OF
9494b169
ÁFR
63 select PINCTRL_BCM63XX
64 default BMIPS_GENERIC
65 help
66 Say Y here to enable the Broadcom BCM6358 GPIO driver.
67
705791e2
ÁFR
68config PINCTRL_BCM6362
69 bool "Broadcom BCM6362 GPIO driver"
70 depends on (BMIPS_GENERIC || COMPILE_TEST)
da35b19d 71 depends on OF
705791e2
ÁFR
72 select PINCTRL_BCM63XX
73 default BMIPS_GENERIC
74 help
75 Say Y here to enable the Broadcom BCM6362 GPIO driver.
76
50554acc
ÁFR
77config PINCTRL_BCM6368
78 bool "Broadcom BCM6368 GPIO driver"
79 depends on (BMIPS_GENERIC || COMPILE_TEST)
da35b19d 80 depends on OF
50554acc
ÁFR
81 select PINCTRL_BCM63XX
82 default BMIPS_GENERIC
83 help
84 Say Y here to enable the Broadcom BCM6368 GPIO driver.
85
155cca1b
ÁFR
86config PINCTRL_BCM63268
87 bool "Broadcom BCM63268 GPIO driver"
88 depends on (BMIPS_GENERIC || COMPILE_TEST)
da35b19d 89 depends on OF
155cca1b
ÁFR
90 select PINCTRL_BCM63XX
91 default BMIPS_GENERIC
92 help
93 Say Y here to enable the Broadcom BCM63268 GPIO driver.
94
616043d5
PK
95config PINCTRL_IPROC_GPIO
96 bool "Broadcom iProc GPIO (with PINCONF) driver"
97 depends on OF_GPIO && (ARCH_BCM_IPROC || COMPILE_TEST)
b64333ce
RJ
98 select GPIOLIB_IRQCHIP
99 select PINCONF
100 select GENERIC_PINCONF
616043d5 101 default ARCH_BCM_IPROC
b64333ce 102 help
616043d5
PK
103 Say yes here to enable the Broadcom iProc GPIO driver.
104
105 The Broadcom iProc based SoCs- Cygnus, NS2, NSP and Stingray, use
106 same GPIO Controller IP hence this driver could be used for all.
b64333ce
RJ
107
108 The Broadcom Cygnus SoC has 3 GPIO controllers including the ASIU
109 GPIO controller (ASIU), the chipCommonG GPIO controller (CCM), and
110 the always-ON GPIO controller (CRMU/AON). All 3 GPIO controllers are
111 supported by this driver.
112
616043d5
PK
113 The Broadcom NSP has two GPIO controllers including the ChipcommonA
114 GPIO, the ChipcommonB GPIO. Later controller is supported by this
115 driver.
116
117 The Broadcom NS2 has two GPIO controller including the CRMU GPIO,
118 the ChipcommonG GPIO. Both controllers are supported by this driver.
119
120 The Broadcom Stingray GPIO controllers are supported by this driver.
121
122 All above SoCs GPIO controllers support basic PINCONF functions such
b64333ce
RJ
123 as bias pull up, pull down, and drive strength configurations, when
124 these pins are muxed to GPIO.
125
616043d5
PK
126 It provides the framework where pins from the individual GPIO can be
127 individually muxed to GPIO function, through interaction with the
128 SoCs IOMUX controller. This features could be used only on SoCs which
129 support individual pin muxing.
b64333ce 130
cbd159ed
RJ
131config PINCTRL_CYGNUS_MUX
132 bool "Broadcom Cygnus IOMUX driver"
133 depends on (ARCH_BCM_CYGNUS || COMPILE_TEST)
53056f59 134 depends on OF
cbd159ed
RJ
135 select PINMUX
136 select GENERIC_PINCONF
137 default ARCH_BCM_CYGNUS
138 help
139 Say yes here to enable the Broadcom Cygnus IOMUX driver.
140
141 The Broadcom Cygnus IOMUX driver supports group based IOMUX
142 configuration, with the exception that certain individual pins
03671057 143 can be overridden to GPIO function
8bfcbbbc 144
c12fb177
RM
145config PINCTRL_NS
146 bool "Broadcom Northstar pins driver"
147 depends on OF && (ARCH_BCM_5301X || COMPILE_TEST)
148 select PINMUX
149 select GENERIC_PINCONF
150 default ARCH_BCM_5301X
151 help
152 Say yes here to enable the Broadcom NS SoC pins driver.
153
154 The Broadcom Northstar pins driver supports muxing multi-purpose pins
155 that can be used for various functions (e.g. SPI, I2C, UART) as well
156 as GPIOs.
157
8bfcbbbc
YRDR
158config PINCTRL_NSP_GPIO
159 bool "Broadcom NSP GPIO (with PINCONF) driver"
160 depends on OF_GPIO && (ARCH_BCM_NSP || COMPILE_TEST)
161 select GPIOLIB_IRQCHIP
162 select PINCONF
163 select GENERIC_PINCONF
164 default ARCH_BCM_NSP
165 help
166 Say yes here to enable the Broadcom NSP GPIO driver.
167
168 The Broadcom Northstar Plus SoC ChipcommonA GPIO controller is
169 supported by this driver.
170
171 The ChipcommonA GPIO controller support basic PINCONF functions such
172 as bias pull up, pull down, and drive strength configurations, when
173 these pins are muxed to GPIO.
b5aa1006
YRDR
174
175config PINCTRL_NS2_MUX
176 bool "Broadcom Northstar2 pinmux driver"
177 depends on OF
178 depends on ARCH_BCM_IPROC || COMPILE_TEST
179 select PINMUX
180 select GENERIC_PINCONF
181 default ARM64 && ARCH_BCM_IPROC
182 help
183 Say yes here to enable the Broadcom NS2 MUX driver.
184
185 The Broadcom Northstar2 IOMUX driver supports group based IOMUX
186 configuration.
cc4fa83f
YRDR
187
188config PINCTRL_NSP_MUX
189 bool "Broadcom NSP IOMUX driver"
190 depends on (ARCH_BCM_NSP || COMPILE_TEST)
53056f59 191 depends on OF
cc4fa83f
YRDR
192 select PINMUX
193 select GENERIC_PINCONF
194 default ARCH_BCM_NSP
195 help
196 Say yes here to enable the Broadcom NSP SOC IOMUX driver.
197
198 The Broadcom Northstar Plus IOMUX driver supports pin based IOMUX
199 configuration, with certain individual pins can be overridden
200 to GPIO function.