10.2.6.2 USB Type-C

The TCPC enables a software implementation of the USB Type-C CC Control and sensing and of the USB Type-C Power Control for VBUS as defined in the Universal Serial Bus Type-C™ Port Controller Interface Specification. The TCPC provides both a user interface compatible with the programmer model of the USB Type-C Port Controller and a direct access to the Configuration Channel (CC) hardware. VBUS detection and control hardware is available through the PIO controller externally to the TCPC.

The Configuration Channel (CC) used in the discovery and configuration of connections across a USB Type-C cable is further defined in the Universal Serial Bus Type-C™ Port Controller Interface Specification.

The Configuration Channel (CC) hardware can be controlled by TCPC_UPC, and the resulting outputs can be observed in TCPC_UPS, as shown in the table and figure that follow.

Table 10-4. Configuration Channel (CC) Hardware to USB PHY Mapping
Configuration Channel HardwareTCPC Register Field
CC Pull-Up RpTCPC_UPC.RDIPSEL
CC Pull-Down RdTCPC_UPC.RDIPSEL, TCPC_UPC.RDSRC, TCPC_UPC.RDSEL, TCPC_UPC.RDTRME
CC Status Comparator And Phy EnableTCPC_UPC.TCCE, TCPC_UPC.TCIDSEL
CC Status Comparator ThresholdTCPC_UPC.TCIDCTSEL
CC Status Comparator OutputsTCPC_UPS.CC2RDT
Figure 10-6. Configuration Channel (CC) Hardware
The Rd pull-down resistor value can be set from three alternate sources selected via the TCPC_UPC.RDSRC field:
  • Software configuration in TCPC_UPC.RDSEL
  • OTP controller hardware configuration outputs
  • Live comparison of the USB PHY calibration outputs to the programmed calibration voltages references in TCPC_CALVREF

If the software configuration in TCPC_UPC.RDSEL is selected, then prior to operating the TCPC, a two- or three-step procedure is needed to trim the Rd pull-down:

  1. Set TCPC_UPC.TCCE to 1, TCPC_UPC.TCIDSEL to 1, TCPC_UPC.TCIDCTSEL to 2, TCPC_UPC.RDTRME to 1 and TCPC_UPC.RDSEL to 2.
  2. Wait for 560 μs.

    a. If the TCPC_UPS.CC2RDT comparator output is read at 1, set TCPC_UPC.RDSEL to 1, reset TCPC_UPC.RDTRME to 0 and exit the trimming sequence.

    b. If the TCPC_UPS.CC2RDT comparator output is read at 0, set TCPC_UPC.TCIDCTSEL to 0 while keeping TCPC_UPC.RDSEL at 2 and proceed to step 3.

  3. Wait for 560 μs.

    a. If the TCPC_UPS.CC2RDT comparator output is read at 1, keep TCPC_UPC.RDSEL at 2 and reset TCPC_UPC.RDTRME to 0.

    b. If the TCPC_UPS.CC2RDT comparator output is read at 0, set TCPC_UPC.RDSEL to 3 and reset TCPC_UPC.RDTRME to 0.

    Note: Only one TCPC_UPC write is required at each of the three above steps.

After any software change in TCPC_UPC or after any change on the CC1 or CC2 pins, the CC comparator outputs in TCPC_UPS.CC1ID and TCPC_UPS.CC2RDT are not valid before some update delay as shown in the Max Delay Update column of the table below.

These update delays must be respected after any TCPC_UPC software change when implementing the CC control and sensing as specified by the Universal Serial Bus Type-C™ Port Controller Interface Specification.

The CC comparator outputs in TCPC_UPS.CC1ID and TCPC_UPS.CC2RDT are debounced by a glitch filter rejecting any pulse of tTCPCfilter = 450 μs or less as shown in the Min Glitch Filtering column of the table below.

Any longer filtering or debouncing, such as during the tCCDebounce time as specified in the Universal Serial Bus Type-C Cable and Connector Specification, must be performed by periodically sampling TCPC_UPS.

Table 10-5. TCPC_UPS Debouncing Times
TCPC_UPS BitMax Delay UpdateMin Glitch Filtering
TCPC_UPS.CC1ID560 μs450 μs
TCPC_UPS.CC2RDT560 μs450 μs