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 # OF for pinconf_generic_dt_node_to_map_group() from GENERIC_PINCONF 8 depends on OF 9 select QCOM_SCM 10 select PINMUX 11 select PINCONF 12 select GENERIC_PINCONF 13 select GPIOLIB_IRQCHIP 14 select IRQ_DOMAIN_HIERARCHY 15 select IRQ_FASTEOI_HIERARCHY_HANDLERS 16 17config PINCTRL_APQ8064 18 tristate "Qualcomm APQ8064 pin controller driver" 19 depends on ARM || COMPILE_TEST 20 depends on PINCTRL_MSM 21 help 22 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 23 Qualcomm TLMM block found in the Qualcomm APQ8064 platform. 24 25config PINCTRL_APQ8084 26 tristate "Qualcomm APQ8084 pin controller driver" 27 depends on ARM || COMPILE_TEST 28 depends on PINCTRL_MSM 29 help 30 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 31 Qualcomm TLMM block found in the Qualcomm APQ8084 platform. 32 33config PINCTRL_IPQ4019 34 tristate "Qualcomm IPQ4019 pin controller driver" 35 depends on ARM || COMPILE_TEST 36 depends on PINCTRL_MSM 37 help 38 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 39 Qualcomm TLMM block found in the Qualcomm IPQ4019 platform. 40 41config PINCTRL_IPQ5018 42 tristate "Qualcomm Technologies, Inc. IPQ5018 pin controller driver" 43 depends on OF || COMPILE_TEST 44 depends on ARM64 || COMPILE_TEST 45 select PINCTRL_MSM 46 help 47 This is the pinctrl, pinmux, pinconf and gpiolib driver for 48 the Qualcomm Technologies Inc. TLMM block found on the 49 Qualcomm Technologies Inc. IPQ5018 platform. Select this for 50 IPQ5018. 51 52config PINCTRL_IPQ8064 53 tristate "Qualcomm IPQ8064 pin controller driver" 54 depends on ARM || COMPILE_TEST 55 depends on PINCTRL_MSM 56 help 57 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 58 Qualcomm TLMM block found in the Qualcomm IPQ8064 platform. 59 60config PINCTRL_IPQ5332 61 tristate "Qualcomm Technologies Inc IPQ5332 pin controller driver" 62 depends on ARM64 || COMPILE_TEST 63 depends on PINCTRL_MSM 64 help 65 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 66 Qualcomm Technologies Inc TLMM block found on the Qualcomm 67 Technologies Inc IPQ5332 platform. 68 69config PINCTRL_IPQ8074 70 tristate "Qualcomm Technologies, Inc. IPQ8074 pin controller driver" 71 depends on ARM64 || COMPILE_TEST 72 depends on PINCTRL_MSM 73 help 74 This is the pinctrl, pinmux, pinconf and gpiolib driver for 75 the Qualcomm Technologies Inc. TLMM block found on the 76 Qualcomm Technologies Inc. IPQ8074 platform. Select this for 77 IPQ8074. 78 79config PINCTRL_IPQ6018 80 tristate "Qualcomm Technologies, Inc. IPQ6018 pin controller driver" 81 depends on ARM64 || COMPILE_TEST 82 depends on PINCTRL_MSM 83 help 84 This is the pinctrl, pinmux, pinconf and gpiolib driver for 85 the Qualcomm Technologies Inc. TLMM block found on the 86 Qualcomm Technologies Inc. IPQ6018 platform. Select this for 87 IPQ6018. 88 89config PINCTRL_IPQ9574 90 tristate "Qualcomm Technologies, Inc. IPQ9574 pin controller driver" 91 depends on ARM64 || COMPILE_TEST 92 depends on PINCTRL_MSM 93 help 94 This is the pinctrl, pinmux, pinconf and gpiolib driver for 95 the Qualcomm Technologies Inc. TLMM block found on the 96 Qualcomm Technologies Inc. IPQ9574 platform. Select this for 97 IPQ9574. 98 99config PINCTRL_MSM8226 100 tristate "Qualcomm 8226 pin controller driver" 101 depends on ARM || COMPILE_TEST 102 depends on PINCTRL_MSM 103 help 104 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 105 Qualcomm Technologies Inc TLMM block found on the Qualcomm 106 Technologies Inc MSM8226 platform. 107 108config PINCTRL_MSM8660 109 tristate "Qualcomm 8660 pin controller driver" 110 depends on ARM || COMPILE_TEST 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 8660 platform. 115 116config PINCTRL_MSM8960 117 tristate "Qualcomm 8960 pin controller driver" 118 depends on ARM || COMPILE_TEST 119 depends on PINCTRL_MSM 120 help 121 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 122 Qualcomm TLMM block found in the Qualcomm 8960 platform. 123 124config PINCTRL_MDM9607 125 tristate "Qualcomm 9607 pin controller driver" 126 depends on PINCTRL_MSM 127 help 128 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 129 Qualcomm TLMM block found in the Qualcomm 9607 platform. 130 131config PINCTRL_MDM9615 132 tristate "Qualcomm 9615 pin controller driver" 133 depends on ARM || COMPILE_TEST 134 depends on PINCTRL_MSM 135 help 136 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 137 Qualcomm TLMM block found in the Qualcomm 9615 platform. 138 139config PINCTRL_MSM8X74 140 tristate "Qualcomm 8x74 pin controller driver" 141 depends on ARM || COMPILE_TEST 142 depends on PINCTRL_MSM 143 help 144 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 145 Qualcomm TLMM block found in the Qualcomm 8974 platform. 146 147config PINCTRL_MSM8909 148 tristate "Qualcomm 8909 pin controller driver" 149 depends on ARM || COMPILE_TEST 150 depends on PINCTRL_MSM 151 help 152 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 153 Qualcomm TLMM block found on the Qualcomm MSM8909 platform. 154 155config PINCTRL_MSM8916 156 tristate "Qualcomm 8916 pin controller driver" 157 depends on PINCTRL_MSM 158 help 159 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 160 Qualcomm TLMM block found on the Qualcomm 8916 platform. 161 162config PINCTRL_MSM8953 163 tristate "Qualcomm 8953 pin controller driver" 164 depends on ARM64 || COMPILE_TEST 165 depends on PINCTRL_MSM 166 help 167 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 168 Qualcomm TLMM block found on the Qualcomm MSM8953 platform. 169 The Qualcomm APQ8053, SDM450, SDM632 platforms are also 170 supported by this driver. 171 172config PINCTRL_MSM8976 173 tristate "Qualcomm 8976 pin controller driver" 174 depends on ARM64 || COMPILE_TEST 175 depends on PINCTRL_MSM 176 help 177 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 178 Qualcomm TLMM block found on the Qualcomm MSM8976 platform. 179 The Qualcomm MSM8956, APQ8056, APQ8076 platforms are also 180 supported by this driver. 181 182config PINCTRL_MSM8994 183 tristate "Qualcomm 8994 pin controller driver" 184 depends on ARM64 || COMPILE_TEST 185 depends on PINCTRL_MSM 186 help 187 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 188 Qualcomm TLMM block found in the Qualcomm 8994 platform. The 189 Qualcomm 8992 platform is also supported by this driver. 190 191config PINCTRL_MSM8996 192 tristate "Qualcomm MSM8996 pin controller driver" 193 depends on ARM64 || COMPILE_TEST 194 depends on PINCTRL_MSM 195 help 196 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 197 Qualcomm TLMM block found in the Qualcomm MSM8996 platform. 198 199config PINCTRL_MSM8998 200 tristate "Qualcomm MSM8998 pin controller driver" 201 depends on ARM64 || COMPILE_TEST 202 depends on PINCTRL_MSM 203 help 204 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 205 Qualcomm TLMM block found in the Qualcomm MSM8998 platform. 206 207config PINCTRL_QCM2290 208 tristate "Qualcomm QCM2290 pin controller driver" 209 depends on ARM64 || COMPILE_TEST 210 depends on PINCTRL_MSM 211 help 212 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 213 TLMM block found in the Qualcomm QCM2290 platform. 214 215config PINCTRL_QCS404 216 tristate "Qualcomm QCS404 pin controller driver" 217 depends on ARM64 || COMPILE_TEST 218 depends on PINCTRL_MSM 219 help 220 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 221 TLMM block found in the Qualcomm QCS404 platform. 222 223config PINCTRL_QDF2XXX 224 tristate "Qualcomm Technologies QDF2xxx pin controller driver" 225 depends on ACPI 226 depends on PINCTRL_MSM 227 help 228 This is the GPIO driver for the TLMM block found on the 229 Qualcomm Technologies QDF2xxx SOCs. 230 231config PINCTRL_QCOM_SPMI_PMIC 232 tristate "Qualcomm SPMI PMIC pin controller driver" 233 depends on OF && SPMI 234 select REGMAP_SPMI 235 select PINMUX 236 select PINCONF 237 select GENERIC_PINCONF 238 select GPIOLIB 239 select GPIOLIB_IRQCHIP 240 select IRQ_DOMAIN_HIERARCHY 241 help 242 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 243 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips, 244 which are using SPMI for communication with SoC. Example PMIC's 245 devices are pm8841, pm8941 and pma8084. 246 247config PINCTRL_QCOM_SSBI_PMIC 248 tristate "Qualcomm SSBI PMIC pin controller driver" 249 depends on OF 250 select PINMUX 251 select PINCONF 252 select GENERIC_PINCONF 253 select GPIOLIB 254 select GPIOLIB_IRQCHIP 255 select IRQ_DOMAIN_HIERARCHY 256 help 257 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 258 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips, 259 which are using SSBI for communication with SoC. Example PMIC's 260 devices are pm8058 and pm8921. 261 262config PINCTRL_QDU1000 263 tristate "Qualcomm Technologies Inc QDU1000/QRU1000 pin controller driver" 264 depends on ARM64 || COMPILE_TEST 265 depends on PINCTRL_MSM 266 help 267 This is the pinctrl, pinmux, pinconf, and gpiolib driver for the 268 Qualcomm Technologies Inc TLMM block found on the Qualcomm 269 Technologies Inc QDU1000 and QRU1000 platforms. 270 271config PINCTRL_SA8775P 272 tristate "Qualcomm Technologies Inc SA8775P pin controller driver" 273 depends on ARM64 || COMPILE_TEST 274 depends on PINCTRL_MSM 275 help 276 This is the pinctrl, pinmux and pinconf driver for the Qualcomm 277 TLMM block found on the Qualcomm SA8775P platforms. 278 279config PINCTRL_SC7180 280 tristate "Qualcomm Technologies Inc SC7180 pin controller driver" 281 depends on ARM64 || COMPILE_TEST 282 depends on PINCTRL_MSM 283 help 284 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 285 Qualcomm Technologies Inc TLMM block found on the Qualcomm 286 Technologies Inc SC7180 platform. 287 288config PINCTRL_SC7280 289 tristate "Qualcomm Technologies Inc SC7280 pin controller driver" 290 depends on ARM64 || COMPILE_TEST 291 depends on PINCTRL_MSM 292 help 293 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 294 Qualcomm Technologies Inc TLMM block found on the Qualcomm 295 Technologies Inc SC7280 platform. 296 297config PINCTRL_SC7280_LPASS_LPI 298 tristate "Qualcomm Technologies Inc SC7280 LPASS LPI pin controller driver" 299 depends on ARM64 || COMPILE_TEST 300 depends on PINCTRL_LPASS_LPI 301 help 302 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 303 Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI 304 (Low Power Island) found on the Qualcomm Technologies Inc SC7280 platform. 305 306config PINCTRL_SC8180X 307 tristate "Qualcomm Technologies Inc SC8180x pin controller driver" 308 depends on (OF || ACPI) 309 depends on ARM64 || COMPILE_TEST 310 depends on PINCTRL_MSM 311 help 312 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 313 Qualcomm Technologies Inc TLMM block found on the Qualcomm 314 Technologies Inc SC8180x platform. 315 316config PINCTRL_SC8280XP 317 tristate "Qualcomm Technologies Inc SC8280xp pin controller driver" 318 depends on ARM64 || COMPILE_TEST 319 depends on PINCTRL_MSM 320 help 321 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 322 Qualcomm Technologies Inc TLMM block found on the Qualcomm 323 Technologies Inc SC8280xp platform. 324 325config PINCTRL_SDM660 326 tristate "Qualcomm Technologies Inc SDM660 pin controller driver" 327 depends on ARM64 || COMPILE_TEST 328 depends on PINCTRL_MSM 329 help 330 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 331 Qualcomm Technologies Inc TLMM block found on the Qualcomm 332 Technologies Inc SDM660 platform. 333 334config PINCTRL_SDM670 335 tristate "Qualcomm Technologies Inc SDM670 pin controller driver" 336 depends on ARM64 || COMPILE_TEST 337 depends on PINCTRL_MSM 338 help 339 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 340 Qualcomm Technologies Inc TLMM block found on the Qualcomm 341 Technologies Inc SDM670 platform. 342 343config PINCTRL_SDM845 344 tristate "Qualcomm Technologies Inc SDM845 pin controller driver" 345 depends on (OF || ACPI) 346 depends on ARM64 || COMPILE_TEST 347 depends on PINCTRL_MSM 348 help 349 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 350 Qualcomm Technologies Inc TLMM block found on the Qualcomm 351 Technologies Inc SDM845 platform. 352 353config PINCTRL_SDX55 354 tristate "Qualcomm Technologies Inc SDX55 pin controller driver" 355 depends on ARM || COMPILE_TEST 356 depends on PINCTRL_MSM 357 help 358 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 359 Qualcomm Technologies Inc TLMM block found on the Qualcomm 360 Technologies Inc SDX55 platform. 361 362config PINCTRL_SDX65 363 tristate "Qualcomm Technologies Inc SDX65 pin controller driver" 364 depends on ARM || COMPILE_TEST 365 depends on PINCTRL_MSM 366 help 367 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 368 Qualcomm Technologies Inc TLMM block found on the Qualcomm 369 Technologies Inc SDX65 platform. 370 371config PINCTRL_SDX75 372 tristate "Qualcomm Technologies Inc SDX75 pin controller driver" 373 depends on ARM64 || COMPILE_TEST 374 depends on PINCTRL_MSM 375 help 376 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 377 Qualcomm Technologies Inc TLMM block found on the Qualcomm 378 Technologies Inc SDX75 platform. 379 380config PINCTRL_SM6115 381 tristate "Qualcomm Technologies Inc SM6115,SM4250 pin controller driver" 382 depends on ARM64 || COMPILE_TEST 383 depends on PINCTRL_MSM 384 help 385 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 386 Qualcomm Technologies Inc TLMM block found on the Qualcomm 387 Technologies Inc SM6115 and SM4250 platforms. 388 389config PINCTRL_SM6125 390 tristate "Qualcomm Technologies Inc SM6125 pin controller driver" 391 depends on ARM64 || COMPILE_TEST 392 depends on PINCTRL_MSM 393 help 394 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 395 Qualcomm Technologies Inc TLMM block found on the Qualcomm 396 Technologies Inc SM6125 platform. 397 398config PINCTRL_SM6350 399 tristate "Qualcomm Technologies Inc SM6350 pin controller driver" 400 depends on ARM64 || COMPILE_TEST 401 depends on PINCTRL_MSM 402 help 403 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 404 Qualcomm Technologies Inc TLMM block found on the Qualcomm 405 Technologies Inc SM6350 platform. 406 407config PINCTRL_SM6375 408 tristate "Qualcomm Technologies Inc SM6375 pin controller driver" 409 depends on ARM64 || COMPILE_TEST 410 depends on PINCTRL_MSM 411 help 412 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 413 Qualcomm Technologies Inc TLMM block found on the Qualcomm 414 Technologies Inc SM6375 platform. 415 416config PINCTRL_SM7150 417 tristate "Qualcomm Technologies Inc SM7150 pin controller driver" 418 depends on ARM64 || COMPILE_TEST 419 depends on PINCTRL_MSM 420 help 421 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 422 Qualcomm Technologies Inc TLMM block found on the Qualcomm 423 Technologies Inc SM7150 platform. 424 425config PINCTRL_SM8150 426 tristate "Qualcomm Technologies Inc SM8150 pin controller driver" 427 depends on ARM64 || COMPILE_TEST 428 depends on PINCTRL_MSM 429 help 430 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 431 Qualcomm Technologies Inc TLMM block found on the Qualcomm 432 Technologies Inc SM8150 platform. 433 434config PINCTRL_SM8250 435 tristate "Qualcomm Technologies Inc SM8250 pin controller driver" 436 depends on ARM64 || COMPILE_TEST 437 depends on PINCTRL_MSM 438 help 439 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 440 Qualcomm Technologies Inc TLMM block found on the Qualcomm 441 Technologies Inc SM8250 platform. 442 443config PINCTRL_SM8250_LPASS_LPI 444 tristate "Qualcomm Technologies Inc SM8250 LPASS LPI pin controller driver" 445 depends on ARM64 || COMPILE_TEST 446 depends on PINCTRL_LPASS_LPI 447 help 448 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 449 Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI 450 (Low Power Island) found on the Qualcomm Technologies Inc SM8250 platform. 451 452config PINCTRL_SM8350 453 tristate "Qualcomm Technologies Inc SM8350 pin controller driver" 454 depends on ARM64 || COMPILE_TEST 455 depends on PINCTRL_MSM 456 help 457 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 458 Qualcomm Technologies Inc TLMM block found on the Qualcomm 459 Technologies Inc SM8350 platform. 460 461config PINCTRL_SM8450 462 tristate "Qualcomm Technologies Inc SM8450 pin controller driver" 463 depends on ARM64 || COMPILE_TEST 464 depends on PINCTRL_MSM 465 help 466 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 467 Qualcomm Technologies Inc TLMM block found on the Qualcomm 468 Technologies Inc SM8450 platform. 469 470config PINCTRL_SM8450_LPASS_LPI 471 tristate "Qualcomm Technologies Inc SM8450 LPASS LPI pin controller driver" 472 depends on ARM64 || COMPILE_TEST 473 depends on PINCTRL_LPASS_LPI 474 help 475 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 476 Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI 477 (Low Power Island) found on the Qualcomm Technologies Inc SM8450 platform. 478 479config PINCTRL_SC8280XP_LPASS_LPI 480 tristate "Qualcomm Technologies Inc SC8280XP LPASS LPI pin controller driver" 481 depends on ARM64 || COMPILE_TEST 482 depends on PINCTRL_LPASS_LPI 483 help 484 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 485 Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI 486 (Low Power Island) found on the Qualcomm Technologies Inc SC8280XP platform. 487 488config PINCTRL_SM8550 489 tristate "Qualcomm Technologies Inc SM8550 pin controller driver" 490 depends on ARM64 || COMPILE_TEST 491 depends on PINCTRL_MSM 492 help 493 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 494 Qualcomm Technologies Inc TLMM block found on the Qualcomm 495 Technologies Inc SM8550 platform. 496 497config PINCTRL_SM8550_LPASS_LPI 498 tristate "Qualcomm Technologies Inc SM8550 LPASS LPI pin controller driver" 499 depends on ARM64 || COMPILE_TEST 500 depends on PINCTRL_LPASS_LPI 501 help 502 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 503 Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI 504 (Low Power Island) found on the Qualcomm Technologies Inc SM8550 505 platform. 506 507config PINCTRL_LPASS_LPI 508 tristate "Qualcomm Technologies Inc LPASS LPI pin controller driver" 509 select PINMUX 510 select PINCONF 511 select GENERIC_PINCONF 512 select GENERIC_PINCTRL_GROUPS 513 depends on GPIOLIB 514 help 515 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 516 Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI 517 (Low Power Island) found on the Qualcomm Technologies Inc SoCs. 518 519endif 520