SLVUCR8A September   2023  – March 2024 TPS25751

 

  1.   1
  2.   Read This First
    1.     Notational Conventions
    2.     Glossary
    3.     Related Documents
    4.     Support Resources
    5.     Trademarks
  3. 1Introduction
    1. 1.1 Introduction
      1. 1.1.1 Purpose and Scope
    2. 1.2 PD Controller Host Interface Description
      1. 1.2.1 Overview
      2. 1.2.2 Register and Field Notation
    3. 1.3 Unique Address Interface
      1. 1.3.1 Unique Address Interface Protocol
  4. 2PD Controller Policy Modes
    1. 2.1 Overview
    2. 2.2 Source Policy Mode
    3. 2.3 Sink Policy Mode
  5. 3TPS25751 Registers
  6. 44CC Task Detailed Descriptions
    1. 4.1 CPU Control Tasks
      1. 4.1.1 'Gaid' - Return to Normal Operation
      2. 4.1.2 'GAID' - Cold Reset Request
    2. 4.2 PD Message Tasks
      1. 4.2.1 'SWSk' - PD PR_Swap to Sink
      2. 4.2.2 'SWSr' - PD PR_Swap to Source
      3. 4.2.3 'SWDF' - PD DR_Swap to DFP
      4. 4.2.4 'SWUF' - PD DR_Swap to UFP
      5. 4.2.5 'GSkC' - PD Get Sink Capabilities
      6. 4.2.6 'GSrC' - PD Get Source Capabilities
      7. 4.2.7 'GPPI' - PD Get Port Partner Information
      8. 4.2.8 'SSrC' - PD Send Source Capabilities
      9. 4.2.9 'MBRd' - Message Buffer Read
    3. 4.3 Patch Bundle Update Tasks
      1. 4.3.1 'PBMs' - Start Patch Burst Mode Download Sequence
      2. 4.3.2 'PBMc' - Patch Burst Mode Download Complete
      3. 4.3.3 'PBMe' - End Patch Burst Mode Download Sequence
      4. 4.3.4 'GO2P' - Go to Patch Mode
    4. 4.4 System Tasks
      1. 4.4.1 'DBfg' - Clear Dead Battery Flag
      2. 4.4.2 'I2Cr' - I2C Read Transaction
      3. 4.4.3 'I2Cw' - I2C Write Transaction
  7. 5User Reference
    1. 5.1 PD Controller Application Customization
    2. 5.2 Loading a Patch Bundle
    3. 5.3 GPIO Events
    4. 5.4 AUTO_NEGOTIATE_SINK Register
      1. 5.4.1 AUTO_NEGOTIATE_SINK Usage Example 1
      2. 5.4.2 AUTO_NEGOTIATE_SINK Usage Example 2
      3. 5.4.3 AUTO_NEGOTIATE_SINK Usage Example 3
      4. 5.4.4 AUTO_NEGOTIATE_SINK Usage Example 4
  8. 6Revision History

TPS25751 Registers

Table 3-1 lists the memory-mapped registers for the TPS25751 registers. All register offset addresses not listed in Table 3-1 should be considered as reserved locations and the register contents should not be modified.

Table 3-1 TPS25751 Registers
OffsetAcronymRegister NameSection
3hModeModeSection 3.1
6hCustomer UseCustomer UseSection 3.2
8hCommand Register for I2C1Command Register for I2C1Section 3.3
9hData Register for CMD1Data Register for CMD1Section 3.4
14hInterrupt Event for I2C1Interrupt Event for I2C1Section 3.5
16hInterrupt Mask for I2C1Interrupt Mask for I2C1Section 3.6
18hInterrupt Clear for I2C1Interrupt Clear for I2C1Section 3.7
1AhStatusStatusSection 3.8
26hPower Path StatusPower Path StatusSection 3.9
28hPort ConfigurationPort ConfigurationSection 3.10
29hPort ControlPort ControlSection 3.11
2DhBoot FlagsBoot FlagsSection 3.12
30hReceived Source CapabilitiesReceived Source CapabilitiesSection 3.13
31hReceived Sink CapabilitiesReceived Sink CapabilitiesSection 3.14
32hTransmit Source CapabilitiesTransmit Source CapabilitiesSection 3.15
33hTransmit Sink CapabilitiesTransmit Sink CapabilitiesSection 3.16
34hActive PDO ContractActive PDO ContractSection 3.17
35hActive RDO ContractActive RDO ContractSection 3.18
37hAutonegotiate SinkAutonegotiate SinkSection 3.19
3FhPower StatusPower StatusSection 3.20
40hPD StatusPD StatusSection 3.21
5ChIO ConfigIO ConfigSection 3.22
69hType C StateType C StateSection 3.23
6AhADC ResultsADC ResultsSection 3.24
70hSleep Control RegisterSleep Control RegisterSection 3.25
72hGPIO StatusGPIO StatusSection 3.26
98hLiquid Detection ConfigLiquid Detection ConfigSection 3.27

Complex bit access types are encoded to fit into small table cells. Table 3-2 shows the codes that are used for access types in this section.

Table 3-2 TPS25751 Access Type Codes
Access TypeCodeDescription
Read Type
RRRead
Write Type
WWWrite
Reset or Default Value
-nValue after reset or the default value

3.1 Mode Register (Offset = 3h) [Reset = 00000000h]

Mode is shown in Table 3-3.

Return to the Summary Table.

Indicates the operational state of the port. The PD controller has limited functionality in some modes.

Table 3-3 Mode Register Field Descriptions
BitFieldTypeResetDescription
31-0ModeR0h The mode described in 4 ASCII characters. 'APP ' indicates that the PD controller is fully functioning in the application firmware where all registers are available. 'BOOT' indicates that the PD controller is booting in dead battery. 'PTCH' indicates that the PD controller is in patch mode. Any other values indicates that the PD controller is functioning in limited capacity. In 'BOOT' and 'PTCH' only the follow register addresses are accessible, Mode, Command, Data, Int Event, Int Mask, Int Clear, and Boot Flags.

3.2 Customer Use Register (Offset = 6h) [Reset = 0000000000000000h]

Customer Use is shown in Table 3-4.

Return to the Summary Table.

These 8 bytes are allocated for customer use as needed. The PD controller does not use this register. This register may be changed during application customization.

Table 3-4 Customer Use Register Field Descriptions
BitFieldTypeResetDescription
63-0Customer UseR0h These 8 bytes are allocated for customer use as needed. The PD controller does not use this register. This register may be changed during application customization.

3.3 Command Register for I2C1 (Offset = 8h) [Reset = 00000000h]

Command Register for I2C1 is shown in Table 3-5.

Return to the Summary Table.

Command register for the primary command interface. Cleared to 0x0000_0000 by the PD Controller during initialization and after successful processing of every command. If an unrecognized command is written to this register, it is replaced by a 4CC value of "!CMD".

Table 3-5 Command Register for I2C1 Field Descriptions
BitFieldTypeResetDescription
31-0CommandR/W0h Command register for the primary command interface. Cleared to 0x0000_0000 by the PD Controller during initialization and after successful processing of every command. If an unrecognized command is written to this register, it is replaced by a 4CC value of "!CMD".

3.4 Data Register for CMD1 (Offset = 9h) [Reset = 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000h]

Data Register for CMD1 is shown in Table 3-6.

Return to the Summary Table.

Data register for the primary command interface (CMD1).

Table 3-6 Data Register for CMD1 Field Descriptions
BitFieldTypeResetDescription
511-0DataR/W0h Data register for the primary command interface (CMD1).

3.5 Interrupt Event for I2C1 Register (Offset = 14h) [Reset = 0000000000000002000008h]

Interrupt Event for I2C1 is shown in Table 3-7.

Return to the Summary Table.

Interrupt event bit field for IRQ. If any bit in this register is 1, then the IRQ pin is pulled low. Bytes 1 to 10 of this register are port-specific, but Byte 11( Bits 80-87) is common to all ports in the PD controller.

