1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0-only 2*4882a593Smuzhiyunmenuconfig EXTCON 3*4882a593Smuzhiyun tristate "External Connector Class (extcon) support" 4*4882a593Smuzhiyun help 5*4882a593Smuzhiyun Say Y here to enable external connector class (extcon) support. 6*4882a593Smuzhiyun This allows monitoring external connectors by userspace 7*4882a593Smuzhiyun via sysfs and uevent and supports external connectors with 8*4882a593Smuzhiyun multiple states; i.e., an extcon that may have multiple 9*4882a593Smuzhiyun cables attached. For example, an external connector of a device 10*4882a593Smuzhiyun may be used to connect an HDMI cable and a AC adaptor, and to 11*4882a593Smuzhiyun host USB ports. Many of 30-pin connectors including PDMI are 12*4882a593Smuzhiyun also good examples. 13*4882a593Smuzhiyun 14*4882a593Smuzhiyunif EXTCON 15*4882a593Smuzhiyun 16*4882a593Smuzhiyuncomment "Extcon Device Drivers" 17*4882a593Smuzhiyun 18*4882a593Smuzhiyunconfig EXTCON_ADC_JACK 19*4882a593Smuzhiyun tristate "ADC Jack extcon support" 20*4882a593Smuzhiyun depends on IIO 21*4882a593Smuzhiyun help 22*4882a593Smuzhiyun Say Y here to enable extcon device driver based on ADC values. 23*4882a593Smuzhiyun 24*4882a593Smuzhiyunconfig EXTCON_ARIZONA 25*4882a593Smuzhiyun tristate "Wolfson Arizona EXTCON support" 26*4882a593Smuzhiyun depends on MFD_ARIZONA && INPUT && SND_SOC 27*4882a593Smuzhiyun help 28*4882a593Smuzhiyun Say Y here to enable support for external accessory detection 29*4882a593Smuzhiyun with Wolfson Arizona devices. These are audio CODECs with 30*4882a593Smuzhiyun advanced audio accessory detection support. 31*4882a593Smuzhiyun 32*4882a593Smuzhiyunconfig EXTCON_AXP288 33*4882a593Smuzhiyun tristate "X-Power AXP288 EXTCON support" 34*4882a593Smuzhiyun depends on MFD_AXP20X && USB_SUPPORT && X86 && ACPI 35*4882a593Smuzhiyun select USB_ROLE_SWITCH 36*4882a593Smuzhiyun help 37*4882a593Smuzhiyun Say Y here to enable support for USB peripheral detection 38*4882a593Smuzhiyun and USB MUX switching by X-Power AXP288 PMIC. 39*4882a593Smuzhiyun 40*4882a593Smuzhiyunconfig EXTCON_FSA9480 41*4882a593Smuzhiyun tristate "FSA9480 EXTCON Support" 42*4882a593Smuzhiyun depends on INPUT && I2C 43*4882a593Smuzhiyun select IRQ_DOMAIN 44*4882a593Smuzhiyun select REGMAP_I2C 45*4882a593Smuzhiyun help 46*4882a593Smuzhiyun If you say yes here you get support for the Fairchild Semiconductor 47*4882a593Smuzhiyun FSA9480 microUSB switch and accessory detector chip. The FSA9480 is a USB 48*4882a593Smuzhiyun port accessory detector and switch. The FSA9480 is fully controlled using 49*4882a593Smuzhiyun I2C and enables USB data, stereo and mono audio, video, microphone 50*4882a593Smuzhiyun and UART data to use a common connector port. 51*4882a593Smuzhiyun 52*4882a593Smuzhiyunconfig EXTCON_GPIO 53*4882a593Smuzhiyun tristate "GPIO extcon support" 54*4882a593Smuzhiyun depends on GPIOLIB || COMPILE_TEST 55*4882a593Smuzhiyun help 56*4882a593Smuzhiyun Say Y here to enable GPIO based extcon support. Note that GPIO 57*4882a593Smuzhiyun extcon supports single state per extcon instance. 58*4882a593Smuzhiyun 59*4882a593Smuzhiyunconfig EXTCON_INTEL_INT3496 60*4882a593Smuzhiyun tristate "Intel INT3496 ACPI device extcon driver" 61*4882a593Smuzhiyun depends on GPIOLIB && ACPI && (X86 || COMPILE_TEST) 62*4882a593Smuzhiyun help 63*4882a593Smuzhiyun Say Y here to enable extcon support for USB OTG ports controlled by 64*4882a593Smuzhiyun an Intel INT3496 ACPI device. 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun This ACPI device is typically found on Intel Baytrail or Cherrytrail 67*4882a593Smuzhiyun based tablets, or other Baytrail / Cherrytrail devices. 68*4882a593Smuzhiyun 69*4882a593Smuzhiyunconfig EXTCON_INTEL_CHT_WC 70*4882a593Smuzhiyun tristate "Intel Cherrytrail Whiskey Cove PMIC extcon driver" 71*4882a593Smuzhiyun depends on INTEL_SOC_PMIC_CHTWC 72*4882a593Smuzhiyun help 73*4882a593Smuzhiyun Say Y here to enable extcon support for charger detection / control 74*4882a593Smuzhiyun on the Intel Cherrytrail Whiskey Cove PMIC. 75*4882a593Smuzhiyun 76*4882a593Smuzhiyunconfig EXTCON_INTEL_MRFLD 77*4882a593Smuzhiyun tristate "Intel Merrifield Basin Cove PMIC extcon driver" 78*4882a593Smuzhiyun depends on INTEL_SOC_PMIC_MRFLD 79*4882a593Smuzhiyun help 80*4882a593Smuzhiyun Say Y here to enable extcon support for charger detection / control 81*4882a593Smuzhiyun on the Intel Merrifield Basin Cove PMIC. 82*4882a593Smuzhiyun 83*4882a593Smuzhiyunconfig EXTCON_MAX14577 84*4882a593Smuzhiyun tristate "Maxim MAX14577/77836 EXTCON Support" 85*4882a593Smuzhiyun depends on MFD_MAX14577 86*4882a593Smuzhiyun select IRQ_DOMAIN 87*4882a593Smuzhiyun select REGMAP_I2C 88*4882a593Smuzhiyun help 89*4882a593Smuzhiyun If you say yes here you get support for the MUIC device of 90*4882a593Smuzhiyun Maxim MAX14577/77836. The MAX14577/77836 MUIC is a USB port accessory 91*4882a593Smuzhiyun detector and switch. 92*4882a593Smuzhiyun 93*4882a593Smuzhiyunconfig EXTCON_MAX3355 94*4882a593Smuzhiyun tristate "Maxim MAX3355 USB OTG EXTCON Support" 95*4882a593Smuzhiyun depends on GPIOLIB || COMPILE_TEST 96*4882a593Smuzhiyun help 97*4882a593Smuzhiyun If you say yes here you get support for the USB OTG role detection by 98*4882a593Smuzhiyun MAX3355. The MAX3355 chip integrates a charge pump and comparators to 99*4882a593Smuzhiyun enable a system with an integrated USB OTG dual-role transceiver to 100*4882a593Smuzhiyun function as an USB OTG dual-role device. 101*4882a593Smuzhiyun 102*4882a593Smuzhiyunconfig EXTCON_MAX77693 103*4882a593Smuzhiyun tristate "Maxim MAX77693 EXTCON Support" 104*4882a593Smuzhiyun depends on MFD_MAX77693 && INPUT 105*4882a593Smuzhiyun select IRQ_DOMAIN 106*4882a593Smuzhiyun select REGMAP_I2C 107*4882a593Smuzhiyun help 108*4882a593Smuzhiyun If you say yes here you get support for the MUIC device of 109*4882a593Smuzhiyun Maxim MAX77693 PMIC. The MAX77693 MUIC is a USB port accessory 110*4882a593Smuzhiyun detector and switch. 111*4882a593Smuzhiyun 112*4882a593Smuzhiyunconfig EXTCON_MAX77843 113*4882a593Smuzhiyun tristate "Maxim MAX77843 EXTCON Support" 114*4882a593Smuzhiyun depends on MFD_MAX77843 115*4882a593Smuzhiyun select IRQ_DOMAIN 116*4882a593Smuzhiyun select REGMAP_I2C 117*4882a593Smuzhiyun help 118*4882a593Smuzhiyun If you say yes here you get support for the MUIC device of 119*4882a593Smuzhiyun Maxim MAX77843. The MAX77843 MUIC is a USB port accessory 120*4882a593Smuzhiyun detector add switch. 121*4882a593Smuzhiyun 122*4882a593Smuzhiyunconfig EXTCON_MAX8997 123*4882a593Smuzhiyun tristate "Maxim MAX8997 EXTCON Support" 124*4882a593Smuzhiyun depends on MFD_MAX8997 && IRQ_DOMAIN 125*4882a593Smuzhiyun help 126*4882a593Smuzhiyun If you say yes here you get support for the MUIC device of 127*4882a593Smuzhiyun Maxim MAX8997 PMIC. The MAX8997 MUIC is a USB port accessory 128*4882a593Smuzhiyun detector and switch. 129*4882a593Smuzhiyun 130*4882a593Smuzhiyunconfig EXTCON_PALMAS 131*4882a593Smuzhiyun tristate "Palmas USB EXTCON support" 132*4882a593Smuzhiyun depends on MFD_PALMAS 133*4882a593Smuzhiyun help 134*4882a593Smuzhiyun Say Y here to enable support for USB peripheral and USB host 135*4882a593Smuzhiyun detection by palmas usb. 136*4882a593Smuzhiyun 137*4882a593Smuzhiyunconfig EXTCON_PTN5150 138*4882a593Smuzhiyun tristate "NXP PTN5150 CC LOGIC USB EXTCON support" 139*4882a593Smuzhiyun depends on I2C && (GPIOLIB || COMPILE_TEST) 140*4882a593Smuzhiyun select REGMAP_I2C 141*4882a593Smuzhiyun help 142*4882a593Smuzhiyun Say Y here to enable support for USB peripheral and USB host 143*4882a593Smuzhiyun detection by NXP PTN5150 CC (Configuration Channel) logic chip. 144*4882a593Smuzhiyun 145*4882a593Smuzhiyunconfig EXTCON_QCOM_SPMI_MISC 146*4882a593Smuzhiyun tristate "Qualcomm USB extcon support" 147*4882a593Smuzhiyun depends on ARCH_QCOM || COMPILE_TEST 148*4882a593Smuzhiyun help 149*4882a593Smuzhiyun Say Y here to enable SPMI PMIC based USB cable detection 150*4882a593Smuzhiyun support on Qualcomm PMICs such as PM8941. 151*4882a593Smuzhiyun 152*4882a593Smuzhiyunconfig EXTCON_RT8973A 153*4882a593Smuzhiyun tristate "Richtek RT8973A EXTCON support" 154*4882a593Smuzhiyun depends on I2C 155*4882a593Smuzhiyun select IRQ_DOMAIN 156*4882a593Smuzhiyun select REGMAP_I2C 157*4882a593Smuzhiyun select REGMAP_IRQ 158*4882a593Smuzhiyun help 159*4882a593Smuzhiyun If you say yes here you get support for the MUIC device of 160*4882a593Smuzhiyun Richtek RT8973A. The RT8973A is a USB port accessory detector 161*4882a593Smuzhiyun and switch that is optimized to protect low voltage system 162*4882a593Smuzhiyun from abnormal high input voltage (up to 28V). 163*4882a593Smuzhiyun 164*4882a593Smuzhiyunconfig EXTCON_SM5502 165*4882a593Smuzhiyun tristate "Silicon Mitus SM5502 EXTCON support" 166*4882a593Smuzhiyun depends on I2C 167*4882a593Smuzhiyun select IRQ_DOMAIN 168*4882a593Smuzhiyun select REGMAP_I2C 169*4882a593Smuzhiyun select REGMAP_IRQ 170*4882a593Smuzhiyun help 171*4882a593Smuzhiyun If you say yes here you get support for the MUIC device of 172*4882a593Smuzhiyun Silicon Mitus SM5502. The SM5502 is a USB port accessory 173*4882a593Smuzhiyun detector and switch. 174*4882a593Smuzhiyun 175*4882a593Smuzhiyunconfig EXTCON_USB_GPIO 176*4882a593Smuzhiyun tristate "USB GPIO extcon support" 177*4882a593Smuzhiyun depends on GPIOLIB || COMPILE_TEST 178*4882a593Smuzhiyun help 179*4882a593Smuzhiyun Say Y here to enable GPIO based USB cable detection extcon support. 180*4882a593Smuzhiyun Used typically if GPIO is used for USB ID pin detection. 181*4882a593Smuzhiyun 182*4882a593Smuzhiyunconfig EXTCON_USBC_CROS_EC 183*4882a593Smuzhiyun tristate "ChromeOS Embedded Controller EXTCON support" 184*4882a593Smuzhiyun depends on CROS_EC 185*4882a593Smuzhiyun help 186*4882a593Smuzhiyun Say Y here to enable USB Type C cable detection extcon support when 187*4882a593Smuzhiyun using Chrome OS EC based USB Type-C ports. 188*4882a593Smuzhiyun 189*4882a593Smuzhiyunendif 190