Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# SPDX-License-Identifier: GPL-2.0-only
menuconfig CONFIG_EXTCON
	tristate "External Connector Class (extcon) support"
	help
	  Say Y here to enable external connector class (extcon) support.
	  This allows monitoring external connectors by userspace
	  via sysfs and uevent and supports external connectors with
	  multiple states; i.e., an extcon that may have multiple
	  cables attached. For example, an external connector of a device
	  may be used to connect an CONFIG_HDMI cable and a AC adaptor, and to
	  host CONFIG_USB ports. Many of 30-pin connectors including PDMI are
	  also good examples.

if CONFIG_EXTCON

comment "Extcon Device Drivers"

config CONFIG_EXTCON_ADC_JACK
	tristate "ADC Jack extcon support"
	depends on CONFIG_IIO
	help
	  Say Y here to enable extcon device driver based on ADC values.

config CONFIG_EXTCON_ARIZONA
	tristate "Wolfson Arizona EXTCON support"
	depends on CONFIG_MFD_ARIZONA && CONFIG_INPUT && CONFIG_SND_SOC
	help
	  Say Y here to enable support for external accessory detection
	  with Wolfson Arizona devices. These are audio CODECs with
	  advanced audio accessory detection support.

config CONFIG_EXTCON_AXP288
	tristate "X-Power AXP288 EXTCON support"
	depends on CONFIG_MFD_AXP20X && CONFIG_USB_SUPPORT && CONFIG_X86 && CONFIG_ACPI
	select CONFIG_USB_ROLE_SWITCH
	help
	  Say Y here to enable support for CONFIG_USB peripheral detection
	  and CONFIG_USB MUX switching by X-Power AXP288 PMIC.

config CONFIG_EXTCON_FSA9480
	tristate "FSA9480 EXTCON Support"
	depends on CONFIG_INPUT && CONFIG_I2C
	select CONFIG_IRQ_DOMAIN
	select CONFIG_REGMAP_I2C
	help
	  If you say yes here you get support for the Fairchild Semiconductor
	  FSA9480 microUSB switch and accessory detector chip. The FSA9480 is a CONFIG_USB
	  port accessory detector and switch. The FSA9480 is fully controlled using
	  CONFIG_I2C and enables CONFIG_USB data, stereo and mono audio, video, microphone
	  and UART data to use a common connector port.

config CONFIG_EXTCON_GPIO
	tristate "GPIO extcon support"
	depends on CONFIG_GPIOLIB || CONFIG_COMPILE_TEST
	help
	  Say Y here to enable GPIO based extcon support. Note that GPIO
	  extcon supports single state per extcon instance.

config CONFIG_EXTCON_INTEL_INT3496
	tristate "Intel INT3496 ACPI device extcon driver"
	depends on CONFIG_GPIOLIB && CONFIG_ACPI && (CONFIG_X86 || CONFIG_COMPILE_TEST)
	help
	  Say Y here to enable extcon support for CONFIG_USB OTG ports controlled by
	  an Intel INT3496 CONFIG_ACPI device.

	  This CONFIG_ACPI device is typically found on Intel Baytrail or Cherrytrail
	  based tablets, or other Baytrail / Cherrytrail devices.

config CONFIG_EXTCON_INTEL_CHT_WC
	tristate "Intel Cherrytrail Whiskey Cove PMIC extcon driver"
	depends on CONFIG_INTEL_SOC_PMIC_CHTWC
	help
	  Say Y here to enable extcon support for charger detection / control
	  on the Intel Cherrytrail Whiskey Cove PMIC.

config CONFIG_EXTCON_INTEL_MRFLD
	tristate "Intel Merrifield Basin Cove PMIC extcon driver"
	depends on CONFIG_INTEL_SOC_PMIC_MRFLD
	help
	  Say Y here to enable extcon support for charger detection / control
	  on the Intel Merrifield Basin Cove PMIC.

config CONFIG_EXTCON_MAX14577
	tristate "Maxim MAX14577/77836 EXTCON Support"
	depends on CONFIG_MFD_MAX14577
	select CONFIG_IRQ_DOMAIN
	select CONFIG_REGMAP_I2C
	help
	  If you say yes here you get support for the MUIC device of
	  Maxim MAX14577/77836. The MAX14577/77836 MUIC is a CONFIG_USB port accessory
	  detector and switch.