Table 3-7 Interrupt Event for I2C1 Register Field Descriptions
BitFieldTypeResetDescription
87-83RESERVEDR0h Reserved
82I2C Controller NACkedR0h A transaction on the I2C Controller was NACKed.
81Ready for PatchR0h Device ready for a patch bundle from the host.
80Patch LoadedR0h Patch was loaded to the device.
79RESERVEDR0h Reserved
78RESERVEDR0h Reserved
77RESERVEDR0h Reserved
76RESERVEDR0h Reserved
75-74RESERVEDR0h Reserved
73RESERVEDR0h Reserved
72RESERVEDR0h Reserved
71RESERVEDR0h Reserved
70RESERVEDR0h Reserved
69-67RESERVEDR0h Reserved
66MBRD Buffer ReadyR0h Receive memory buffer full and ready to be read using the 'MBRd' command.
65TX Memory Buffer EmptyR0h Transmit memory buffer empty.
64RESERVEDR0h Reserved
63RESERVEDR0h Reserved
62RESERVEDR0h Reserved
61RESERVEDR0h Reserved
61RESERVEDR0h Reserved
60Liquid DetectionR0h Asserted when Liquid Detection is detected or removed. Read 0x98 to determine the state of Liquid Detection.
60RESERVEDR0h Reserved
59RESERVEDR0h Reserved
62-59RESERVEDR0h Reserved
58RESERVEDR0h Reserved
57Ext DCDC Source Safe StateR0h Used for EC controlled battery charger or DC/DC applications to indicate when the PD controller is no longer going to act as a source. This interrupt will be set when acting as a source and receiving/sending an Accept message to a Power Role Swap.
56Ext DCDC Sink Safe StateR0h Used for EC controlled battery charger or DC/DC applications to indicate when the PD controller is no longer going to act as a sin. This interrupt will be set when acting as a sink and receiving/sending an Accept message to a Power Role Swap. This interrupt will also be set when acting as a sink and receiving an Explicit PD Contract Accept from the connected source.
55RESERVEDR0h Reserved
54RESERVEDR0h Reserved
53RESERVEDR0h Reserved
52RESERVEDR0h Reserved
51RESERVEDR0h Reserved
50RESERVEDR0h Reserved
49RESERVEDR0h Reserved
48RESERVEDR0h Reserved
47RESERVEDR0h Reserved
46Unable to Source ErrorR0h The Source was unable to increase the voltage to the negotiated voltage of the contract.
45RESERVEDR0h Reserved
44RESERVEDR0h Reserved
43Plug Early NotificationR0h A connection has been detected but not debounced.
42Sink Transition CompletedR0h This event only occurs when in source mode (PD_STATUS.PresentPDRole = 1b). It occurs tSrcTransition (ms) after sending an Accept message to a Request message, just before sending the PS_RDY message.
41-40RESERVEDR0h Reserved
39Message Data ErrorR0h An erroneous message was received.
38Protocol ErrorR0h An unexpected message was received from the partner device.
37RESERVEDR0h Reserved
36Missing Get Capabilities Message ErrorR0h The partner device did not respond to the Get_Sink_Cap or Get_Source_Cap message that was sent.
35Power Event Occurred ErrorR0h An OVP, or ILIM event occurred on VBUS. Or a TSD event occurred.
34Can Provide Voltage or Current Later ErrorR0h The USB PD Source can provide acceptable voltage and current, but not at the present time. A "wait" message was sent or received.
33Cannot Provide Voltage or Current ErrorR0h The USB PD Source cannot provide an acceptable voltage and/or current. A Reject message was sent to the Sink or a Capability Mismatch was received from the Sink.
32Device Incompatible ErrorR0h When set to 1, a USB PD device with an incompatible specification version was connected. Or the partner device is not USB PD capable.
31RESERVEDR0h Reserved
30CMD1 CompleteR0h Set whenever a non-zero value in CMD1 register is set to zero or !CMD.
29-28RESERVEDR0h Reserved
27PD Status UpdatedR0h Set whenever contents of PD_STATUS register (0x40) change.
26Status UpdatedR0h Set whenever contents of STATUS register (0x1A) change.
25RESERVEDR0h Reserved
24Power Status UpdatedR0h Set whenever contents of POWER_STATUS register (0x3F) change.
23Power Path Switch ChangedR0h Set whenever contents of POWER_PATH_STATUS register (0x26) changes.
22RESERVEDR0h Reserved
21USB Host No Longer PresentR0h Set when STATUS.UsbHostPresent transitions to anything other than 11b.
20USB Host PresentR0h Set when STATUS.UsbHostPresent transitions to 11b.
19RESERVEDR0h Reserved
18Data Swap RequestedR0h A DR swap was requested by the Port Partner.
17Power Swap RequestedR0h A PR swap was requested by the Port Partner.
16RESERVEDR0h Reserved
15Sink Cap Message ReceivedR0h
14Source Capabilities Message ReceivedR0h This is asserted when a Source Capabilities message is received from the Port Partner.
13New Contract as ProviderR0h An RDO from the far-end device has been accepted and the PD Controller is a Source. This is asserted after the PS_RDY message has been sent. See ACTIVE_CONTRACT_PDO register (0x34) and ACTIVE_CONTRACT_RDO register (0x35) for details.
12New Contract as ConsumerR0h Far-end source has accepted an RDO sent by the PD Controller as a Sink. See ACTIVE_CONTRACT_PDO register (0x34) and ACTIVE_CONTRACT_RDO register (0x35) for details.
11RESERVEDR0h Reserved
10RESERVEDR0h Reserved
9OvercurrentR0h Set whenever an Overcurrent field (VBUS or VCONN) in the POWER_PATH_STATUS register (0x26) changes.
8RESERVEDR0h Reserved
7RESERVEDR0h Reserved
6RESERVEDR0h Reserved
5Data Swap CompleteR0h A Data Role swap has completed. See STATUS register (0x1A) and PD_STATUS register (0x40) for port state.
4Power Swap CompleteR0h A Power role swap has completed. See STATUS register (0x1A) and PD_STATUS register (0x40) for port state.
3Plug Insert or RemovalR1h USB Plug Status has Changed. See Status register for more plug details.
2RESERVEDR0h Reserved
1PD HardresetR0h A PD Hard Reset has been performed. See PD_STATUS.HardResetDetails for more information.
0RESERVEDR0h Reserved

3.6 Interrupt Mask for I2C1 Register (Offset = 16h) [Reset = 0000000000000000030000h]

Interrupt Mask for I2C1 is shown in Table 3-8.

Return to the Summary Table.

Interrupt mask bit field for INT_EVENT1. A bit in INT_EVENT1 cannot be set if it is cleared in this register. Bytes 1 to 10 of this register are port-specific, but Byte 11( Bits 80-87) is common to all ports in the PD controller.

Table 3-8 Interrupt Mask for I2C1 Register Field Descriptions
BitFieldTypeResetDescription
87-83RESERVEDR/W0h Reserved
82I2C Controller NACKedR/W0h
81Ready for PatchR/W0h
80Patch LoadedR/W0h
79RESERVEDR/W0h
78RESERVEDR/W0h
77RESERVEDR/W0h
76RESERVEDR/W0h
75RESERVEDR/W0h
74RESERVEDR/W0h
73RESERVEDR/W0h Reserved
72RESERVEDR/W0h
71RESERVEDR/W0h
70RESERVEDR/W0h
69RESERVEDR/W0h
68RESERVEDR/W0h
67RESERVEDR/W0h
66MBRD Buffer ReadyR/W0h
65TX Memory Buffer EmptyR/W0h
64RESERVEDR/W0h
63RESERVEDR/W0h
62RESERVEDR/W0h
61RESERVEDR/W0h Reserved
60Liquid DetectionR/W0h Liquid Detection
59RESERVEDR/W0h
58RESERVEDR/W0h
57Ext DCDC Source Safe StateR/W0h
56Ext DCDC Sink Safe StateR/W0h
55RESERVEDR/W0h
54RESERVEDR/W0h
53RESERVEDR/W0h
52RESERVEDR/W0h
51RESERVEDR/W0h
50RESERVEDR/W0h
49RESERVEDR/W0h
48RESERVEDR/W0h
47RESERVEDR/W0h Reserved
46Unable to Source ErrorR/W0h
45RESERVEDR/W0h Reserved
44RESERVEDR/W0h
43Plug Early NotificationR/W0h
42Sink Transition CompletedR/W0h
41RESERVEDR/W0h
40RESERVEDR/W0h Reserved
39Message Data ErrorR/W0h
38Protocol ErrorR/W0h
37RESERVEDR/W0h Reserved
36Missing Get Capabilities Message ErrorR/W0h
35Power Event Occurred ErrorR/W0h
34Can Provide Voltage or Current Later ErrorR/W0h
33Cannot Provide Voltage or Current ErrorR/W0h
32Device Incompatible ErrorR/W0h
31RESERVEDR/W0h
30CMD1 CompleteR/W0h
29-28RESERVEDR/W0h Reserved
27PD Status UpdatedR/W0h
26Status UpdatedR/W0h
25RESERVEDR/W0h
24Power Status UpdatedR/W0h
23Power Path Switch ChangedR/W0h
22RESERVEDR/W0h Reserved
21USB Host No Longer PresentR/W0h
20USB Host PresentR/W0h
19RESERVEDR/W0h Reserved
18Data Swap RequestedR/W0h
17Power Swap RequestedR/W1h
16-15RESERVEDR/W0h Reserved
14Source Cap Message ReceivedR/W0h
13New Contract as ProviderR/W0h
12New Contract as ConsumerR/W0h
11RESERVEDR/W0h
10RESERVEDR/W0h
9OvercurrentR/W0h
8-7RESERVEDR/W0h Reserved
6RESERVEDR/W0h
5Data Swap CompleteR/W0h
4Power Swap CompleteR/W0h
3Plug Insert or RemovalR/W0h
2RESERVEDR/W0h Reserved
1PD HardresetR/W0h
0RESERVEDR/W0h Reserved

