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

config CONFIG_TYPEC_UCSI
	tristate "USB Type-C Connector System Software Interface driver"
	depends on !CONFIG_CPU_BIG_ENDIAN
	help
	  CONFIG_USB Type-CONFIG_C Connector System Software Interface (CONFIG_UCSI) is a
	  specification for an interface that allows the operating system to
	  control the CONFIG_USB Type-CONFIG_C ports. On CONFIG_UCSI system the CONFIG_USB Type-CONFIG_C ports
	  function autonomously by default, but in order to get the status of
	  the ports and support basic operations like role swapping, the driver
	  is required. CONFIG_UCSI is available on most of the new Intel based systems
	  that are equipped with Embedded Controller and CONFIG_USB Type-CONFIG_C ports.

	  CONFIG_UCSI specification does not define the interface method, so depending
	  on the platform, CONFIG_ACPI, CONFIG_PCI, CONFIG_I2C, etc. may be used. Therefore this
	  driver only provides the core part, and separate drivers are needed
	  for every supported interface method.

	  The CONFIG_UCSI specification can be downloaded from:
	  http://www.intel.com/content/www/us/en/io/universal-serial-bus/usb-type-c-ucsi-spec.html

	  To compile the driver as a module, choose CONFIG_M here: the module will be
	  called typec_ucsi.

if CONFIG_TYPEC_UCSI

config CONFIG_UCSI_CCG
	tristate "UCSI Interface Driver for Cypress CCGx"
	depends on CONFIG_I2C
	help
	  This driver enables CONFIG_UCSI support on platforms that expose a
	  Cypress CCGx Type-CONFIG_C controller over CONFIG_I2C interface.

	  To compile the driver as a module, choose CONFIG_M here: the module will be
	  called ucsi_ccg.

config CONFIG_UCSI_ACPI
	tristate "UCSI ACPI Interface Driver"
	depends on CONFIG_ACPI
	help
	  This driver enables CONFIG_UCSI support on platforms that expose CONFIG_UCSI
	  interface as CONFIG_ACPI device. On new Intel Atom based platforms starting
	  from Broxton SoCs and Core platforms stating from Skylake, CONFIG_UCSI is an
	  CONFIG_ACPI enumerated device.

	  To compile the driver as a module, choose CONFIG_M here: the module will be
	  called ucsi_acpi

endif