config CONFIG_EXTCON_MAX3355
	tristate "Maxim MAX3355 USB OTG EXTCON Support"
	depends on CONFIG_GPIOLIB || CONFIG_COMPILE_TEST
	help
	  If you say yes here you get support for the CONFIG_USB OTG role detection by
	  MAX3355. The MAX3355 chip integrates a charge pump and comparators to
	  enable a system with an integrated CONFIG_USB OTG dual-role transceiver to
	  function as an CONFIG_USB OTG dual-role device.

config CONFIG_EXTCON_MAX77693
	tristate "Maxim MAX77693 EXTCON Support"
	depends on CONFIG_MFD_MAX77693 && CONFIG_INPUT
	select CONFIG_IRQ_DOMAIN
	select CONFIG_REGMAP_I2C
	help
	  If you say yes here you get support for the MUIC device of
	  Maxim MAX77693 PMIC. The MAX77693 MUIC is a CONFIG_USB port accessory
	  detector and switch.

config CONFIG_EXTCON_MAX77843
	tristate "Maxim MAX77843 EXTCON Support"
	depends on CONFIG_MFD_MAX77843
	select CONFIG_IRQ_DOMAIN
	select CONFIG_REGMAP_I2C
	help
	  If you say yes here you get support for the MUIC device of
	  Maxim MAX77843. The MAX77843 MUIC is a CONFIG_USB port accessory
	  detector add switch.

config CONFIG_EXTCON_MAX8997
	tristate "Maxim MAX8997 EXTCON Support"
	depends on CONFIG_MFD_MAX8997 && CONFIG_IRQ_DOMAIN
	help
	  If you say yes here you get support for the MUIC device of
	  Maxim MAX8997 PMIC. The MAX8997 MUIC is a CONFIG_USB port accessory
	  detector and switch.

config CONFIG_EXTCON_PALMAS
	tristate "Palmas USB EXTCON support"
	depends on CONFIG_MFD_PALMAS
	help
	  Say Y here to enable support for CONFIG_USB peripheral and CONFIG_USB host
	  detection by palmas usb.

config CONFIG_EXTCON_PTN5150
	tristate "NXP PTN5150 CC LOGIC USB EXTCON support"
	depends on CONFIG_I2C && (CONFIG_GPIOLIB || CONFIG_COMPILE_TEST)
	select CONFIG_REGMAP_I2C
	help
	  Say Y here to enable support for CONFIG_USB peripheral and CONFIG_USB host
	  detection by NXP PTN5150 CC (Configuration Channel) logic chip.

config CONFIG_EXTCON_QCOM_SPMI_MISC
	tristate "Qualcomm USB extcon support"
	depends on CONFIG_ARCH_QCOM || CONFIG_COMPILE_TEST
	help
	  Say Y here to enable CONFIG_SPMI PMIC based CONFIG_USB cable detection
	  support on Qualcomm PMICs such as PM8941.

config CONFIG_EXTCON_RT8973A
	tristate "Richtek RT8973A EXTCON support"
	depends on CONFIG_I2C
	select CONFIG_IRQ_DOMAIN
	select CONFIG_REGMAP_I2C
	select CONFIG_REGMAP_IRQ
	help
	  If you say yes here you get support for the MUIC device of
	  Richtek RT8973A. The RT8973A is a CONFIG_USB port accessory detector
	  and switch that is optimized to protect low voltage system
	  from abnormal high input voltage (up to 28V).

config CONFIG_EXTCON_SM5502
	tristate "Silicon Mitus SM5502 EXTCON support"
	depends on CONFIG_I2C
	select CONFIG_IRQ_DOMAIN
	select CONFIG_REGMAP_I2C
	select CONFIG_REGMAP_IRQ
	help
	  If you say yes here you get support for the MUIC device of
	  Silicon Mitus SM5502. The SM5502 is a CONFIG_USB port accessory
	  detector and switch.

config CONFIG_EXTCON_USB_GPIO
	tristate "USB GPIO extcon support"
	depends on CONFIG_GPIOLIB || CONFIG_COMPILE_TEST
	help
	  Say Y here to enable GPIO based CONFIG_USB cable detection extcon support.
	  Used typically if GPIO is used for CONFIG_USB ID pin detection.

config CONFIG_EXTCON_USBC_CROS_EC
	tristate "ChromeOS Embedded Controller EXTCON support"
	depends on CONFIG_CROS_EC
	help
	  Say Y here to enable CONFIG_USB Type CONFIG_C cable detection extcon support when
	  using Chrome OS EC based CONFIG_USB Type-CONFIG_C ports.

endif