3.7 Interrupt Clear for I2C1 Register (Offset = 18h) [Reset = 0000000000000000000000h]

Interrupt Clear for I2C1 is shown in Table 3-9.

Return to the Summary Table.

Interrupt clear bit field for INT_EVENT1. Writing 1 to a specific bit will clear that specific event in INT_EVENT1. Bits set in this register are cleared from INT_EVENT1. Bytes 1 to 10 of this register are port-specific, but Byte 11( Bits 80-87) is common to all ports in the PD controller.

Table 3-9 Interrupt Clear for I2C1 Register Field Descriptions
BitFieldTypeResetDescription
87-83RESERVEDR/W0h Reserved
82I2C Controller NACKedR/W0h
81Ready for PatchR/W0h
80Patch LoadedR/W0h
79RESERVEDR/W0h
78RESERVEDR/W0h
77RESERVEDR/W0h
76RESERVEDR/W0h
75RESERVEDR/W0h
74RESERVEDR/W0h
73RESERVEDR/W0h Reserved
72RESERVEDR/W0h
71RESERVEDR/W0h
70RESERVEDR/W0h
69RESERVEDR/W0h
68RESERVEDR/W0h
67RESERVEDR/W0h
66MBRD Buffer ReadyR/W0h
65TX Memory Buffer EmptyR/W0h
64RESERVEDR/W0h
63RESERVEDR/W0h
62RESERVEDR/W0h
61RESERVEDR/W0h Reserved
60Liquid DetectionR/W0h Liquid Detection
59RESERVEDR/W0h
58RESERVEDR/W0h
57Ext DCDC Source Safe StateR/W0h
56Ext DCDC Sink Safe StateR/W0h
57-55RESERVEDR/W0h Reserved
56-55RESERVEDR/W0h
56-54RESERVEDR/W0h Reserved
55-54RESERVEDR/W0h Reserved
53RESERVEDR/W0h
52RESERVEDR/W0h
51RESERVEDR/W0h
50RESERVEDR/W0h
49RESERVEDR/W0h
48RESERVEDR/W0h
47RESERVEDR/W0h Reserved
46Unable to Source ErrorR/W0h
45RESERVEDR/W0h Reserved
44RESERVEDR/W0h
43Plug Early NotificationR/W0h
42Sink Transition CompletedR/W0h
41RESERVEDR/W0h
40RESERVEDR/W0h Reserved
39Message Data ErrorR/W0h
38Protocol ErrorR/W0h
37RESERVEDR/W0h Reserved
36Missing Get Capabilities Message ErrorR/W0h
35Power Event Occurred ErrorR/W0h
34Can Provide Voltage or Current Later ErrorR/W0h
33Cannot Provide Voltage or Current ErrorR/W0h
32Device Incompatible ErrorR/W0h
31RESERVEDR/W0h
30CMD1 CompleteR/W0h
29-28RESERVEDR/W0h Reserved
27PD Status UpdatedR/W0h
26Status UpdatedR/W0h
25RESERVEDR/W0h
24Power Status UpdatedR/W0h
23Power Path Switch ChangedR/W0h
22RESERVEDR/W0h Reserved
21USB Host No Longer PresentR/W0h
20USB Host PresentR/W0h
19RESERVEDR/W0h Reserved
18Data Swap RequestedR/W0h
17Power Swap RequestedR/W0h
16-15RESERVEDR/W0h Reserved
14Source Cap Message ReceivedR/W0h
13New Contract as ProviderR/W0h
12New Contract as ConsumerR/W0h
11RESERVEDR/W0h
10RESERVEDR/W0h
9OvercurrentR/W0h
8-7RESERVEDR/W0h Reserved
6RESERVEDR/W0h
5Data Swap CompleteR/W0h
4Power Swap CompleteR/W0h
3Plug Insert or RemovalR/W0h
2RESERVEDR/W0h Reserved
1PD HardresetR/W0h
0RESERVEDR/W0h Reserved

3.8 Status Register (Offset = 1Ah) [Reset = 0000000000h]

Status is shown in Table 3-10.

Return to the Summary Table.

Status bit field for non-interrupt events.

Table 3-10 Status Register Field Descriptions
BitFieldTypeResetDescription
39-34RESERVEDR0h Reserved
33-32RESERVEDR0h Reserved
31RESERVEDR0h Reserved
30SOC Ack TimeoutR0h Indicates whether the attached SoC has responded timely.
0h = SoC has responded timely
1h = SoC has not responded timely
29-28RESERVEDR0h Reserved
27BISTR0h Indicates if a BIST procedure is in progress.
0h = No BIST in progress
1h = BIST in progress
26RESERVEDR0h Reserved
25-24Acting as LegacyR0h Indicates when PD Controller has gone into a mode where it is acting like a legacy (non PD) device. It can take approximately 10 seconds for the PD controller to determine that it is attached to a legacy source or sink.
0h = PD Controller is not in a legacy (non PD) mode
1h = PD Controller is acting like a legacy sink
2h = PD Controller is acting like a legacy source
3h = Acting as legacy sink due to dead-battery.
23-22USB Host PresentR0h USB host attachment status.
0h = No host present
1h = Attached source is not data capable
2h = Attached source is not USB PD capable
3h = Host present
21-20VBUS StatusR0h Indicates the present state of VBUS.
0h = At vSafe0V (less than 0.8V)
1h = At vSafe5V (4.75V to 5.5V)
2h = Within expected limits
3h = Not within any of the other specified ranges
19-7RESERVEDR0h Reserved
6Data RoleR0h PD controller data role. This is only valid once there is a connection.
0h = Upward-facing port (UFP)
1h = Downward-facing port (DFP)
5Port RoleR0h Current state of PD Controller CCx terminations. This also indicates the PD Controller Power Role, once connected. This bit does not toggle during Unattached.* state transitions.
0h = PD Controller is in the Sink role
1h = PD Controller is Source (CCx pull-up active)
4Plug OrientationR0h Plug orientation indicator. Indicates port orientation when known (requires connection).
0h = Upside-up orientation (plug CC on CC1)
1h = Upside-down orientation (plug CC on CC2)
3-1Connection StateR0h Details of a connected plug.
0h = No connection
1h = Port is disabled
2h = Audio connection (Ra/Ra)
3h = Debug connection (Rd/Rd)
4h = No connection Ra detected (Ra but no Rd)
5h = Reserved (may be used for Rp/Rp Debug connection)
6h = Connection present no Ra detected
7h = Connection present Ra detected
0Plug PresentR0h Status of the plug
0h = No plug is connected
1h = A plug is connected

3.9 Power Path Status Register (Offset = 26h) [Reset = 0000000000h]

Power Path Status is shown in Table 3-11.

Return to the Summary Table.

Power Path Status.

