# SPDX-License-Identifier: GPL-2.0
|
|
config TYPEC_UCSI
|
tristate "USB Type-C Connector System Software Interface driver"
|
depends on !CPU_BIG_ENDIAN
|
depends on USB_ROLE_SWITCH || !USB_ROLE_SWITCH
|
help
|
USB Type-C Connector System Software Interface (UCSI) is a
|
specification for an interface that allows the operating system to
|
control the USB Type-C ports. On UCSI system the USB Type-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. UCSI is available on most of the new Intel based systems
|
that are equipped with Embedded Controller and USB Type-C ports.
|
|
UCSI specification does not define the interface method, so depending
|
on the platform, ACPI, PCI, I2C, etc. may be used. Therefore this
|
driver only provides the core part, and separate drivers are needed
|
for every supported interface method.
|
|
The UCSI specification can be downloaded from:
|
https://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 M here: the module will be
|
called typec_ucsi.
|
|
if TYPEC_UCSI
|
|
config UCSI_CCG
|
tristate "UCSI Interface Driver for Cypress CCGx"
|
depends on I2C
|
help
|
This driver enables UCSI support on platforms that expose a
|
Cypress CCGx Type-C controller over I2C interface.
|
|
To compile the driver as a module, choose M here: the module will be
|
called ucsi_ccg.
|
|
config UCSI_ACPI
|
tristate "UCSI ACPI Interface Driver"
|
depends on ACPI
|
help
|
This driver enables UCSI support on platforms that expose UCSI
|
interface as ACPI device. On new Intel Atom based platforms starting
|
from Broxton SoCs and Core platforms stating from Skylake, UCSI is an
|
ACPI enumerated device.
|
|
To compile the driver as a module, choose M here: the module will be
|
called ucsi_acpi
|
|
endif
|