Back to Zephyr

USB Type-C Port Controller (TCPC)

doc/hardware/peripherals/tcpc.rst

4.4.01.8 KB
Original Source

.. _tcpc_api:

USB Type-C Port Controller (TCPC) #################################

Overview


TCPC <tcpc-specification_>_ (USB Type-C Port Controller) The TCPC is a device used to simplify the implementation of a USB-C system by providing the following three function:

  • VBUS and VCONN control USB Type-C <usb-type-c-specification_>_: The TCPC may provide a Source device, the mechanism to control VBUS sourcing, and a Sink device, the mechanism to control VBUS sinking. A similar mechanism is provided for the control of VCONN.

  • CC control and sensing: The TCPC implements logic for controlling the CC pin pull-up and pull-down resistors. It also provides a way to sense and report what resistors are present on the CC pin.

  • Power Delivery message reception and transmission USB Power Delivery <usb-pd-specification_>_: The TCPC sends and receives messages constructed in the TCPM and places them on the CC lines.

.. _tcpc-api:

TCPC API

The TCPC device driver functions as the liaison between the TCPC device and the application software; this is accomplished by the Zephyr's API provided by the device driver that's used to communicate with and control the TCPC device.

Configuration Options


Related configuration options:

  • :kconfig:option:CONFIG_USBC_TCPC_DRIVER

API Reference


.. doxygengroup:: usb_type_c .. doxygengroup:: usb_type_c_port_controller_api .. doxygengroup:: usb_power_delivery

.. _tcpc-specification: https://www.usb.org/document-library/usb-type-cr-port-controller-interface-specification

.. _usb-type-c-specification: https://www.usb.org/document-library/usb-type-cr-cable-and-connector-specification-revision-21

.. _usb-pd-specification: https://www.usb.org/document-library/usb-power-delivery