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