Table 3-11 Power Path Status Register Field Descriptions
BitFieldTypeResetDescription
39-38Power SourceR0h Indicates current PD Controller power source. NOTE: Since the Dead Battery flag forces PD Controller to be powered from VBUS, only 10b is valid when this flag is set. Any other setting indicates that the Dead Battery flag is not set.
0h = Reserved
1h = PD Controller is powered from VIN_3V3
2h = PD Controller is powered from VBUS
3h = Reserved
37-35RESERVEDR0h Reserved
34PPCable1 OvercurrentR0h PP_CABLE1 overcurrent indicator. Asserted if an overcurrent condition exists on PP_CABLE1 (VCONN).
33-29RESERVEDR0h Reserved
28PP1 OvercurrentR0h PP_5V1 overcurrent indicator. Asserted if an overcurrent conditions exists on PP1 switch (PP_5V1).
27-21RESERVEDR0h Reserved
20-18RESERVEDR0h Reserved
17-15RESERVEDR0h Reserved
14-12PP3 SwitchR0h Indicates current state of PP3 (PP_EXT1).
0h = PP3 switch disabled
1h = PP3 switch currently disabled due to fault
2h = PP3 switch enabled (system output)
3h = PP3 switch enabled (system input)
11-9RESERVEDR0h Reserved
8-6PP1 SwitchR0h Indicates current state of PP1 switch (PP_5V1).
0h = PP1 switch disabled
1h = PP1 switch currently disabled due to fault
2h = PP1 switch enabled (system output)
5-2RESERVEDR0h Reserved
1-0PPCable1 SwitchR0h Indicates current state of PP_CABLE1 switch.
0h = PP_CABLE1 switch disabled
1h = PP_CABLE1 switch currently disabled
2h = PP_CABLE1 switch CC1 enabled (system output)
3h = PP_CABLE1 switch CC2 enabled (system output)

3.10 Port Configuration Register (Offset = 28h) [Reset = 000000000000000000000000002F4802h]

Port Configuration is shown in Table 3-12.

Return to the Summary Table.

Configuration for port-specific hardware. This register configures hardware that is specific for each port and in most cases will not change in normal operation or will not require immediate action if changed. Any modifications to this register will cause a port disconnect and reconnect with the new settings. Initialized by Application Customization.

Table 3-12 Port Configuration Register Field Descriptions
BitFieldTypeResetDescription
127-96RESERVEDR/W0h Reserved
95-80RESERVEDR/W0h Reserved
79-73RESERVEDR/W0h Reserved
72RESERVEDR/W0h Reserved
71-64RESERVEDR/W0h Reserved
63-48VBUS For Valid PPS StatusR/W0h
47-32APDO VBUS Uvp TripPoint Offset R/W0h
31RESERVEDR/W0h Reserved
30-29APDO ILIM Over Shoot R/W0h
28-27APDO VBUS UVP ThresholdR/W0h
26-24VBUS Sink UVP Trip HVR/W0h VBUS disconnect when power role is sink. The disconnect threshold is set to (1-VBUS_SinkUvpTripHV)*(min expected VBUS). The 000b setting follows the USB-C specification requirements. Use a non-zero value for additional margin.
0h = 5%
1h = 10%
2h = 15%
3h = 20%
4h = 25%
5h = 30%
6h = 40%
7h = 50%
23-22RESERVEDR/W0h Reserved
21-20OVP for PP5VR/W2h VBUS OVP settings while sourcing from PP5V. This applies while sourcing through PP1 or PP2. See data-sheet for voltage range.
0h = Use setting 0: 5.25 V (typical)
1h = Use setting 1: 5.5 V (typical)
2h = Use setting 2: 5.8 V (typical)
3h = Use setting 3: 6.1 V (typical)
19-18RESERVEDR/W0h Reserved
17-16VBUS OVP UsageR/W3h OVP configuration settings. These two bits are used to select the OVP trip-point. The PD controller automatically computes the lowest threshold that does not overlap with the expected maximum voltage (including maximum tolerance allowed by USB PD specification). The OVP trip-point will be set at the selected percentage of the computed threshold.
0h = 100%
1h = 105%
2h = 111%
3h = 114%
15RESERVEDR/W0h Reserved
14-13RESERVEDR/W0h Reserved
12RESERVEDR/W0h
11RESERVEDR/W0h Reserved
10Disable PDR/W0h Assert this bit to disable USB PD.
9-8TypeC Support OptionsR/W0h Configuration for optional features. This register controls whether optional Type-C state machine states are supported. NOTE: These states are mutually-exclusive and these options only exist when specific Type-C state machines are used.
0h = No Type-C optional states are supported
1h = Try.SRC state is supported as a DRP
3h = Reserved
7-2RESERVEDR/W0h Reserved
1-0TypeC State machineR/W2h Port Configuration.
0h = Sink state machine only
1h = Source state machine only
2h = DRP state machine
3h = Disabled

3.11 Port Control Register (Offset = 29h) [Reset = 03915052h]

Port Control is shown in Table 3-13.

Return to the Summary Table.

Configuration bits affecting system policy. These bits may change during normal operation and are used for controlling the respective port. The PD Controller will not take immediate action upon writing. Changes made to this register will take effect the next time the appropriate policy is invoked. Initialized by Application Customization.

Table 3-13 Port Control Register Field Descriptions
BitFieldTypeResetDescription
31-30Charger Detect EnableR/W0h Configure the types of legacy chargers to detect.
0h = Do not detect any legacy chargers
1h = Detect BC 1.2 chargers
2h = Reserved do not use
3h = Detect BC 1.2 and proprietary legacy chargers
29RESERVEDR/W0h Reserved
28-26Charger Advertise EnableR/W0h Configure the types of legacy chargers to emulate.
0h = Do not emulate any legacy charger
1h = BC 1.2 CDP only
2h = BC 1.2 DCP only
3h = Reserved
4h = Reserved
5h = DCP Auto 1 (2.7V and DCP)
6h = DCP Auto 2 (1.2V 2.7V and DCP)
7h = Reserved
25RESERVEDR/W0h Reserved
24Resistor 15k PresentR/W1h Configure D+ and D- termination. Assert this bit if there is a 15kOhm pull-down on D+ and D- (USB2.0 Host Phy pull-downs enabled). This should not be used for DCP or DCP Auto modes.
0h = System does NOT have 15 kOhm pull-down
1h = System has 15 kOhm pull-down
23RESERVEDR/W0h Reserved
22RESERVEDR/W0h Reserved
21RESERVEDR/W0h Reserved
20Enable Current MonitorR/W1h Assert this bit to enable the current monitor (peak and average) that are read from the ADC_RESULTS register. While asserted the PD controller will remain in the active power mode.
19Unconstrained PowerR/W0h External power configuration. This also sets the Unconstrained Power bit defined by USB PD. When this bit is changed from 1 to 0 the PD controller will not attempt a power role swap with the Port Partner. If a power role swap is desired the host should issue a 'SWSr' 4CC command.
0h = No external power
1h = External power present
18RESERVEDR/W0h Reserved
17RESERVEDR/W0h Reserved
16RESERVEDR/W0h Reserved
15Initiate Swap to DFPR/W0h Configure DR_Swap to DFP initiation. If this bit is asserted, the PD Controller automatically initiates and sends DR_Swap requests to the Port Partner when appropriate if presently operating as UFP.
14Process Swap to DFPR/W1h Configure response to DR_Swap to DFP. If this bit is asserted, the PD Controller will automatically accept a DR_Swap request to become a DFP. Otherwise, the PD Controller will reject such a request.
13Initiate Swap to UFPR/W0h Configure DR_Swap to UFP initiation. If this bit is asserted, the PD Controller automatically initiates and sends DR_Swap requests to the Port Partner when appropriate if presently operating as DFP.
12Process Swap to UFPR/W1h Configure response to DR_Swap to UFP. If this bit is asserted, the PD Controller will automatically accept a DR_Swap request to become a UFP. Otherwise, the PD Controller will reject such a request.
11RESERVEDR/W0h Reserved
10RESERVEDR/W0h Reserved
9RESERVEDR/W0h Reserved
8RESERVEDR/W0h Reserved
7Initiate Swap to SourceR/W0h Configure PR_Swap to source initiation. If this bit is asserted, the PD Controller automatically initiates and sends PR_Swap requests to the Port Partner when appropriate if presently operating as Sink (C/P).
6Process Swap to SourceR/W1h Configure response to PR_Swap to source. If this bit is asserted, the PD Controller will automatically accept a PR_Swap request to become a Source. Otherwise, the PD Controller will reject such a request.
5Initiate Swap to SinkR/W0h Configure PR_Swap to sink initiation. If this bit is asserted, the PD Controller automatically initiates and sends PR_Swap requests to the Port Partner when appropriate if presently operating as Source (P/C).
4Process Swap to SinkR/W1h Configure response to PR_Swap to sink. If this bit is asserted, the PD Controller will automatically accept a PR_Swap request to become a Sink. Otherwise, the PD Controller will reject such a request.
3-2RESERVEDR/W0h Reserved
1-0TypeC CurrentR/W2h Type-C Current advertisement. This setting is ignored if a Source role is not enabled and active. This setting is also ignored during an explicit USB PD contract, where the Rp value is used for collision avoidance as required by the USB PD specification. Note that when PP5V is low, the FW will only use the default Type-C current regardless of the value in this field.
0h = USB Default Current
1h = 1.5 A
2h = 3.0 A
3h = Reserved

