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 && (QCOM_SCM || !QCOM_SCM) #if QCOM_SCM=m this can't be =y 7 select PINMUX 8 select PINCONF 9 select GENERIC_PINCONF 10 select GPIOLIB_IRQCHIP 11 select IRQ_DOMAIN_HIERARCHY 12 select IRQ_FASTEOI_HIERARCHY_HANDLERS 13 14config PINCTRL_APQ8064 15 tristate "Qualcomm APQ8064 pin controller driver" 16 depends on GPIOLIB && OF 17 depends on PINCTRL_MSM 18 help 19 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 20 Qualcomm TLMM block found in the Qualcomm APQ8064 platform. 21 22config PINCTRL_APQ8084 23 tristate "Qualcomm APQ8084 pin controller driver" 24 depends on GPIOLIB && OF 25 depends on PINCTRL_MSM 26 help 27 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 28 Qualcomm TLMM block found in the Qualcomm APQ8084 platform. 29 30config PINCTRL_IPQ4019 31 tristate "Qualcomm IPQ4019 pin controller driver" 32 depends on GPIOLIB && OF 33 depends on PINCTRL_MSM 34 help 35 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 36 Qualcomm TLMM block found in the Qualcomm IPQ4019 platform. 37 38config PINCTRL_IPQ8064 39 tristate "Qualcomm IPQ8064 pin controller driver" 40 depends on GPIOLIB && OF 41 depends on PINCTRL_MSM 42 help 43 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 44 Qualcomm TLMM block found in the Qualcomm IPQ8064 platform. 45 46config PINCTRL_IPQ8074 47 tristate "Qualcomm Technologies, Inc. IPQ8074 pin controller driver" 48 depends on GPIOLIB && OF 49 depends on PINCTRL_MSM 50 help 51 This is the pinctrl, pinmux, pinconf and gpiolib driver for 52 the Qualcomm Technologies Inc. TLMM block found on the 53 Qualcomm Technologies Inc. IPQ8074 platform. Select this for 54 IPQ8074. 55 56config PINCTRL_IPQ6018 57 tristate "Qualcomm Technologies, Inc. IPQ6018 pin controller driver" 58 depends on GPIOLIB && OF 59 depends on PINCTRL_MSM 60 help 61 This is the pinctrl, pinmux, pinconf and gpiolib driver for 62 the Qualcomm Technologies Inc. TLMM block found on the 63 Qualcomm Technologies Inc. IPQ6018 platform. Select this for 64 IPQ6018. 65 66config PINCTRL_MSM8226 67 tristate "Qualcomm 8226 pin controller driver" 68 depends on GPIOLIB && OF 69 depends on PINCTRL_MSM 70 help 71 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 72 Qualcomm Technologies Inc TLMM block found on the Qualcomm 73 Technologies Inc MSM8226 platform. 74 75config PINCTRL_MSM8660 76 tristate "Qualcomm 8660 pin controller driver" 77 depends on GPIOLIB && OF 78 depends on PINCTRL_MSM 79 help 80 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 81 Qualcomm TLMM block found in the Qualcomm 8660 platform. 82 83config PINCTRL_MSM8960 84 tristate "Qualcomm 8960 pin controller driver" 85 depends on GPIOLIB && OF 86 depends on PINCTRL_MSM 87 help 88 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 89 Qualcomm TLMM block found in the Qualcomm 8960 platform. 90 91config PINCTRL_MDM9615 92 tristate "Qualcomm 9615 pin controller driver" 93 depends on GPIOLIB && OF 94 depends on PINCTRL_MSM 95 help 96 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 97 Qualcomm TLMM block found in the Qualcomm 9615 platform. 98 99config PINCTRL_MSM8X74 100 tristate "Qualcomm 8x74 pin controller driver" 101 depends on GPIOLIB && OF 102 depends on PINCTRL_MSM 103 help 104 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 105 Qualcomm TLMM block found in the Qualcomm 8974 platform. 106 107config PINCTRL_MSM8916 108 tristate "Qualcomm 8916 pin controller driver" 109 depends on GPIOLIB && OF 110 depends on PINCTRL_MSM 111 help 112 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 113 Qualcomm TLMM block found on the Qualcomm 8916 platform. 114 115config PINCTRL_MSM8953 116 tristate "Qualcomm 8953 pin controller driver" 117 depends on GPIOLIB && OF 118 depends on PINCTRL_MSM 119 help 120 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 121 Qualcomm TLMM block found on the Qualcomm MSM8953 platform. 122 The Qualcomm APQ8053, SDM450, SDM632 platforms are also 123 supported by this driver. 124 125config PINCTRL_MSM8976 126 tristate "Qualcomm 8976 pin controller driver" 127 depends on GPIOLIB && OF 128 depends on PINCTRL_MSM 129 help 130 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 131 Qualcomm TLMM block found on the Qualcomm MSM8976 platform. 132 The Qualcomm MSM8956, APQ8056, APQ8076 platforms are also 133 supported by this driver. 134 135config PINCTRL_MSM8994 136 tristate "Qualcomm 8994 pin controller driver" 137 depends on GPIOLIB && OF 138 depends on PINCTRL_MSM 139 help 140 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 141 Qualcomm TLMM block found in the Qualcomm 8994 platform. The 142 Qualcomm 8992 platform is also supported by this driver. 143 144config PINCTRL_MSM8996 145 tristate "Qualcomm MSM8996 pin controller driver" 146 depends on GPIOLIB && 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 MSM8996 platform. 151 152config PINCTRL_MSM8998 153 tristate "Qualcomm MSM8998 pin controller driver" 154 depends on GPIOLIB && OF 155 depends on PINCTRL_MSM 156 help 157 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 158 Qualcomm TLMM block found in the Qualcomm MSM8998 platform. 159 160config PINCTRL_QCS404 161 tristate "Qualcomm QCS404 pin controller driver" 162 depends on GPIOLIB && OF 163 depends on PINCTRL_MSM 164 help 165 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 166 TLMM block found in the Qualcomm QCS404 platform. 167 168config PINCTRL_QDF2XXX 169 tristate "Qualcomm Technologies QDF2xxx pin controller driver" 170 depends on GPIOLIB && ACPI 171 depends on PINCTRL_MSM 172 help 173 This is the GPIO driver for the TLMM block found on the 174 Qualcomm Technologies QDF2xxx SOCs. 175 176config PINCTRL_QCOM_SPMI_PMIC 177 tristate "Qualcomm SPMI PMIC pin controller driver" 178 depends on GPIOLIB && OF && SPMI 179 select REGMAP_SPMI 180 select PINMUX 181 select PINCONF 182 select GENERIC_PINCONF 183 select GPIOLIB_IRQCHIP 184 select IRQ_DOMAIN_HIERARCHY 185 help 186 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 187 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips, 188 which are using SPMI for communication with SoC. Example PMIC's 189 devices are pm8841, pm8941 and pma8084. 190 191config PINCTRL_QCOM_SSBI_PMIC 192 tristate "Qualcomm SSBI PMIC pin controller driver" 193 depends on GPIOLIB && OF 194 select PINMUX 195 select PINCONF 196 select GENERIC_PINCONF 197 select GPIOLIB_IRQCHIP 198 select IRQ_DOMAIN_HIERARCHY 199 help 200 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 201 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips, 202 which are using SSBI for communication with SoC. Example PMIC's 203 devices are pm8058 and pm8921. 204 205config PINCTRL_SC7180 206 tristate "Qualcomm Technologies Inc SC7180 pin controller driver" 207 depends on GPIOLIB && OF 208 depends on PINCTRL_MSM 209 help 210 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 211 Qualcomm Technologies Inc TLMM block found on the Qualcomm 212 Technologies Inc SC7180 platform. 213 214config PINCTRL_SC7280 215 tristate "Qualcomm Technologies Inc SC7280 pin controller driver" 216 depends on GPIOLIB && OF 217 depends on PINCTRL_MSM 218 help 219 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 220 Qualcomm Technologies Inc TLMM block found on the Qualcomm 221 Technologies Inc SC7280 platform. 222 223config PINCTRL_SC8180X 224 tristate "Qualcomm Technologies Inc SC8180x pin controller driver" 225 depends on GPIOLIB && (OF || ACPI) 226 depends on PINCTRL_MSM 227 help 228 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 229 Qualcomm Technologies Inc TLMM block found on the Qualcomm 230 Technologies Inc SC8180x platform. 231 232config PINCTRL_SDM660 233 tristate "Qualcomm Technologies Inc SDM660 pin controller driver" 234 depends on GPIOLIB && OF 235 depends on PINCTRL_MSM 236 help 237 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 238 Qualcomm Technologies Inc TLMM block found on the Qualcomm 239 Technologies Inc SDM660 platform. 240 241config PINCTRL_SDM845 242 tristate "Qualcomm Technologies Inc SDM845 pin controller driver" 243 depends on GPIOLIB && (OF || ACPI) 244 depends on PINCTRL_MSM 245 help 246 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 247 Qualcomm Technologies Inc TLMM block found on the Qualcomm 248 Technologies Inc SDM845 platform. 249 250config PINCTRL_SDX55 251 tristate "Qualcomm Technologies Inc SDX55 pin controller driver" 252 depends on GPIOLIB && OF 253 depends on PINCTRL_MSM 254 help 255 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 256 Qualcomm Technologies Inc TLMM block found on the Qualcomm 257 Technologies Inc SDX55 platform. 258 259config PINCTRL_SM6125 260 tristate "Qualcomm Technologies Inc SM6125 pin controller driver" 261 depends on GPIOLIB && OF 262 depends on PINCTRL_MSM 263 help 264 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 265 Qualcomm Technologies Inc TLMM block found on the Qualcomm 266 Technologies Inc SM6125 platform. 267 268config PINCTRL_SM8150 269 tristate "Qualcomm Technologies Inc SM8150 pin controller driver" 270 depends on GPIOLIB && OF 271 depends on PINCTRL_MSM 272 help 273 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 274 Qualcomm Technologies Inc TLMM block found on the Qualcomm 275 Technologies Inc SM8150 platform. 276 277config PINCTRL_SM8250 278 tristate "Qualcomm Technologies Inc SM8250 pin controller driver" 279 depends on GPIOLIB && OF 280 depends on PINCTRL_MSM 281 help 282 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 283 Qualcomm Technologies Inc TLMM block found on the Qualcomm 284 Technologies Inc SM8250 platform. 285 286config PINCTRL_SM8350 287 tristate "Qualcomm Technologies Inc SM8350 pin controller driver" 288 depends on GPIOLIB && OF 289 select PINCTRL_MSM 290 help 291 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 292 Qualcomm Technologies Inc TLMM block found on the Qualcomm 293 Technologies Inc SM8350 platform. 294 295config PINCTRL_LPASS_LPI 296 tristate "Qualcomm Technologies Inc LPASS LPI pin controller driver" 297 select PINMUX 298 select PINCONF 299 select GENERIC_PINCONF 300 depends on GPIOLIB 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 SoCs. 305 306endif 307