1 # SPDX-License-Identifier: GPL-2.0-only
3 tristate "External Connector Class (extcon) support"
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
16 comment "Extcon Device Drivers"
18 config EXTCON_ADC_JACK
19 tristate "ADC Jack extcon support"
22 Say Y here to enable extcon device driver based on ADC values.
25 tristate "X-Power AXP288 EXTCON support"
26 depends on MFD_AXP20X && USB_SUPPORT && X86 && ACPI && IOSF_MBI
27 select USB_ROLE_SWITCH
29 Say Y here to enable support for USB peripheral detection
30 and USB MUX switching by X-Power AXP288 PMIC.
33 tristate "FSA9480 EXTCON Support"
34 depends on INPUT && I2C
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.
45 tristate "GPIO extcon support"
46 depends on GPIOLIB || COMPILE_TEST
48 Say Y here to enable GPIO based extcon support. Note that GPIO
49 extcon supports single state per extcon instance.
51 config EXTCON_INTEL_INT3496
52 tristate "Intel INT3496 ACPI device extcon driver"
53 depends on GPIOLIB && ACPI && (X86 || COMPILE_TEST)
55 Say Y here to enable extcon support for USB OTG ports controlled by
56 an Intel INT3496 ACPI device.
58 This ACPI device is typically found on Intel Baytrail or Cherrytrail
59 based tablets, or other Baytrail / Cherrytrail devices.
61 config 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
68 Say Y here to enable extcon support for charger detection / control
69 on the Intel Cherrytrail Whiskey Cove PMIC.
71 config EXTCON_INTEL_MRFLD
72 tristate "Intel Merrifield Basin Cove PMIC extcon driver"
73 depends on INTEL_SOC_PMIC_MRFLD
75 Say Y here to enable extcon support for charger detection / control
76 on the Intel Merrifield Basin Cove PMIC.
78 config EXTCON_MAX14577
79 tristate "Maxim MAX14577/77836 EXTCON Support"
80 depends on MFD_MAX14577
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
89 tristate "Maxim MAX3355 USB OTG EXTCON Support"
90 depends on GPIOLIB || COMPILE_TEST
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.
97 config EXTCON_MAX77693
98 tristate "Maxim MAX77693 EXTCON Support"
99 depends on MFD_MAX77693 && INPUT
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
107 config EXTCON_MAX77843
108 tristate "Maxim MAX77843 EXTCON Support"
109 depends on MFD_MAX77843
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
117 config EXTCON_MAX8997
118 tristate "Maxim MAX8997 EXTCON Support"
119 depends on MFD_MAX8997 && IRQ_DOMAIN
121 If you say yes here you get support for the MUIC device of
122 Maxim MAX8997 PMIC. The MAX8997 MUIC is a USB port accessory
126 tristate "Palmas USB EXTCON support"
127 depends on MFD_PALMAS
129 Say Y here to enable support for USB peripheral and USB host
130 detection by palmas usb.
132 config EXTCON_PTN5150
133 tristate "NXP PTN5150 CC LOGIC USB EXTCON support"
134 depends on I2C && (GPIOLIB || COMPILE_TEST)
135 depends on USB_ROLE_SWITCH || !USB_ROLE_SWITCH
138 Say Y here to enable support for USB peripheral and USB host
139 detection by NXP PTN5150 CC (Configuration Channel) logic chip.
141 config EXTCON_QCOM_SPMI_MISC
142 tristate "Qualcomm USB extcon support"
143 depends on ARCH_QCOM || COMPILE_TEST
145 Say Y here to enable SPMI PMIC based USB cable detection
146 support on Qualcomm PMICs such as PM8941.
148 config EXTCON_RT8973A
149 tristate "Richtek RT8973A EXTCON support"
155 If you say yes here you get support for the MUIC device of
156 Richtek RT8973A. The RT8973A is a USB port accessory detector
157 and switch that is optimized to protect low voltage system
158 from abnormal high input voltage (up to 28V).
161 tristate "Silicon Mitus SM5502/SM5504/SM5703 EXTCON support"
167 If you say yes here you get support for the MUIC device of
168 Silicon Mitus SM5502. The SM5502 is a USB port accessory
171 config EXTCON_USB_GPIO
172 tristate "USB GPIO extcon support"
173 depends on GPIOLIB || COMPILE_TEST
175 Say Y here to enable GPIO based USB cable detection extcon support.
176 Used typically if GPIO is used for USB ID pin detection.
178 config EXTCON_USBC_CROS_EC
179 tristate "ChromeOS Embedded Controller EXTCON support"
182 Say Y here to enable USB Type C cable detection extcon support when
183 using Chrome OS EC based USB Type-C ports.
185 config EXTCON_USBC_TUSB320
186 tristate "TI TUSB320 USB-C extcon support"
187 depends on I2C && TYPEC
189 depends on USB_ROLE_SWITCH || !USB_ROLE_SWITCH
191 Say Y here to enable support for USB Type C cable detection extcon
192 support using a TUSB320.