3.12 Boot Flags Register (Offset = 2Dh) [Reset = 0000000000h]

Boot Flags is shown in Table 3-14.

Return to the Summary Table.

Detailed status of boot process. This register provides details on PD Controller boot flags, Customer OTP configuration, and silicon revision

Table 3-14 Boot Flags Register Field Descriptions
BitFieldTypeResetDescription
39-32Revision IDR0h Revision ID for the PD controller.
31-29Patch Config SourceR0h Source of patch configuration. This field indicates the source of the configuration patch that has been successfully loaded.
0h = No configuration has been loaded
4h = Reserved
5h = A configuration has been loaded from EEPROM
6h = A configuration has been loaded from I2C
7h = Reserved
28-27RESERVEDR0h Reserved
26-25RESERVEDR0h
24RESERVEDR0h Reserved
23-20RESERVEDR0h Reserved
19System TSDR0h System thermal shut-down indicator. This bit is asserted if the PD controller is rebooting after the system thermal sensor caused a reset.
18RESERVEDR0h Reserved
17RESERVEDR0h Reserved
16-14RESERVEDR0h Reserved
13Region 1 CRC FailR0h Region 1 CRC status indicator. This bit is asserted when the CRC of data read from Region 1 of EEPROM memory failed.
12Region 0 CRC FailR0h Region 0 CRC status indicator. This bit is asserted when the CRC of data read from Region 0 of EEPROM memory failed.
11RESERVEDR0h Reserved
10Patch Download ErrorR0h Asserted when a patch download error occurs.
9Region 1 EEPROM ErrorR0h Region 1 status indicator. This bit is asserted when an error occurred attempting to read Region 1 of EEPROM memory. A retry may have been successful.
8Region 0 EEPROM ErrorR0h Region 0 status indicator. This bit is asserted when an error occurred attempting to read Region 0 of EEPROM memory. A retry may have been successful.
7Region 1 InvalidR0h Region 1 header status indicator. This bit is asserted when Region 1 header of the EEPROM memory was invalid.
6Region 0 InvalidR0h Region 0 header status indicator. This bit is asserted when Region 0 header of the EEPROM memory was invalid.
5Region 1R0h Region 1 attempted indicator. This bit is asserted when Region 1 of the EEPROM memory was attempted.
4Region 0R0h Region 0 attempted indicator. This bit is asserted when Region 0 of the EEPROM memory was attempted.
3I2C EEPROM PresentR0h EEPROM presence indicator. This bit is asserted when an EEPROM device was discovered during boot.
2Dead Battery FlagR0h Dead Battery flag indicator. This bit is asserted when the PD Controller booted in dead-battery mode.
1RESERVEDR0h Reserved
0Patch Header ErrorR0h Asserted when a patch bundle header errors.

3.13 Received Source Capabilities Register (Offset = 30h) [Reset = 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000h]

Received Source Capabilities is shown in Table 3-15.

Return to the Summary Table.

Received Source Capabilities. This register stores latest Source Capabilities message received over BMC.

Table 3-15 Received Source Capabilities Register Field Descriptions
BitFieldTypeResetDescription
423-232RESERVEDR0h Reserved
231-200Source PDO 7R0h Seventh Source Capabilities PDO received
199-168Source PDO 6R0h Sixth Source Capabilities PDO received
167-136Source PDO 5R0h Fifth Source Capabilities PDO received
135-104Source PDO 4R0h Fourth Source Capabilities PDO received
103-72Source PDO 3R0h Third Source Capabilities PDO received
71-40Source PDO 2R0h Second Source Capabilities PDO received
39-8Source PDO 1R0h First Source Capabilities PDO received
7-3RESERVEDR0h Reserved
2-0Number Valid PDOsR0h Number of valid PDOs in this register. Each PDO is 4 bytes. (max of 7)

3.14 Received Sink Capabilities Register (Offset = 31h) [Reset = 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000h]

Received Sink Capabilities is shown in Table 3-16.

Return to the Summary Table.

Received Sink Capabilities. This register stores latest Sink Capabilities message received over BMC.

Table 3-16 Received Sink Capabilities Register Field Descriptions
BitFieldTypeResetDescription
423-232RESERVEDR0h Reserved
231-200Sink PDO 7R0h Seventh Sink Capabilities PDO received
199-168Sink PDO 6R0h Sixth Sink Capabilities PDO received
167-136Sink PDO 5R0h Fifth Sink Capabilities PDO received
135-104Sink PDO 4R0h Fourth Sink Capabilities PDO received
103-72Sink PDO 3R0h Third Sink Capabilities PDO received
71-40Sink PDO 2R0h Second Sink Capabilities PDO received
39-8Sink PDO 1R0h First Sink Capabilities PDO received
7-3RESERVEDR0h Reserved
2-0Number Valid PDOsR0h Number of valid PDOs in this register. Each PDO is 4 bytes. (max of 7)

3.15 Transmit Source Capabilities Register (Offset = 32h) [Reset = 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000058260C844C2AA801h]

Transmit Source Capabilities is shown in Table 3-17.

Return to the Summary Table.

Source Capabilities for sending. This register stores PDOs and settings for outgoing Source Capabilities PD messages. Initialized by Application Customization.

Table 3-17 Transmit Source Capabilities Register Field Descriptions
BitFieldTypeResetDescription
503-485RESERVEDR/W0h Reserved
484RESERVEDR/W0h Reserved
483RESERVEDR/W0h Reserved
482RESERVEDR/W0h Reserved
481RESERVEDR/W0h Reserved
480RESERVEDR/W0h Reserved
479RESERVEDR/W0h Reserved
478RESERVEDR/W0h Reserved
477RESERVEDR/W0h Reserved
476RESERVEDR/W0h Reserved
475RESERVEDR/W0h Reserved
474RESERVEDR/W0h Reserved
473RESERVEDR/W0h Reserved
472RESERVEDR/W0h Reserved
471-248RESERVEDR/W0h Reserved
247-216TX Source PDO 7R/W0h Seventh Source Capabilities PDO contents.
215-184TX Source PDO 6R/W0h Sixth Source Capabilities PDO contents.
183-152TX Source PDO 5R/W0h Fifth Source Capabilities PDO contents.
151-120TX Source PDO 4R/W0h Fourth Source Capabilities PDO contents.
119-88TX Source PDO 3R/W0h Third Source Capabilities PDO contents.
87-56TX Source PDO 2R/W58h Second Source Capabilities PDO contents.
55-24TX Source PDO 1R/W260C844Ch First Source Capabilities PDO contents.
23-22RESERVEDR/W0h Reserved
21-20Power Path for PDO 7R/W2h Configures which PP to use for PDO7. Same format as PowerPathForPDO2.
19-18Power Path for PDO 6R/W2h Configures which PP to use for PDO6. Same format as PowerPathForPDO2.
17-16Power Path for PDO 5R/W2h Configures which PP to use for PDO5. Same format as PowerPathForPDO2.
15-14Power Path for PDO 4R/W2h Configures which PP to use for PDO4. Same format as PowerPathForPDO2.
13-12Power Path for PDO 3R/W2h Configures which PP to use for PDO3. Same format as PowerPathForPDO2.
11-10Power Path for PDO 2R/W2h Configures which PP to use for PDO2.
0h = Reserved
1h = Reserved
2h = PP_EXT1 is used for this PDO
9-8Power Path for PDO 1R/W0h Configures which PP to use for PDO1.
0h = PP_5V1 is used for this PDO
2h = PP_EXT1 is used for this PDO
7-3RESERVEDR/W0h Reserved
2-0Number Valid PDOsR/W1h Number of valid PDOs in this register. Each PDO is 4 bytes. (max of 7)

3.16 Transmit Sink Capabilities Register (Offset = 33h) [Reset = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091258360C839D04h]

Transmit Sink Capabilities is shown in Table 3-18.

Return to the Summary Table.

Sink Capabilities for sending. This register stores PDOs for outgoing Sink Capabilities USB PD messages. Initialized by Application Customization. The PD controller transmits the contents of this register as a Sink_Capabilities message after receiving a Get_Sink_Cap message unless its configuration or USB PD rules require a different response in the context. Writes to this register have no immediate effect. The PD controller updates and uses this register each time it needs to send a Sink Capabilities message. Each PDO in this TX_SINK_CAPS register follows the definition from the USB PD specification. For more details on the meaning of each field refer to the USB PD specification.

