1# SPDX-License-Identifier: GPL-2.0-only 2if (ARCH_QCOM || COMPILE_TEST) 3 4config PINCTRL_MSM 5 tristate "Qualcomm core pin controller driver" 6 depends on GPIOLIB 7 select QCOM_SCM 8 select PINMUX 9 select PINCONF 10 select GENERIC_PINCONF 11 select GPIOLIB_IRQCHIP 12 select IRQ_DOMAIN_HIERARCHY 13 select IRQ_FASTEOI_HIERARCHY_HANDLERS 14 15config PINCTRL_APQ8064 16 tristate "Qualcomm APQ8064 pin controller driver" 17 depends on OF 18 depends on PINCTRL_MSM 19 help 20 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 21 Qualcomm TLMM block found in the Qualcomm APQ8064 platform. 22 23config PINCTRL_APQ8084 24 tristate "Qualcomm APQ8084 pin controller driver" 25 depends on OF 26 depends on PINCTRL_MSM 27 help 28 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 29 Qualcomm TLMM block found in the Qualcomm APQ8084 platform. 30 31config PINCTRL_IPQ4019 32 tristate "Qualcomm IPQ4019 pin controller driver" 33 depends on OF 34 depends on PINCTRL_MSM 35 help 36 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 37 Qualcomm TLMM block found in the Qualcomm IPQ4019 platform. 38 39config PINCTRL_IPQ8064 40 tristate "Qualcomm IPQ8064 pin controller driver" 41 depends on OF 42 depends on PINCTRL_MSM 43 help 44 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 45 Qualcomm TLMM block found in the Qualcomm IPQ8064 platform. 46 47config PINCTRL_IPQ8074 48 tristate "Qualcomm Technologies, Inc. IPQ8074 pin controller driver" 49 depends on OF 50 depends on PINCTRL_MSM 51 help 52 This is the pinctrl, pinmux, pinconf and gpiolib driver for 53 the Qualcomm Technologies Inc. TLMM block found on the 54 Qualcomm Technologies Inc. IPQ8074 platform. Select this for 55 IPQ8074. 56 57config PINCTRL_IPQ6018 58 tristate "Qualcomm Technologies, Inc. IPQ6018 pin controller driver" 59 depends on OF 60 depends on PINCTRL_MSM 61 help 62 This is the pinctrl, pinmux, pinconf and gpiolib driver for 63 the Qualcomm Technologies Inc. TLMM block found on the 64 Qualcomm Technologies Inc. IPQ6018 platform. Select this for 65 IPQ6018. 66 67config PINCTRL_MSM8226 68 tristate "Qualcomm 8226 pin controller driver" 69 depends on OF 70 depends on PINCTRL_MSM 71 help 72 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 73 Qualcomm Technologies Inc TLMM block found on the Qualcomm 74 Technologies Inc MSM8226 platform. 75 76config PINCTRL_MSM8660 77 tristate "Qualcomm 8660 pin controller driver" 78 depends on OF 79 depends on PINCTRL_MSM 80 help 81 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 82 Qualcomm TLMM block found in the Qualcomm 8660 platform. 83 84config PINCTRL_MSM8960 85 tristate "Qualcomm 8960 pin controller driver" 86 depends on OF 87 depends on PINCTRL_MSM 88 help 89 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 90 Qualcomm TLMM block found in the Qualcomm 8960 platform. 91 92config PINCTRL_MDM9607 93 tristate "Qualcomm 9607 pin controller driver" 94 depends on GPIOLIB && OF 95 depends on PINCTRL_MSM 96 help 97 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 98 Qualcomm TLMM block found in the Qualcomm 9607 platform. 99 100config PINCTRL_MDM9615 101 tristate "Qualcomm 9615 pin controller driver" 102 depends on OF 103 depends on PINCTRL_MSM 104 help 105 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 106 Qualcomm TLMM block found in the Qualcomm 9615 platform. 107 108config PINCTRL_MSM8X74 109 tristate "Qualcomm 8x74 pin controller driver" 110 depends on OF 111 depends on PINCTRL_MSM 112 help 113 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 114 Qualcomm TLMM block found in the Qualcomm 8974 platform. 115 116config PINCTRL_MSM8916 117 tristate "Qualcomm 8916 pin controller driver" 118 depends on OF 119 depends on PINCTRL_MSM 120 help 121 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 122 Qualcomm TLMM block found on the Qualcomm 8916 platform. 123 124config PINCTRL_MSM8953 125 tristate "Qualcomm 8953 pin controller driver" 126 depends on OF 127 depends on PINCTRL_MSM 128 help 129 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 130 Qualcomm TLMM block found on the Qualcomm MSM8953 platform. 131 The Qualcomm APQ8053, SDM450, SDM632 platforms are also 132 supported by this driver. 133 134config PINCTRL_MSM8976 135 tristate "Qualcomm 8976 pin controller driver" 136 depends on OF 137 depends on PINCTRL_MSM 138 help 139 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 140 Qualcomm TLMM block found on the Qualcomm MSM8976 platform. 141 The Qualcomm MSM8956, APQ8056, APQ8076 platforms are also 142 supported by this driver. 143 144config PINCTRL_MSM8994 145 tristate "Qualcomm 8994 pin controller driver" 146 depends on OF 147 depends on PINCTRL_MSM 148 help 149 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 150 Qualcomm TLMM block found in the Qualcomm 8994 platform. The 151 Qualcomm 8992 platform is also supported by this driver. 152 153config PINCTRL_MSM8996 154 tristate "Qualcomm MSM8996 pin controller driver" 155 depends on OF 156 depends on PINCTRL_MSM 157 help 158 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 159 Qualcomm TLMM block found in the Qualcomm MSM8996 platform. 160 161config PINCTRL_MSM8998 162 tristate "Qualcomm MSM8998 pin controller driver" 163 depends on OF 164 depends on PINCTRL_MSM 165 help 166 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 167 Qualcomm TLMM block found in the Qualcomm MSM8998 platform. 168 169config PINCTRL_QCM2290 170 tristate "Qualcomm QCM2290 pin controller driver" 171 depends on OF 172 depends on PINCTRL_MSM 173 help 174 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 175 TLMM block found in the Qualcomm QCM2290 platform. 176 177config PINCTRL_QCS404 178 tristate "Qualcomm QCS404 pin controller driver" 179 depends on OF 180 depends on PINCTRL_MSM 181 help 182 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 183 TLMM block found in the Qualcomm QCS404 platform. 184 185config PINCTRL_QDF2XXX 186 tristate "Qualcomm Technologies QDF2xxx pin controller driver" 187 depends on ACPI 188 depends on PINCTRL_MSM 189 help 190 This is the GPIO driver for the TLMM block found on the 191 Qualcomm Technologies QDF2xxx SOCs. 192 193config PINCTRL_QCOM_SPMI_PMIC 194 tristate "Qualcomm SPMI PMIC pin controller driver" 195 depends on OF && SPMI 196 select REGMAP_SPMI 197 select PINMUX 198 select PINCONF 199 select GENERIC_PINCONF 200 select GPIOLIB 201 select GPIOLIB_IRQCHIP 202 select IRQ_DOMAIN_HIERARCHY 203 help 204 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 205 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips, 206 which are using SPMI for communication with SoC. Example PMIC's 207 devices are pm8841, pm8941 and pma8084. 208 209config PINCTRL_QCOM_SSBI_PMIC 210 tristate "Qualcomm SSBI PMIC pin controller driver" 211 depends on OF 212 select PINMUX 213 select PINCONF 214 select GENERIC_PINCONF 215 select GPIOLIB 216 select GPIOLIB_IRQCHIP 217 select IRQ_DOMAIN_HIERARCHY 218 help 219 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 220 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips, 221 which are using SSBI for communication with SoC. Example PMIC's 222 devices are pm8058 and pm8921. 223 224config PINCTRL_SC7180 225 tristate "Qualcomm Technologies Inc SC7180 pin controller driver" 226 depends on OF 227 depends on PINCTRL_MSM 228 help 229 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 230 Qualcomm Technologies Inc TLMM block found on the Qualcomm 231 Technologies Inc SC7180 platform. 232 233config PINCTRL_SC7280 234 tristate "Qualcomm Technologies Inc SC7280 pin controller driver" 235 depends on OF 236 depends on PINCTRL_MSM 237 help 238 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 239 Qualcomm Technologies Inc TLMM block found on the Qualcomm 240 Technologies Inc SC7280 platform. 241 242config PINCTRL_SC7280_LPASS_LPI 243 tristate "Qualcomm Technologies Inc SC7280 LPASS LPI pin controller driver" 244 depends on GPIOLIB 245 depends on PINCTRL_LPASS_LPI 246 help 247 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 248 Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI 249 (Low Power Island) found on the Qualcomm Technologies Inc SC7280 platform. 250 251config PINCTRL_SC8180X 252 tristate "Qualcomm Technologies Inc SC8180x pin controller driver" 253 depends on (OF || ACPI) 254 depends on PINCTRL_MSM 255 help 256 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 257 Qualcomm Technologies Inc TLMM block found on the Qualcomm 258 Technologies Inc SC8180x platform. 259 260config PINCTRL_SC8280XP 261 tristate "Qualcomm Technologies Inc SC8280xp pin controller driver" 262 depends on OF 263 depends on PINCTRL_MSM 264 help 265 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 266 Qualcomm Technologies Inc TLMM block found on the Qualcomm 267 Technologies Inc SC8280xp platform. 268 269config PINCTRL_SDM660 270 tristate "Qualcomm Technologies Inc SDM660 pin controller driver" 271 depends on OF 272 depends on PINCTRL_MSM 273 help 274 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 275 Qualcomm Technologies Inc TLMM block found on the Qualcomm 276 Technologies Inc SDM660 platform. 277 278config PINCTRL_SDM845 279 tristate "Qualcomm Technologies Inc SDM845 pin controller driver" 280 depends on (OF || ACPI) 281 depends on PINCTRL_MSM 282 help 283 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 284 Qualcomm Technologies Inc TLMM block found on the Qualcomm 285 Technologies Inc SDM845 platform. 286 287config PINCTRL_SDX55 288 tristate "Qualcomm Technologies Inc SDX55 pin controller driver" 289 depends on OF 290 depends on PINCTRL_MSM 291 help 292 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 293 Qualcomm Technologies Inc TLMM block found on the Qualcomm 294 Technologies Inc SDX55 platform. 295 296config PINCTRL_SM6115 297 tristate "Qualcomm Technologies Inc SM6115,SM4250 pin controller driver" 298 depends on GPIOLIB && OF 299 depends on PINCTRL_MSM 300 help 301 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 302 Qualcomm Technologies Inc TLMM block found on the Qualcomm 303 Technologies Inc SM6115 and SM4250 platforms. 304 305config PINCTRL_SM6125 306 tristate "Qualcomm Technologies Inc SM6125 pin controller driver" 307 depends on OF 308 depends on PINCTRL_MSM 309 help 310 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 311 Qualcomm Technologies Inc TLMM block found on the Qualcomm 312 Technologies Inc SM6125 platform. 313 314config PINCTRL_SM6350 315 tristate "Qualcomm Technologies Inc SM6350 pin controller driver" 316 depends on GPIOLIB && OF 317 depends on PINCTRL_MSM 318 help 319 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 320 Qualcomm Technologies Inc TLMM block found on the Qualcomm 321 Technologies Inc SM6350 platform. 322 323config PINCTRL_SDX65 324 tristate "Qualcomm Technologies Inc SDX65 pin controller driver" 325 depends on GPIOLIB && OF 326 depends on PINCTRL_MSM 327 help 328 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 329 Qualcomm Technologies Inc TLMM block found on the Qualcomm 330 Technologies Inc SDX65 platform. 331 332config PINCTRL_SM8150 333 tristate "Qualcomm Technologies Inc SM8150 pin controller driver" 334 depends on OF 335 depends on PINCTRL_MSM 336 help 337 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 338 Qualcomm Technologies Inc TLMM block found on the Qualcomm 339 Technologies Inc SM8150 platform. 340 341config PINCTRL_SM8250 342 tristate "Qualcomm Technologies Inc SM8250 pin controller driver" 343 depends on OF 344 depends on PINCTRL_MSM 345 help 346 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 347 Qualcomm Technologies Inc TLMM block found on the Qualcomm 348 Technologies Inc SM8250 platform. 349 350config PINCTRL_SM8250_LPASS_LPI 351 tristate "Qualcomm Technologies Inc SM8250 LPASS LPI pin controller driver" 352 depends on GPIOLIB 353 depends on PINCTRL_LPASS_LPI 354 help 355 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 356 Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI 357 (Low Power Island) found on the Qualcomm Technologies Inc SM8250 platform. 358 359config PINCTRL_SM8350 360 tristate "Qualcomm Technologies Inc SM8350 pin controller driver" 361 depends on PINCTRL_MSM 362 help 363 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 364 Qualcomm Technologies Inc TLMM block found on the Qualcomm 365 Technologies Inc SM8350 platform. 366 367config PINCTRL_SM8450 368 tristate "Qualcomm Technologies Inc SM8450 pin controller driver" 369 depends on GPIOLIB && OF 370 select PINCTRL_MSM 371 help 372 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 373 Qualcomm Technologies Inc TLMM block found on the Qualcomm 374 Technologies Inc SM8450 platform. 375 376config PINCTRL_LPASS_LPI 377 tristate "Qualcomm Technologies Inc LPASS LPI pin controller driver" 378 select PINMUX 379 select PINCONF 380 select GENERIC_PINCONF 381 select GENERIC_PINCTRL_GROUPS 382 depends on GPIOLIB 383 help 384 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 385 Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI 386 (Low Power Island) found on the Qualcomm Technologies Inc SoCs. 387 388endif 389