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