Table 3-18 Transmit Sink Capabilities Register Field Descriptions
BitFieldTypeResetDescription
423-232RESERVEDR/W0h Reserved
231-200TX Sink PDO 7R/W0h Seventh Sink Capabilities PDO contents.
199-168TX Sink PDO 6R/W0h Sixth Sink Capabilities PDO contents.
167-136TX Sink PDO 5R/W0h Fifth Sink Capabilities PDO contents.
135-104TX Sink PDO 4R/W0h Fourth Sink Capabilities PDO contents.
103-72TX Sink PDO 3R/W0h Third Sink Capabilities PDO contents.
71-40TX Sink PDO 2R/W00091258h Second Sink Capabilities PDO contents.
39-8TX Sink PDO 1R/W360C839Dh First Sink Capabilities PDO contents.
7-3RESERVEDR/W0h Reserved
2-0Number Valid PDOsR/W4h

3.17 Active PDO Contract Register (Offset = 34h) [Reset = 000000000000h]

Active PDO Contract is shown in Table 3-19.

Return to the Summary Table.

Power data object for active contract. This register stores PDO data for the current explicit USB PD contract, or all zeroes if no contract.

Table 3-19 Active PDO Contract Register Field Descriptions
BitFieldTypeResetDescription
47-42RESERVEDR0h Reserved
41-32First PDO Control BitsR0h Contains bits 29:20 of the first PDO. It does not matter which PDO was selected, this field is always drawn from the first PDO.
31-0Active PDOR0h Power data object. This field contains the contents of the PDO Requested by PD Controller as Sink and Accepted by Source, once it is Accepted by Source.

3.18 Active RDO Contract Register (Offset = 35h) [Reset = 000000000000000000000000h]

Active RDO Contract is shown in Table 3-20.

Return to the Summary Table.

Power data object for the active contract. This register stores the RDO of the current explicit USB PD contract, or all zeroes if no contract.

Table 3-20 Active RDO Contract Register Field Descriptions
BitFieldTypeResetDescription
95-32RESERVEDR0h Reserved
31-28Object PositionR0h As defined by USB PD.
27Give Back FlagR0h As defined by USB PD.
26Capability MissmatchR0h As defined by USB PD.
25USB Communication CapableR0h As defined by USB PD.
24No USB SuspendR0h As defined by USB PD.
23Unchunked SupportedR0h As defined by USB PD.
22-20RESERVEDR0h Reserved
19-10Operating CurrentR0h As defined by USB PD.
9-0Max Min Operation CurrentR0h As defined by USB PD.

3.19 Autonegotiate Sink Register (Offset = 37h) [Reset = 00000000000000000000000000000000000191904114503Eh]

Autonegotiate Sink is shown in Table 3-21.

Return to the Summary Table.

Configuration for sink power negotiations. This register defines the voltage range between which the system can function properly, allowing the PD Controller to negotiate its own contracts. Initialized by Application Customization.

Table 3-21 Autonegotiate Sink Register Field Descriptions
BitFieldTypeResetDescription
191-116RESERVEDR/W0h Reserved
115-105PPS Output VoltageR/W0h This is the desired output voltage in 20mV units. This is inserted as-is into the Request USB PD message. Note that some PD controllers are unable to turn on the gate-drivers if VBUS less than 3.8V, check the VBUS UVLO value in the data-sheet.
104-103RESERVEDR/W0h Reserved
102-96PPS Operating CurrentR/W0h Operation current in Sink PPS mode. This is the desired operating current in 50 mA units. This is inserted as-is into the Request USB PD message.
95-70RESERVEDR/W0h Reserved
69PPS Disable Sink Upon Non APDO ContractR/W0h Sink path handling during supply type transition. If this bit is asserted and the selected supply type is NOT a PPS APDO, then the sink path is disabled before sending the Request message. The host should only assert this bit after a PPS contract has been negotiated. This bit has no effect unless PPSEnableSinkMode is asserted.
68PPS Required Full Voltage RangeR/W0h Select only a source with full voltage range. If this bit is asserted, a PPS supply type is not selected unless the APDO.MinVoltage ≤ TX_SINK_CAPS.MinPpsVoltage, APDO.MaxVoltage ≥ TX_SINK_CAPS.MaxPpsVoltage, and APDO.MaxCurrent ≥ TX_SINK_CAPS.MaxPpsCurrent. This bit has no effect unless PPSEnableSinkMode is asserted.
67PPS Source Operating ModeR/W0h Selection for CV or CC mode. If this bit is set to 1, then the PD controller assumes the system is in constant voltage mode and sets the VBUS disconnect threshold accordingly. If this bit is set to 0, then the PD controller will assume the system is in current limit mode and it will lower the VBUS disconnect threshold accordingly.
66-65PPS Request IntervalR/W0h Sink PPS request interval. This field sets the frequency at which the PD controller will send a new request to the source even if the host has not made any change in the request.
0h = 8 seconds
1h = 4 seconds
2h = 2 seconds
3h = 1 second
64PPS Enable Sink ModeR/W0h Enable Sink PPS mode. If this bit is asserted, then the PD controller will attempt to negotiate a PPS sink contract. PPS contracts are prioritized over any other supply type.
63-62RESERVEDR/W0h Reserved
61-52Auto Neg Capabilities Mismatch PowerR/W0h Capabilities Mismatch Power Threshold. If the selected PDO offers less power than what is specified in this register, then the PD controller will assert the Capability Mismatch bit in its Request message unless NoCapabilityMismatch is set to 1. (250mW per LSB)
51-42Auto Neg Min VoltageR/W64h Minimum voltage to request. During PD power contract negotiation, the PD controller will only select voltages that are greater than or equal to the value specified in this field. Not used unless AutoComputeSinkMinVoltage=0. (50mV per LSB)
41-32Auto Neg Max VoltageR/W190h Maximum voltage to request. During PD power contract negotiation, the PD controller will only select voltages that are less than or equal to the value specified in this field. Not used unless AutoComputeSinkMinVoltage=0. (50mV per LSB)
31-22Auto Neg Sink Min Required PowerR/W104h Minimum operating power required by the Sink. The PD Controller will always attempt to receive this power level from the Source. (250mW per LSB)

See description in AutoComputeSinkMinPower field

21-12RESERVEDR/W0h Reserved
11-8RESERVEDR/W0h Reserved
7RESERVEDR/W0h Reserved
6Auto Disable Sink Upon Capability MismatchR/W0h Sink path and capability mismatch settings. If this bit is asserted, then any time the implicit or explicit power contract would cause the Capability Mismatch bit to be set the PD controller will disable the sinking path. The 'SRDY' 4CC task can override and enable the sink path. However, if the contract changes after the 'SRDY' has completed, the PD controller will disable the sink path if the contract causes a capability mismatch. This bit should only be asserted if the NoCapabilityMismatch bit is set to 0.
5Auto Compute Sink Max VoltageR/W1h Configuration for maximum voltage. The PD controller can automatically compute ANMaxVoltage, or allow the host to specify it.
0h = Provided by host
1h = Computed by PD controller
4Auto Compute Sink Min VoltageR/W1h Configuration for minimum voltage. The PD controller can automatically compute ANMinVoltage, or allow the host to specify it.
0h = Provided by host
1h = Computed by PD controller
3No Capability MismatchR/W1h Configuration for capability mismatch in RDO. There are two conditions that will trigger a capability mismatch:
  • If the attached source does not offer a PDO whose power is greater or equal to the ANSinkCapMismatchPower field in this register.
  • PPS is enabled in this register and the attached source did not offer a PPS PDO that matches the requirements in TX_SINK_CAPS.
If either condition is true, then the PD controller will assert the capability mismatch bit in its request unless this bit is asserted.
0h = Capability mismatch enabled
1h = Capability mismatch disabled.
2Auto Compute Sink Min PowerR/W1h Minimum power sink requires. The minimum sink power is the largest power reported in any valid PDO in the TX_SINK_CAPS (0x33). The power for a particular PDO from the TX_SINK_CAPS follows for each supply type:
  • Battery Supply: OperatingPower
  • Variable Supply: MaxVoltage*OperatingCurrent
  • Fixed Supply: Voltage*OperatingCurrent.
However, if the TX_SINK_CAPS register includes Battery supply type PDO(s), then ANSinkMinRequiredPower = maximum OperatingPower in a Battery supply type PDO.
0h = Provided by host
1h = Computed by PD controller
1No USB SuspendR/W1h Value used for the NoUSBSusp Flag in the RDO. This is as defined by USB PD.
0Auto Neg RDO PriorityR/W0h Configuration for tie-breaker in PDO selection. The PD controller will find the set of PDOs that fulfill the voltage requirements. From that set of PDOs it will pick the one with higher power. If two acceptable PDOs have the same power, Fixed Supply Type is preferred, and then Variable Supply has second preference. If two PDOs have the same power and the same type, then this bit determines which PDO is selected.
0h = Higher voltage
1h = Lower voltage

