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