1# SPDX-License-Identifier: GPL-2.0-only 2if (ARCH_QCOM || COMPILE_TEST) 3 4config PINCTRL_MSM 5 tristate 6 select PINMUX 7 select PINCONF 8 select GENERIC_PINCONF 9 select GPIOLIB_IRQCHIP 10 select IRQ_DOMAIN_HIERARCHY 11 select IRQ_FASTEOI_HIERARCHY_HANDLERS 12 13config PINCTRL_APQ8064 14 tristate "Qualcomm APQ8064 pin controller driver" 15 depends on GPIOLIB && OF 16 depends on QCOM_SCM || !QCOM_SCM 17 select 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 QCOM_SCM || !QCOM_SCM 26 select 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 GPIOLIB && OF 34 depends on QCOM_SCM || !QCOM_SCM 35 select PINCTRL_MSM 36 help 37 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 38 Qualcomm TLMM block found in the Qualcomm IPQ4019 platform. 39 40config PINCTRL_IPQ8064 41 tristate "Qualcomm IPQ8064 pin controller driver" 42 depends on GPIOLIB && OF 43 depends on QCOM_SCM || !QCOM_SCM 44 select PINCTRL_MSM 45 help 46 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 47 Qualcomm TLMM block found in the Qualcomm IPQ8064 platform. 48 49config PINCTRL_IPQ8074 50 tristate "Qualcomm Technologies, Inc. IPQ8074 pin controller driver" 51 depends on GPIOLIB && OF 52 depends on QCOM_SCM || !QCOM_SCM 53 select PINCTRL_MSM 54 help 55 This is the pinctrl, pinmux, pinconf and gpiolib driver for 56 the Qualcomm Technologies Inc. TLMM block found on the 57 Qualcomm Technologies Inc. IPQ8074 platform. Select this for 58 IPQ8074. 59 60config PINCTRL_IPQ6018 61 tristate "Qualcomm Technologies, Inc. IPQ6018 pin controller driver" 62 depends on GPIOLIB && OF 63 depends on QCOM_SCM || !QCOM_SCM 64 select PINCTRL_MSM 65 help 66 This is the pinctrl, pinmux, pinconf and gpiolib driver for 67 the Qualcomm Technologies Inc. TLMM block found on the 68 Qualcomm Technologies Inc. IPQ6018 platform. Select this for 69 IPQ6018. 70 71config PINCTRL_MSM8226 72 tristate "Qualcomm 8226 pin controller driver" 73 depends on GPIOLIB && OF 74 select PINCTRL_MSM 75 help 76 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 77 Qualcomm Technologies Inc TLMM block found on the Qualcomm 78 Technologies Inc MSM8226 platform. 79 80config PINCTRL_MSM8660 81 tristate "Qualcomm 8660 pin controller driver" 82 depends on GPIOLIB && OF 83 depends on QCOM_SCM || !QCOM_SCM 84 select PINCTRL_MSM 85 help 86 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 87 Qualcomm TLMM block found in the Qualcomm 8660 platform. 88 89config PINCTRL_MSM8960 90 tristate "Qualcomm 8960 pin controller driver" 91 depends on GPIOLIB && OF 92 depends on QCOM_SCM || !QCOM_SCM 93 select PINCTRL_MSM 94 help 95 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 96 Qualcomm TLMM block found in the Qualcomm 8960 platform. 97 98config PINCTRL_MDM9615 99 tristate "Qualcomm 9615 pin controller driver" 100 depends on GPIOLIB && OF 101 depends on QCOM_SCM || !QCOM_SCM 102 select PINCTRL_MSM 103 help 104 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 105 Qualcomm TLMM block found in the Qualcomm 9615 platform. 106 107config PINCTRL_MSM8X74 108 tristate "Qualcomm 8x74 pin controller driver" 109 depends on GPIOLIB && OF 110 depends on QCOM_SCM || !QCOM_SCM 111 select 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 GPIOLIB && OF 119 depends on QCOM_SCM || !QCOM_SCM 120 select PINCTRL_MSM 121 help 122 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 123 Qualcomm TLMM block found on the Qualcomm 8916 platform. 124 125config PINCTRL_MSM8976 126 tristate "Qualcomm 8976 pin controller driver" 127 depends on GPIOLIB && OF 128 depends on QCOM_SCM || !QCOM_SCM 129 select PINCTRL_MSM 130 help 131 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 132 Qualcomm TLMM block found on the Qualcomm MSM8976 platform. 133 The Qualcomm MSM8956, APQ8056, APQ8076 platforms are also 134 supported by this driver. 135 136config PINCTRL_MSM8994 137 tristate "Qualcomm 8994 pin controller driver" 138 depends on GPIOLIB && OF 139 depends on QCOM_SCM || !QCOM_SCM 140 select PINCTRL_MSM 141 help 142 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 143 Qualcomm TLMM block found in the Qualcomm 8994 platform. The 144 Qualcomm 8992 platform is also supported by this driver. 145 146config PINCTRL_MSM8996 147 tristate "Qualcomm MSM8996 pin controller driver" 148 depends on GPIOLIB && OF 149 depends on QCOM_SCM || !QCOM_SCM 150 select PINCTRL_MSM 151 help 152 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 153 Qualcomm TLMM block found in the Qualcomm MSM8996 platform. 154 155config PINCTRL_MSM8998 156 tristate "Qualcomm MSM8998 pin controller driver" 157 depends on GPIOLIB && OF 158 depends on QCOM_SCM || !QCOM_SCM 159 select PINCTRL_MSM 160 help 161 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 162 Qualcomm TLMM block found in the Qualcomm MSM8998 platform. 163 164config PINCTRL_QCS404 165 tristate "Qualcomm QCS404 pin controller driver" 166 depends on GPIOLIB && OF 167 depends on QCOM_SCM || !QCOM_SCM 168 select PINCTRL_MSM 169 help 170 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 171 TLMM block found in the Qualcomm QCS404 platform. 172 173config PINCTRL_QDF2XXX 174 tristate "Qualcomm Technologies QDF2xxx pin controller driver" 175 depends on GPIOLIB && ACPI 176 depends on QCOM_SCM || !QCOM_SCM 177 select PINCTRL_MSM 178 help 179 This is the GPIO driver for the TLMM block found on the 180 Qualcomm Technologies QDF2xxx SOCs. 181 182config PINCTRL_QCOM_SPMI_PMIC 183 tristate "Qualcomm SPMI PMIC pin controller driver" 184 depends on GPIOLIB && OF && SPMI 185 select REGMAP_SPMI 186 select PINMUX 187 select PINCONF 188 select GENERIC_PINCONF 189 select GPIOLIB_IRQCHIP 190 select IRQ_DOMAIN_HIERARCHY 191 help 192 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 193 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips, 194 which are using SPMI for communication with SoC. Example PMIC's 195 devices are pm8841, pm8941 and pma8084. 196 197config PINCTRL_QCOM_SSBI_PMIC 198 tristate "Qualcomm SSBI PMIC pin controller driver" 199 depends on GPIOLIB && OF 200 select PINMUX 201 select PINCONF 202 select GENERIC_PINCONF 203 select GPIOLIB_IRQCHIP 204 select IRQ_DOMAIN_HIERARCHY 205 help 206 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 207 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips, 208 which are using SSBI for communication with SoC. Example PMIC's 209 devices are pm8058 and pm8921. 210 211config PINCTRL_SC7180 212 tristate "Qualcomm Technologies Inc SC7180 pin controller driver" 213 depends on GPIOLIB && OF 214 depends on QCOM_SCM || !QCOM_SCM 215 select PINCTRL_MSM 216 help 217 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 218 Qualcomm Technologies Inc TLMM block found on the Qualcomm 219 Technologies Inc SC7180 platform. 220 221config PINCTRL_SDM660 222 tristate "Qualcomm Technologies Inc SDM660 pin controller driver" 223 depends on GPIOLIB && OF 224 depends on QCOM_SCM || !QCOM_SCM 225 select PINCTRL_MSM 226 help 227 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 228 Qualcomm Technologies Inc TLMM block found on the Qualcomm 229 Technologies Inc SDM660 platform. 230 231config PINCTRL_SDM845 232 tristate "Qualcomm Technologies Inc SDM845 pin controller driver" 233 depends on GPIOLIB && (OF || ACPI) 234 depends on QCOM_SCM || !QCOM_SCM 235 select 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 SDM845 platform. 240 241config PINCTRL_SM8150 242 tristate "Qualcomm Technologies Inc SM8150 pin controller driver" 243 depends on GPIOLIB && OF 244 depends on QCOM_SCM || !QCOM_SCM 245 select PINCTRL_MSM 246 help 247 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 248 Qualcomm Technologies Inc TLMM block found on the Qualcomm 249 Technologies Inc SM8150 platform. 250 251config PINCTRL_SM8250 252 tristate "Qualcomm Technologies Inc SM8250 pin controller driver" 253 depends on GPIOLIB && OF 254 depends on QCOM_SCM || !QCOM_SCM 255 select PINCTRL_MSM 256 help 257 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 258 Qualcomm Technologies Inc TLMM block found on the Qualcomm 259 Technologies Inc SM8250 platform. 260 261endif 262