3.20 Power Status Register (Offset = 3Fh) [Reset = 0000h]

Power Status is shown in Table 3-22.

Return to the Summary Table.

Details about the power of the connection. This register reports status regarding the power of the connection.

Table 3-22 Power Status Register Field Descriptions
BitFieldTypeResetDescription
15-10RESERVEDR0h Reserved
9-8Charger Advertise StatusR0h Charger Advertise Status
0h = Charger advertise disabled or not run
1h = Charger advertisement in process
2h = Charger advertisement complete
3h = Reserved
7-4Charger Detect StatusR0h
0h = Charger detection disabled or not run
1h = Charger detection in progress
2h = Charger detection complete none detected
3h = Charger detection complete SDP detected
4h = Charger detection complete BC 1.2 CDP detected
5h = Charger detection complete BC 1.2 DCP detected
6h = Charger detection complete Divider1 DCP detected
7h = Charger detection complete Divider2 DCP detected
8h = Charger detection complete Divider3 DCP detected
9h = Charger detection complete 1.2V DCP detected
3-2TypeC CurrentR0h This field is redundant with PD_STATUS.CCPullUp in register 0x40 when SourceSink is 1b. This field is redundant with PORT_CONTROL.TypeCCurrent in register 0x29 when SourceSink is 0b. In the future, this redundant field may be removed. This field is intended for Type-C Sink operation. If the port is connected as source, the field is updated upon initial connection only.
0h = USB Default Current
1h = 1.5 A
2h = 3.0 A
3h = Explicit PD contract sets current
1SourceSinkR0h Source / Sink indicator. This bit is equivalent to PresentPDRole in register 0x40. It is replicated in this register for convenience. In the future, this redundant bit may be removed.
0h = Connection requests power
1h = Connection provides power (PD Controller as sink)
0Power ConnectionR0h Asserted if there is a connection. This bit is asserted when PlugPresent is TRUE and ConnState is greater than 5h. So it is redundant with information from register 0x1A. It is replicated in this register for convenience. In the future this redundant bit may be removed.
0h = No connection
1h = Connection present

3.21 PD Status Register (Offset = 40h) [Reset = 00000000h]

PD Status is shown in Table 3-23.

Return to the Summary Table.

Status of PD and Type-C state-machine. This register contains details regarding the status of PD messages and the Type-C state machine.

Table 3-23 PD Status Register Field Descriptions
BitFieldTypeResetDescription
31RESERVEDR0h Reserved
30-28RESERVEDR0h Reserved
27-22RESERVEDR0h Reserved
21-16Hard Reset DetailsR0h Reason for Hard Reset
0h = Reset value no hard reset
1h = Received from Port Partner
2h = Requested by host
3h = Invalid DR_Swap request during Active Mode
4h = DischargeFailed.
5h = NoResponseTimeOut.
6h = SendSoftReset.
7h = Sink_SelectCapability.
8h = Sink_TransitionSink.
9h = Sink_WaitForCapabilities.
Ah = SoftReset.
Bh = SourceOnTimeout.
Ch = Source_CapabilityResponse.
Dh = Source_SendCapabilities.
Eh = SourcingFault.
Fh = UnableToSource.
10h = FRS failure
11h = Unexpected message
12h = Failure to to complete the VCONN recovery sequence within 200ms after PP5V rising edge
15-13RESERVEDR0h Reserved
12-8Soft Reset DetailsR0h Reason for Soft Reset
0h = Reset value no soft reset
1h = Soft reset received from Port Partner
2h = Reserved
3h = Reserved
4h = Received source capabilities message was invalid
5h = Message retries were exhausted
6h = Received an accept message unexpectedly
7h = Received a control message unexpectedly
8h = Received a GetSinkCap message unexpectedly
9h = Received a GetSourceCap message unexpectedly
Ah = Received a GotoMin message unexpectedly
Bh = Received a PS_RDY message unexpectedly
Ch = Received a Ping message unexpectedly
Dh = Received a Reject message unexpectedly
Eh = Received a Request message unexpectedly
Fh = Received a Sink Capabilities message unexpectedly
10h = Received Source Capabilities message unexpected
11h = Received a Swap message unexpectedly
12h = Received a Wait Capabilities message unexpectedly
13h = Received an unknown control message
14h = Received an unknown data message
15h = To initialize SOP' controller in plug
16h = To initialize SOP'' controller in plug
17h = Received an Extended message unexpectedly
18h = Received an unknown Extended message
19h = Received a data message unexpectedly
1Ah = Received a Not Supported message unexpectedly
1Bh = Received a Get_Status message unexpectedly
7RESERVEDR0h Reserved
6Present PD RoleR0h Present PD power role. The PD Controller is acting under this PD power role.
0h = Sink
1h = Source
5-4Port TypeR0h Present Type-C power role. The PD Controller is acting under this Type-C power role.
0h = Sink/Source
1h = Sink
2h = Source
3h = Source/Sink
3-2CC PullupR0h CC Pull-up value. The pull-up value detected by PD Controller when in CC Pull-down mode.
0h = Not in CC pull-down mode / no CC pull-up detected
1h = USB Default current
2h = 1.5 A (SinkTxNG)
3h = 3.0 A (SinkTxOK)
1-0RESERVEDR0h Reserved

3.22 IO Config Register (Offset = 5Ch) [Reset = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000014CFh]

IO Config is shown in Table 3-24.

Return to the Summary Table.

Application-specific GPIO Configurations. This register cannot be modified at run-time, the GPIO configurations are set according to the configuration during the boot process.

Table 3-24 IO Config Register Field Descriptions
BitFieldTypeResetDescription
391-384GPIO 12 Mapped EventR0h Event table mapping for GPIO12. See GPIO Event table.
383-376GPIO 11 Mapped EventR0h Event table mapping for GPIO11. See GPIO Event table.
375-368GPIO 10 Mapped EventR0h Event table mapping for GPIO10. See GPIO Event table.
367-352RESERVEDR0h Reserved
351-344GPIO 7 Mapped EventR0h Event table mapping for GPIO7. See GPIO Event table.
343-336GPIO 6 Mapped EventR0h Event table mapping for GPIO6. See GPIO Event table.
335-328GPIO 5 Mapped EventR0h Event table mapping for GPIO5. See GPIO Event table.
327-320GPIO 4 Mapped EventR0h Event table mapping for GPIO4. See GPIO Event table.
319-312GPIO 3 Mapped EventR0h Event table mapping for GPIO3. See GPIO Event table.
311-304GPIO 2 Mapped EventR0h Event table mapping for GPIO2. See GPIO Event table.
303-296GPIO 1 Mapped EventR0h Event table mapping for GPIO1. See GPIO Event table.
295-288GPIO 0 Mapped EventR0h Event table mapping for GPIO0. See GPIO Event table.
287-269RESERVEDR0h Reserved
268-256GPIO Event PolarityR0h Controls polarity of a selected output event for each GPIO. Assert the bit for a given GPIO to invert the polarity of the event mapped to it. This field has no impact for input GPIO Events.
255-230RESERVEDR0h Reserved
229GPIO 5 Analog Input ControlR0h Assert when GPIO5 is used as an analog input. This must also be asserted when PORT_CONTROL.ChargerDetectEnable or ChargerAdvertiseEnable is non-zero.
228GPIO 4 Analog Input ControlR0h Assert when GPIO4 is used as an analog input. This must also be asserted when PORT_CONTROL.ChargerDetectEnable or ChargerAdvertiseEnable is non-zero.
227RESERVEDR0h Reserved
226GPIO AI Enable GPIO 2R0h Assert when GPIO4 is used as an analog input.
225RESERVEDR0h Reserved
224GPIO AI Enable GPIO 0R0h Assert when GPIO4 is used as an analog input.
223-205RESERVEDR0h Reserved
204-192Internal Pull Up EnableR0h Controls weak pull-up setting for each configurable GPIO (1=Enabled, 0=Disabled).
191-173RESERVEDR0h Reserved
172-160Internal Pull Down EnableR0h Controls weak pull-down setting for each configurable GPIO (1=Enabled, 0=Disabled).
159-140RESERVEDR0h Reserved
139-128RESERVEDR0h Reserved
127-109RESERVEDR0h Reserved
108-96Open Drain Output EnableR0h Controls push-pull (0) vs. open-drain (1) setting for each configurable GPIO.
95-77RESERVEDR0h Reserved
76-64Initial ValueR0h Controls default output level for each GPIO enabled as output (0=Drive Low, 1=Drive High)
63-45RESERVEDR0h Reserved
44-32GPIO Interrupt EnableR400h Controls interrupt enable for each GPIO (1=Interrupt Enabled, 0=Interrupt Disabled). Note that all GPIO pins may not be configured as inputs (see the data-sheet).
31-13RESERVEDR0h Reserved
12-0GPIO Output EnableR14CFh Controls output enable for each GPIO (1=Output Enabled, 0=Hi-Z). Note that all GPIO may not be configurable as an output (see data-sheet).

3.23 Type C State Register (Offset = 69h) [Reset = 00000000h]

Type C State is shown in Table 3-25.

Return to the Summary Table.

Contains current status of both CCn pins.

Table 3-25 Type C State Register Field Descriptions
BitFieldTypeResetDescription
31-24TypeC Port StateR0h Present state of Type-C state-machine.
0h = Disabled
5h = ErrorRecovery
24h = Unattached.Accessory
2Bh = AttachWait.Accessory
45h = Try.SRC
4Eh = TryWait.SNK
4Fh = Try.SNK
50h = TryWait.SRC
60h = Attached.SRC
61h = Attached.SNK
62h = AudioAccessory
63h = DebugAccessory
64h = AttachWait.SRC
65h = AttachWait.SNK
66h = Unattached.SNK
67h = Unattached.SRC
23-16CC2 Pin StateR0h State of CC2 pin
0h = Not connected
1h = Ra detected (Source only)
2h = Rd detected (Source only)
3h = USB Default Advertisement detected (SInk only)
4h = 1.5A Advertisement detected (Sink Only)
5h = 3.0A Advertisement detected (Sink Only)
15-8CC1 Pin StateR0h State of CC1 pin
0h = Not connected
1h = Ra detected (Source only)
2h = Rd detected (Source only)
3h = USB Default Advertisement detected (SInk only)
4h = 1.5A Advertisement detected (Sink Only)
5h = 3.0A Advertisement detected (Sink Only)
7-0CC Pin for PDR0h CC pin used for PD communication.
0h = Not connected
1h = CC1 is used for USB PD communication
2h = CC2 is used for USB PD communication

3.24 ADC Results Register (Offset = 6Ah) [Reset = 00000000000000000000000000h]

ADC Results is shown in Table 3-26.

Return to the Summary Table.

Provides access to measurements from the internal ADC. The PD controller periodically measures the pins mentioned in this register and updates the register accordingly. The frequency of the update depends upon the mode of the PD controller. For example, in Unconnected Sleep the PD controller will not update these registers.

Table 3-26 ADC Results Register Field Descriptions
BitFieldTypeResetDescription
103-96RESERVEDR0h Reserved
95-88IVBUS1_MeanR0h Most recent current peak estimate through PP_5V1. If PORT_CONTROL.EnableCurrentMonitor = 1, this field is an estimate of the recent mean current. It is cleared upon attach for a new connection.(16.5mA per LSB)
87-80GPIO2R0h Most recent voltage on the GPIO2 pin. (14mV per LSB)
79-72GPIO0R0h Most recent voltage on the GPIO0 pin. (14mV per LSB)
71-64GPIO5R0h Most recent voltage on the GPIO5 pin. (14mV per LSB)
63-56GPIO4R0h Most recent voltage on the GPIO4 pin. (14mV per LSB)
55-48RESERVEDR0h Reserved
47-40IVBUS1R0h Most recent current measurement through PP_5V1. (16.5mA per LSB)
39-32RESERVEDR0h Reserved
31-24VBUS1R0h Most recent voltage on the PA_VBUS pin. (98mV per LSB)
23-16LDO3V3R0h Most recent voltage on the LDO_3V3 pin. (14mV per LSB)
15-8ADCIN2R0h Most recent voltage on the ADCIN2 pin. (14mV per LSB)
7-0ADCIN1R0h Most recent voltage on the ADCIN1 pin. (14mV per LSB)

3.25 Sleep Control Register (Offset = 70h) [Reset = 01h]

Sleep Control Register is shown in Table 3-27.

Return to the Summary Table.

Sleep configurations.

Table 3-27 Sleep Control Register Field Descriptions
BitFieldTypeResetDescription
7-3RESERVEDR/W0h Reserved
2-1Sleep TimeR/W0h Minimum time the PD controller waits before entering sleep mode.
0h = Reserved
1h = 100 ms
2h = 1200 ms
3h = Reserved
0Sleep Mode AllowedR/W1h If this bit is asserted the PD controller will enter sleep modes after device is idle for Sleep Time.

3.26 GPIO Status Register (Offset = 72h) [Reset = 0000000000000000h]

GPIO Status is shown in Table 3-28.

Return to the Summary Table.

Captures status and settings of all GPIO pins. Check the device-specific datasheet for the available GPIO because it may vary by device type.

Table 3-28 GPIO Status Register Field Descriptions
BitFieldTypeResetDescription
63-40RESERVEDR0h Reserved
39GPIO 7 DirectionR0h This bit is asserted when this GPIO is configured as an output.
38GPIO 6 DirectionR0h This bit is asserted when this GPIO is configured as an output.
37GPIO 5 DirectionR0h This bit is asserted when this GPIO is configured as an output.
36GPIO 4 DirectionR0h This bit is asserted when this GPIO is configured as an output.
35GPIO 3 DirectionR0h This bit is asserted when this GPIO is configured as an output.
34GPIO 2 DirectionR0h This bit is asserted when this GPIO is configured as an output.
33GPIO 1 DirectionR0h This bit is asserted when this GPIO is configured as an output.
32GPIO 0 DirectionR0h This bit is asserted when this GPIO is configured as an output.
31-13RESERVEDR0h Reserved
12GPIO 12 DataR0h Asserted if a logic high is detected on the GPIO.
11-8RESERVEDR0h Reserved
7GPIO 7 DataR0h Asserted if a logic high is detected on the GPIO.
6GPIO 6 DataR0h Asserted if a logic high is detected on the GPIO.
5GPIO 5 DataR0h Asserted if a logic high is detected on the GPIO.
4GPIO 4 DataR0h Asserted if a logic high is detected on the GPIO.
3GPIO 3 DataR0h Asserted if a logic high is detected on the GPIO.
2GPIO 2 DataR0h Asserted if a logic high is detected on the GPIO.
1GPIO 1 DataR0h Asserted if a logic high is detected on the GPIO.
0GPIO 0 DataR0h Asserted if a logic high is detected on the GPIO.

3.27 Liquid Detection Config Register (Offset = 98h) [Reset = 000000000000000000000h]

Liquid Detection Config is shown in Table 3-29.

Return to the Summary Table.

Liquid Detection Configuration

Table 3-29 Liquid Detection Config Register Field Descriptions
BitFieldTypeResetDescription
82Enable Liquid DetectionR/W0h Enables liquid detection on the SBU pins connected to the GPIO on the PD Controller. In order for this to function correctly the proper external liquid detection circuitry must be in place.
81Enable Corrosion MitigationR/W0h Enable corrosion mitigation. Corrosion mitigation will disconnect the port, disabled the port, and pull down CC pins.
80Liquid Detection StateR/W0h Liquid Detection State
79-76Sample Time in 10ms LiquidR/W0h Sample Time in multiples of 10ms (10ms per LSB as ms)
75-72Sample Time in 10ms No LiquidR/W0h Sample Time in multiples of 10ms (10ms per LSB as ms)
71-64High Threshold ADC LiquidR/W0h High Threshold ADC Liquid (14mV per LSB as mV)
63-56Low Threshold ADC LiquidR/W0h Low Threshold ADC Liquid (14mV per LSB as mV)
55-48High Threshold ADC No LiquidR/W0h High Threshold ADC No Liquid, provides hysteresis for exit out of Liquid Detected. (14mV per LSB as mV)
47-40Low Threshold ADC No LiquidR/W0h Low Threshold ADC No Liquid, provides hysteresis for exit out of Liquid Detected. (14mV per LSB as mV)
39-32Number of SamplesR/W0h Number of samples (must be 2N) to take average
31-16Sleep Time In Sec LiquidR/W0h Sleep in multiples of 1s when liquid is detected (1000ms per LSB as ms)
15-0Sleep Time In Sec No LiquidR/W0h Sleep in multiples of 1s when liquid is not detected. (1000ms per LSB as ms)