CAT2 Peripheral Driver Library

Enumerations

enum  cy_en_usbpd_sbu_switch_state_t {
  CY_USBPD_SBU_NOT_CONNECTED,
  CY_USBPD_SBU_CONNECT_AUX1,
  CY_USBPD_SBU_CONNECT_AUX2,
  CY_USBPD_SBU_CONNECT_LSTX,
  CY_USBPD_SBU_CONNECT_LSRX,
  CY_USBPD_SBU_CONNECT_DBG1,
  CY_USBPD_SBU_CONNECT_DBG2,
  CY_USBPD_SBU_MAX_STATE
}
 Enum to hold SBU connection state. More...
 
enum  cy_en_usbpd_dpdm_mux_cfg_t {
  CY_USBPD_DPDM_MUX_CONN_NONE = 0x00,
  CY_USBPD_DPDM_MUX_CONN_USB_TOP = 0x11,
  CY_USBPD_DPDM_MUX_CONN_UART_TOP = 0x22,
  CY_USBPD_DPDM_MUX_CONN_USB_BOT = 0x44,
  CY_USBPD_DPDM_MUX_CONN_UART_BOT = 0x88,
  CY_USBPD_DPDM_MUX_CONN_USB_TOP_UART = 0x99,
  CY_USBPD_DPDM_MUX_CONN_USB_BOT_UART = 0x66
}
 List of possible settings for the DP/DM MUX. More...
 
enum  cy_en_usbpd_aux_resistor_config_t {
  CY_USBPD_AUX_NO_RESISTOR = 0,
  CY_USBPD_AUX_1_1MEG_PU_RESISTOR = 9,
  CY_USBPD_AUX_1_100K_PD_RESISTOR = 10,
  CY_USBPD_AUX_1_470K_PD_RESISTOR = 11,
  CY_USBPD_AUX_2_100K_PU_RESISTOR = 12,
  CY_USBPD_AUX_2_4P7MEG_PD_RESISTOR = 13,
  CY_USBPD_AUX_2_1MEG_PD_RESISTOR = 14,
  CY_USBPD_AUX_MAX_RESISTOR_CONFIG
}
 Enum to hold resistor configuration for AUX1 and AUX2. More...
 
enum  cy_en_usbpd_hpd_events_t {
  CY_USBPD_HPD_EVENT_NONE = 0,
  CY_USBPD_HPD_EVENT_UNPLUG,
  CY_USBPD_HPD_EVENT_PLUG,
  CY_USBPD_HPD_EVENT_IRQ,
  CY_USBPD_HPD_COMMAND_DONE,
  CY_USBPD_HPD_INPUT_CHANGE
}
 List of HPD events detected by USBPD block. More...
 
enum  cy_en_usbpd_adc_id_t {
  CY_USBPD_ADC_ID_0,
  CY_USBPD_ADC_ID_1,
  CY_USBPD_ADC_ID_OVUV,
  CY_USBPD_ADC_NUM_ADC
}
 ADC block IDs. More...
 
enum  cy_en_usbpd_adc_input_t {
  CY_USBPD_ADC_INPUT_AMUX_A,
  CY_USBPD_ADC_INPUT_AMUX_B,
  CY_USBPD_ADC_INPUT_BANDGAP,
  CY_USBPD_ADC_INPUT_BJT,
  CY_USBPD_ADC_NUM_INPUT
}
 Types of PD ADC input sources. More...
 
enum  cy_en_usbpd_adc_int_t {
  CY_USBPD_ADC_INT_DISABLED,
  CY_USBPD_ADC_INT_FALLING,
  CY_USBPD_ADC_INT_RISING,
  CY_USBPD_ADC_INT_BOTH
}
 PD comparator interrupt configuration enumeration. More...
 
enum  cy_en_usbpd_adc_vref_t {
  CY_USBPD_ADC_VREF_PROG = 0,
  CY_USBPD_ADC_VREF_VDDD,
  CY_USBPD_ADC_VREF_MAX
}
 ADC block reference voltage selection. More...
 
enum  cy_en_usbpd_timer_id_t {
  CY_USBPD_PD_OCP_DEBOUNCE_TIMER,
  CY_USBPD_PD_VCONN_OCP_DEBOUNCE_TIMER,
  CY_USBPD_APP_BC_GENERIC_TIMER1,
  CY_USBPD_APP_BC_GENERIC_TIMER2,
  CY_USBPD_VBUS_DISCHARGE_SCHEDULE_TIMER,
  CY_USBPD_APP_HAL_VREG_TIMER,
  CY_USBPD_APP_HAL_GENERIC_TIMER,
  CY_USBPD_APP_REGULATOR_STARTUP_MONITOR_TIMER,
  CY_USBPD_PDS_ACF_SMOOTH_RAMP_TIMER,
  CY_USBPD_PDS_LTRAN_TIMER,
  CY_USBPD_PDS_PASC_DEEPSLEEP_TIMER,
  CY_USBPD_PDS_CC_DBN_SAFE_VALLEY_TIMER
}
 Timer Callback type selection. More...
 
enum  cy_en_usbpd_vbus_lscsa_app_config_t {
  CY_USBPD_VBUS_LSCSA_OCP_CONFIG,
  CY_USBPD_VBUS_LSCSA_EA_CONFIG,
  CY_USBPD_VBUS_LSCSA_PFC_OFF_CONFIG,
  CY_USBPD_VBUS_LSCSA_PFC_ON_CONFIG,
  CY_USBPD_VBUS_LSCSA_SR_OFF_CONFIG,
  CY_USBPD_VBUS_LSCSA_SR_ON_CONFIG,
  CY_USBPD_VBUS_LSCSA_MAX_CONFIG_VALUE
}
 List of dedicated comparators supported by the PD block on various devices. More...
 
enum  cy_en_usbpd_comp_id_t {
  CY_USBPD_VBUS_COMP_ID_UV = 0,
  CY_USBPD_VBUS_COMP_ID_OV = 1,
  CY_USBPD_VBUS_COMP_ID_VBUS_MON = 2,
  CY_USBPD_VBUS_COMP_ID_VSYS_DET = 3,
  CY_USBPD_VBUS_COMP_ID_DP_DETACH = 4,
  CY_USBPD_VBUS_COMP_ID_DM_DETACH = 5,
  COMP_ID_MAX = 9
}
 List of dedicated comparators supported by the PD block on various devices. More...
 
enum  cy_en_usbpd_vbus_filter_id_t {
  CY_USBPD_VBUS_FILTER_ID_UV = 0,
  CY_USBPD_VBUS_FILTER_ID_OV = 1,
  CY_USBPD_VBUS_FILTER_ID_HSCSA_SCP = 2,
  CY_USBPD_VBUS_FILTER_ID_HSCSA_OCP = 3,
  CY_USBPD_VBUS_FILTER_ID_HSCSA_RCP = 4,
  CY_USBPD_VBUS_FILTER_ID_MAX
}
 The outputs of the comparators listed in comp_id_t and comp_tr_id_t can be passed through a filter for debouncing. More...
 
enum  cy_usbpd_vbus_filter_edge_detect_cfg_t {
  CY_USBPD_VBUS_FILTER_CFG_POS_DIS_NEG_DIS,
  CY_USBPD_VBUS_FILTER_CFG_POS_DIS_NEG_EN,
  CY_USBPD_VBUS_FILTER_CFG_POS_EN_NEG_DIS,
  CY_USBPD_VBUS_FILTER_CFG_POS_EN_NEG_EN,
  CY_USBPD_VBUS_FILTER_CFG_MAX
}
 List of edge triggered interrupt based on the filter output. More...
 
enum  cy_en_usbpd_vbus_ovp_mode_t {
  CY_USBPD_VBUS_OVP_MODE_ADC,
  CY_USBPD_VBUS_OVP_MODE_UVOV,
  CY_USBPD_VBUS_OVP_MODE_UVOV_AUTOCTRL
}
 PMG1 OVP modes enumeration. More...
 
enum  cy_en_usbpd_vbus_uvp_mode_t {
  VBUS_UVP_MODE_ADC,
  VBUS_UVP_MODE_INT_COMP,
  VBUS_UVP_MODE_INT_COMP_AUTOCTRL
}
 PMG1 UVP modes enumeration. More...
 
enum  cy_en_usbpd_supply_t {
  CY_USBPD_SUPPLY_VSYS = 0x00,
  CY_USBPD_SUPPLY_V5V = 0x01
}
 List of power supplies input to and monitored by the PMG1 device. More...
 
enum  cy_en_usbpd_phy_events_t {
  CY_USBPD_PHY_EVT_TX_MSG_COLLISION,
  CY_USBPD_PHY_EVT_TX_MSG_PHY_IDLE,
  CY_USBPD_PHY_EVT_TX_MSG_FAILED,
  CY_USBPD_PHY_EVT_TX_MSG_SUCCESS,
  CY_USBPD_PHY_EVT_TX_RST_COLLISION,
  CY_USBPD_PHY_EVT_TX_RST_SUCCESS,
  CY_USBPD_PHY_EVT_RX_MSG,
  CY_USBPD_PHY_EVT_RX_MSG_CMPLT,
  CY_USBPD_PHY_EVT_RX_RST,
  CY_USBPD_PHY_EVT_FRS_SIG_RCVD,
  CY_USBPD_PHY_EVT_FRS_SIG_SENT,
  CY_USBPD_PHY_EVT_CRC_ERROR
}
 PD PHY state events. More...
 
enum  cy_en_usbpd_events_t {
  CY_USBPD_EVT_FRS_SIGNAL_RCVD = 0,
  CY_USBPD_EVT_FRS_SIGNAL_SENT,
  CY_USBPD_EVT_FRS_VBUS_LESS_5_DONE
}
 USBPD Driver Events. More...
 
enum  cy_en_usbpd_status_t {
  CY_USBPD_STAT_NO_RESPONSE = -2,
  CY_USBPD_STAT_SUCCESS = 0,
  CY_USBPD_STAT_FLASH_DATA_AVAILABLE,
  CY_USBPD_STAT_BAD_PARAM,
  CY_USBPD_STAT_INVALID_COMMAND = 3,
  CY_USBPD_STAT_FLASH_UPDATE_FAILED = 5,
  CY_USBPD_STAT_INVALID_FW,
  CY_USBPD_STAT_INVALID_ARGUMENT,
  CY_USBPD_STAT_NOT_SUPPORTED,
  CY_USBPD_STAT_INVALID_SIGNATURE,
  CY_USBPD_STAT_TRANS_FAILURE,
  CY_USBPD_STAT_CMD_FAILURE,
  CY_USBPD_STAT_FAILURE,
  CY_USBPD_STAT_READ_DATA,
  CY_USBPD_STAT_NOT_READY,
  CY_USBPD_STAT_BUSY,
  CY_USBPD_STAT_TIMEOUT,
  CY_USBPD_STAT_INVALID_PORT
}
 USBPD status codes. More...
 
enum  cy_en_pd_sop_t {
  CY_PD_SOP = 0,
  CY_PD_SOP_PRIME,
  CY_PD_SOP_DPRIME,
  CY_PD_SOP_P_DEBUG,
  CY_PD_SOP_DP_DEBUG,
  CY_PD_HARD_RESET,
  CY_PD_CABLE_RESET,
  CY_PD_SOP_INVALID
}
 Enum of the SOP (Start Of Frame) types. More...
 
enum  cy_en_pd_port_role_t {
  CY_PD_PRT_ROLE_SINK = 0,
  CY_PD_PRT_ROLE_SOURCE,
  CY_PD_PRT_DUAL
}
 Enum of the PD port roles. More...
 
enum  cy_en_pd_port_type_t {
  CY_PD_PRT_TYPE_UFP = 0,
  CY_PD_PRT_TYPE_DFP,
  CY_PD_PRT_TYPE_DRP
}
 Enum of the PD port types. More...
 
enum  cy_en_pd_pd_rev_t {
  CY_PD_REV1 = 0,
  CY_PD_REV2,
  CY_PD_REV3,
  CY_PD_REV_RSVD
}
 Enumeration of the PD spec revisions. More...
 
enum  cy_en_pd_devtype_t {
  CY_PD_DEV_SNK = 1,
  CY_PD_DEV_SRC,
  CY_PD_DEV_DBG_ACC,
  CY_PD_DEV_RA_RA,
  CY_PD_DEV_PWRD_ACC,
  CY_PD_DEV_VPD,
  CY_PD_DEV_UNSUPORTED_ACC
}
 Enum of the attached device type. More...
 
enum  cy_en_pd_ctrl_msg_t {
  CY_PD_CTRL_MSG_RSRVD = 0UL,
  CY_PD_CTRL_MSG_GOOD_CRC = 1UL,
  CY_PD_CTRL_MSG_GO_TO_MIN = 2UL,
  CY_PD_CTRL_MSG_ACCEPT = 3UL,
  CY_PD_CTRL_MSG_REJECT = 4UL,
  CY_PD_CTRL_MSG_PING = 5UL,
  CY_PD_CTRL_MSG_PS_RDY = 6UL,
  CY_PD_CTRL_MSG_GET_SOURCE_CAP = 7UL,
  CY_PD_CTRL_MSG_GET_SINK_CAP = 8UL,
  CY_PD_CTRL_MSG_DR_SWAP = 9UL,
  CY_PD_CTRL_MSG_PR_SWAP = 10UL,
  CY_PD_CTRL_MSG_VCONN_SWAP = 11UL,
  CY_PD_CTRL_MSG_WAIT = 12UL,
  CY_PD_CTRL_MSG_SOFT_RESET = 13UL,
  CY_PD_CTRL_MSG_DATA_RESET = 14UL,
  CY_PD_CTRL_MSG_DATA_RESET_COMPLETE = 15UL,
  CY_PD_CTRL_MSG_NOT_SUPPORTED = 16UL,
  CY_PD_CTRL_MSG_GET_SRC_CAP_EXTD = 17UL,
  CY_PD_CTRL_MSG_GET_STATUS = 18UL,
  CY_PD_CTRL_MSG_FR_SWAP = 19UL,
  CY_PD_CTRL_MSG_GET_PPS_STATUS = 20UL,
  CY_PD_CTRL_MSG_GET_COUNTRY_CODES = 21UL,
  CY_PD_CTRL_MSG_GET_SNK_CAP_EXTD = 22UL,
  CY_PD_CTRL_MSG_GET_SOURCE_INFO = 23UL,
  CY_PD_CTRL_MSG_GET_REVISION = 24UL
}
 Enum of the control message types. More...
 
enum  cy_en_pd_rp_cc_status_t {
  CY_PD_RP_RA = 0UL,
  CY_PD_RP_RD = 1UL,
  CY_PD_RP_OPEN = 2UL
}
 Enum of the Rp status when Rp is asserted. More...
 
enum  cy_en_pd_rd_cc_status_t {
  CY_PD_RD_RA = 0UL,
  CY_PD_RD_USB = 1UL,
  CY_PD_RD_1_5A = 2UL,
  CY_PD_RD_3A = 3UL,
  CY_PD_RD_ERR = 4UL
}
 Enum of the Rd status when Rd is asserted. More...
 
enum  cy_en_pd_rp_term_t {
  CY_PD_RP_TERM_RP_CUR_DEF = 0UL,
  CY_PD_RP_TERM_RP_CUR_1_5A = 1UL,
  CY_PD_RP_TERM_RP_CUR_3A = 2UL
}
 Enum of the CC termination current levels. More...
 
enum  cy_en_pd_typec_events_t {
  CY_PD_TYPEC_EVT_UNATTACHED_SRC = 0,
  CY_PD_TYPEC_EVT_UNATTACHED_SNK,
  CY_PD_TYPEC_EVT_STOP_FSM
}
 PD Type C Driver Events. More...
 
enum  cy_en_pd_extd_alert_type_t {
  CY_PD_EXTD_ALERT_TYPE_PWR_STATE_CHANGE = 1UL,
  CY_PD_EXTD_ALERT_TYPE_PWR_BTN_PRESS = 2UL,
  CY_PD_EXTD_ALERT_TYPE_PWR_BTN_RELEASE = 3UL,
  CY_PD_EXTD_ALERT_TYPE_CTRLR_WAKE = 4UL
}
 Types of extended alert events. More...
 

Detailed Description

Enumeration Type Documentation

◆ cy_en_usbpd_sbu_switch_state_t

Enum to hold SBU connection state.

There is an internal switch to route SBU1/SBU2 signals to AUX_P/AUX_N, LSTX/LSRX, or Isolate. Only applicable to PMG1S1, PMG1S2 and PMG1S3.

Enumerator
CY_USBPD_SBU_NOT_CONNECTED 

SBU pin is isolated.

CY_USBPD_SBU_CONNECT_AUX1 

Connect SBU pin to AUX_P.

CY_USBPD_SBU_CONNECT_AUX2 

Connect SBU pin to AUX_N.

CY_USBPD_SBU_CONNECT_LSTX 

Connect SBU pin to LSTX.

CY_USBPD_SBU_CONNECT_LSRX 

Connect SBU pin to LSRX.

CY_USBPD_SBU_CONNECT_DBG1 

Connect SBU pin to DEBUG1.

CY_USBPD_SBU_CONNECT_DBG2 

Connect SBU pin to DEBUG2.

CY_USBPD_SBU_MAX_STATE 

Invalid value: not supported.

◆ cy_en_usbpd_dpdm_mux_cfg_t

List of possible settings for the DP/DM MUX.

Only applicable to PMG1S1.

Enumerator
CY_USBPD_DPDM_MUX_CONN_NONE 

No connections enabled through the DPDM Mux.

CY_USBPD_DPDM_MUX_CONN_USB_TOP 

Connect D+/D- to D+/D- on the top side of the connector.

CY_USBPD_DPDM_MUX_CONN_UART_TOP 

Connect UART TX/RX to D+/D- on the top side of the connector.

CY_USBPD_DPDM_MUX_CONN_USB_BOT 

Connect D+/D- to D+/D- on the bottom side of the connector.

CY_USBPD_DPDM_MUX_CONN_UART_BOT 

Connect UART TX/RX to D+/D- on the bottom side of the connector.

CY_USBPD_DPDM_MUX_CONN_USB_TOP_UART 

Connect D+/D- to top and UART TX/RX to bottom side.

CY_USBPD_DPDM_MUX_CONN_USB_BOT_UART 

Connect D+/D- to bottom and UART TX/RX to top side.

◆ cy_en_usbpd_aux_resistor_config_t

Enum to hold resistor configuration for AUX1 and AUX2.

Values assigned are the bit position of corresponding configuration in sbu_ctrl register. Only applicable to PMG1S2 and PMG1S3.

Enumerator
CY_USBPD_AUX_NO_RESISTOR 

No resistor.

CY_USBPD_AUX_1_1MEG_PU_RESISTOR 

AUX1 1M0hm Pullup resistor.

CY_USBPD_AUX_1_100K_PD_RESISTOR 

AUX1 100KOhm Pulldown resistor.

CY_USBPD_AUX_1_470K_PD_RESISTOR 

AUX1 470KOhm Pulldown resistor.

CY_USBPD_AUX_2_100K_PU_RESISTOR 

AUX2 100KOhm Pullup resistor.

CY_USBPD_AUX_2_4P7MEG_PD_RESISTOR 

AUX2 4.7M0hm Pulldown resistor.

CY_USBPD_AUX_2_1MEG_PD_RESISTOR 

AUX2 1M0hm Pulldown resistor.

CY_USBPD_AUX_MAX_RESISTOR_CONFIG 

Not supported.

◆ cy_en_usbpd_hpd_events_t

List of HPD events detected by USBPD block.

The UNPLUG, PLUG and IRQ events are used in the case of a DisplayPort Sink implementation, and the COMMAND_DONE event is used in the case of a DP Source implementation.

Enumerator
CY_USBPD_HPD_EVENT_NONE 

No event.

CY_USBPD_HPD_EVENT_UNPLUG 

DP Unplug event.

CY_USBPD_HPD_EVENT_PLUG 

DP Plug event.

CY_USBPD_HPD_EVENT_IRQ 

DP IRQ event.

CY_USBPD_HPD_COMMAND_DONE 

Requested HPD command is complete.

CY_USBPD_HPD_INPUT_CHANGE 

HPD IO raw status change.

◆ cy_en_usbpd_adc_id_t

ADC block IDs.

Refer to the device datasheet and TRM for more details.

Enumerator
CY_USBPD_ADC_ID_0 

ADC-0 in the PD block.

Supported by all devices.

CY_USBPD_ADC_ID_1 

ADC-1 in the PD block.

CY_USBPD_ADC_ID_OVUV 

Dedicated ADC for Over-Voltage/Under-Voltage detection.

Only available on PMG1S2.

CY_USBPD_ADC_NUM_ADC 

Maximum number of ADCs in the PD block.

◆ cy_en_usbpd_adc_input_t

Types of PD ADC input sources.

Refer to the device datasheet and TRM for more details.

Enumerator
CY_USBPD_ADC_INPUT_AMUX_A 

AMUX_A bus.

CY_USBPD_ADC_INPUT_AMUX_B 

AMUX_B bus.

CY_USBPD_ADC_INPUT_BANDGAP 

BANDGAP input.

CY_USBPD_ADC_INPUT_BJT 

BJT.

CY_USBPD_ADC_NUM_INPUT 

Number of ADC inputs available.

◆ cy_en_usbpd_adc_int_t

PD comparator interrupt configuration enumeration.

Note: These are the settings for INTR_1_CFG ADC output.

Enumerator
CY_USBPD_ADC_INT_DISABLED 

Comparator interrupt disabled.

CY_USBPD_ADC_INT_FALLING 

Comparator interrupt on falling edge.

CY_USBPD_ADC_INT_RISING 

Comparator interrupt on rising edge.

CY_USBPD_ADC_INT_BOTH 

Comparator interrupt on either edge.

◆ cy_en_usbpd_adc_vref_t

ADC block reference voltage selection.

Enumerator
CY_USBPD_ADC_VREF_PROG 

Programmable reference voltage from the RefGen block.

CY_USBPD_ADC_VREF_VDDD 

VDDD supply used as ADC reference voltage.

CY_USBPD_ADC_VREF_MAX 

MAX ADC reference voltage.

Keep at the last of the enum.

◆ cy_en_usbpd_timer_id_t

Timer Callback type selection.

Enumerator
CY_USBPD_PD_OCP_DEBOUNCE_TIMER 

000: Timer used for FW debounce of VBus OCP.

CY_USBPD_PD_VCONN_OCP_DEBOUNCE_TIMER 

001: Timer used for FW debounce of VConn OCP.

CY_USBPD_APP_BC_GENERIC_TIMER1 

002: Generic timer #1 used by the BC state machine.

CY_USBPD_APP_BC_GENERIC_TIMER2 

003: Generic timer #2 used by the BC state machine.

CY_USBPD_VBUS_DISCHARGE_SCHEDULE_TIMER 

004: Timer for VBUS SLow Discharge

CY_USBPD_APP_HAL_VREG_TIMER 

005: Timer that can be used for Vreg fault handling.

CY_USBPD_APP_HAL_GENERIC_TIMER 

006: Timer that can be used for generic HAL functions.

CY_USBPD_APP_REGULATOR_STARTUP_MONITOR_TIMER 

007: Timer ID reserved for regulator startup monitoring.

CY_USBPD_PDS_ACF_SMOOTH_RAMP_TIMER 

008: Timer ID reserved for ACF smooth start during power on , and voltage transition

CY_USBPD_PDS_LTRAN_TIMER 

009: Timer ID reserved for LTRAN load L2H handling

CY_USBPD_PDS_PASC_DEEPSLEEP_TIMER 

00A: Timer ID reserved for Deepsleep timer

CY_USBPD_PDS_CC_DBN_SAFE_VALLEY_TIMER 

00B: Timer ID reserved for CC safe valley debouncing

◆ cy_en_usbpd_vbus_lscsa_app_config_t

List of dedicated comparators supported by the PD block on various devices.

The actual comparators supported vary across device families. See comments associated with each comparator ID for list of devices that support this comparator.

Enumerator
CY_USBPD_VBUS_LSCSA_OCP_CONFIG 

OCP comparator gain control.

Only available on PMG1S0.

CY_USBPD_VBUS_LSCSA_EA_CONFIG 

EA comparator gain control.

Only available on PMG1S0.

CY_USBPD_VBUS_LSCSA_PFC_OFF_CONFIG 

PFC OFF comparator gain control.

Only available on PMG1S0.

CY_USBPD_VBUS_LSCSA_PFC_ON_CONFIG 

PFC ON comparator gain control.

Only available on PMG1S0.

CY_USBPD_VBUS_LSCSA_SR_OFF_CONFIG 

SR OFF comparator gain control.

Only available on PMG1S0.

CY_USBPD_VBUS_LSCSA_SR_ON_CONFIG 

SR ON comparator gain control.

Only available on PMG1S0.

CY_USBPD_VBUS_LSCSA_MAX_CONFIG_VALUE 

End of comparator list.

◆ cy_en_usbpd_comp_id_t

List of dedicated comparators supported by the PD block on various devices.

The actual comparators supported vary across device families. See comments associated with each comparator ID for list of devices that support this comparator.

Enumerator
CY_USBPD_VBUS_COMP_ID_UV 

UV comparator.

CY_USBPD_VBUS_COMP_ID_OV 

OV comparator.

CY_USBPD_VBUS_COMP_ID_VBUS_MON 

VBUS_MON comparator.

Only available on PMG1S1.

CY_USBPD_VBUS_COMP_ID_VSYS_DET 

VSYS detection.

Only available on PMG1S1.

CY_USBPD_VBUS_COMP_ID_DP_DETACH 

D+ voltage comparator.

Only available on PMG1S1.

CY_USBPD_VBUS_COMP_ID_DM_DETACH 

D- voltage comparator.

Only available on PMG1S1.

COMP_ID_MAX 

End of comparator list.

◆ cy_en_usbpd_vbus_filter_id_t

The outputs of the comparators listed in comp_id_t and comp_tr_id_t can be passed through a filter for debouncing.

As with the comparators, the filters supported vary across device families. This enumeration lists various filters supported and the comments indicate the devices that support them.

Enumerator
CY_USBPD_VBUS_FILTER_ID_UV 

UV comparator filter.

CY_USBPD_VBUS_FILTER_ID_OV 

OV comparator filter.

CY_USBPD_VBUS_FILTER_ID_HSCSA_SCP 

SCP filter for PMG1S1.

CY_USBPD_VBUS_FILTER_ID_HSCSA_OCP 

OCP filter for PMG1S1.

CY_USBPD_VBUS_FILTER_ID_HSCSA_RCP 

RCP filter for PMG1S1.

CY_USBPD_VBUS_FILTER_ID_MAX 

Number of supported filters.

◆ cy_usbpd_vbus_filter_edge_detect_cfg_t

List of edge triggered interrupt based on the filter output.

Enumerator
CY_USBPD_VBUS_FILTER_CFG_POS_DIS_NEG_DIS 

Interrupt disabled.

CY_USBPD_VBUS_FILTER_CFG_POS_DIS_NEG_EN 

Negative edge detection interrupt.

CY_USBPD_VBUS_FILTER_CFG_POS_EN_NEG_DIS 

Positive edge detection interrupt.

CY_USBPD_VBUS_FILTER_CFG_POS_EN_NEG_EN 

Both edge detection interrupt.

CY_USBPD_VBUS_FILTER_CFG_MAX 

Invalid interrupt configuration.

◆ cy_en_usbpd_vbus_ovp_mode_t

PMG1 OVP modes enumeration.

Enumerator
CY_USBPD_VBUS_OVP_MODE_ADC 

OVP detection using PMG1 internal ADC.

CY_USBPD_VBUS_OVP_MODE_UVOV 

OVP detection using the UVOV block on PMG1.

FET control is done by firmware.

CY_USBPD_VBUS_OVP_MODE_UVOV_AUTOCTRL 

OVP detection and FET control using the OVOV block on PMG1.

◆ cy_en_usbpd_vbus_uvp_mode_t

PMG1 UVP modes enumeration.

Enumerator
VBUS_UVP_MODE_ADC 

UVP detection using PMG1 internal ADC.

VBUS_UVP_MODE_INT_COMP 

UVP detection using the UVOV block on PMG1.

FET control is done by firmware.

VBUS_UVP_MODE_INT_COMP_AUTOCTRL 

UVP detection and FET control using the UVOV block on PMG1.

◆ cy_en_usbpd_supply_t

List of power supplies input to and monitored by the PMG1 device.

This does not include the VBus supply which is monitored by all PMG1 devices as required by the Type-C and USB-PD specifications.

Enumerator
CY_USBPD_SUPPLY_VSYS 

Vsys supply input which powers the device.

CY_USBPD_SUPPLY_V5V 

V5V input used to derive the VConn supply from.

Not supported on PMG1S0.

◆ cy_en_usbpd_phy_events_t

PD PHY state events.

Enumerator
CY_USBPD_PHY_EVT_TX_MSG_COLLISION 

Bus busy at message transmission.

CY_USBPD_PHY_EVT_TX_MSG_PHY_IDLE 

Bus idle, ready for message transmission.

CY_USBPD_PHY_EVT_TX_MSG_FAILED 

Message transmission was not successful.

CY_USBPD_PHY_EVT_TX_MSG_SUCCESS 

Message transmission was successful.

CY_USBPD_PHY_EVT_TX_RST_COLLISION 

Bus busy just before reset transmission.

CY_USBPD_PHY_EVT_TX_RST_SUCCESS 

Reset transmission was successful.

CY_USBPD_PHY_EVT_RX_MSG 

Message received.

CY_USBPD_PHY_EVT_RX_MSG_CMPLT 

Message received and GoodCRC sent aka collision type 3.

CY_USBPD_PHY_EVT_RX_RST 

Reset was received.

CY_USBPD_PHY_EVT_FRS_SIG_RCVD 

FRS signal was received.

CY_USBPD_PHY_EVT_FRS_SIG_SENT 

FRS signal was transmitted.

CY_USBPD_PHY_EVT_CRC_ERROR 

Message received with CRC error.

◆ cy_en_usbpd_events_t

USBPD Driver Events.

Enumerator
CY_USBPD_EVT_FRS_SIGNAL_RCVD 

FRS Signal Was received.

CY_USBPD_EVT_FRS_SIGNAL_SENT 

FRS Signal was sent.

CY_USBPD_EVT_FRS_VBUS_LESS_5_DONE 

FRS VBUS is less than vSafe5V.

◆ cy_en_usbpd_status_t

USBPD status codes.

Enumerator
CY_USBPD_STAT_NO_RESPONSE 

Special status code indicating no response.

CY_USBPD_STAT_SUCCESS 

Success status.

CY_USBPD_STAT_FLASH_DATA_AVAILABLE 

Special status code indicating flash data availability.

CY_USBPD_STAT_BAD_PARAM 

Bad input parameter.

CY_USBPD_STAT_INVALID_COMMAND 

Operation failed due to invalid command.

CY_USBPD_STAT_FLASH_UPDATE_FAILED 

Flash write operation failed.

CY_USBPD_STAT_INVALID_FW 

Special status code indicating invalid firmware.

CY_USBPD_STAT_INVALID_ARGUMENT 

Operation failed due to invalid arguments.

CY_USBPD_STAT_NOT_SUPPORTED 

Feature not supported.

CY_USBPD_STAT_INVALID_SIGNATURE 

Invalid signature parameter identified.

CY_USBPD_STAT_TRANS_FAILURE 

Transaction failure status.

CY_USBPD_STAT_CMD_FAILURE 

Command failure status.

CY_USBPD_STAT_FAILURE 

Generic failure status.

CY_USBPD_STAT_READ_DATA 

Special status code indicating read data availability.

CY_USBPD_STAT_NOT_READY 

Operation failed due to device/stack not ready.

CY_USBPD_STAT_BUSY 

Operation failed due to device/stack busy status.

CY_USBPD_STAT_TIMEOUT 

Operation timed out.

CY_USBPD_STAT_INVALID_PORT 

Invalid port number.

◆ cy_en_pd_sop_t

Enum of the SOP (Start Of Frame) types.

Enumerator
CY_PD_SOP 

SOP: Used for communication with port partner.

CY_PD_SOP_PRIME 

SOP': Cable marker communication.

CY_PD_SOP_DPRIME 

SOP'': Cable marker communication.

CY_PD_SOP_P_DEBUG 

SOP'_Debug.

CY_PD_SOP_DP_DEBUG 

SOP''_Debug.

CY_PD_HARD_RESET 

Hard Reset.

CY_PD_CABLE_RESET 

Cable Reset.

CY_PD_SOP_INVALID 

Undefined ordered set.

◆ cy_en_pd_port_role_t

Enum of the PD port roles.

Enumerator
CY_PD_PRT_ROLE_SINK 

Power sink.

CY_PD_PRT_ROLE_SOURCE 

Power source.

CY_PD_PRT_DUAL 

Dual Role Power device: can be source or sink.

◆ cy_en_pd_port_type_t

Enum of the PD port types.

Enumerator
CY_PD_PRT_TYPE_UFP 

Upstream facing port.

USB device or Alternate mode accessory.

CY_PD_PRT_TYPE_DFP 

Downstream facing port.

USB host or Alternate mode controller.

CY_PD_PRT_TYPE_DRP 

Dual Role data device: can be UFP or DFP.

◆ cy_en_pd_pd_rev_t

Enumeration of the PD spec revisions.

Enumerator
CY_PD_REV1 

USB-PD spec revision 1.0.

Not supported.

CY_PD_REV2 

USB-PD spec revision 2.0.

CY_PD_REV3 

USB-PD spec revision 3.0.

CY_PD_REV_RSVD 

Undefined USB-PD spec revision.

◆ cy_en_pd_devtype_t

Enum of the attached device type.

Enumerator
CY_PD_DEV_SNK 

Power sink device is attached.

CY_PD_DEV_SRC 

Power source device is attached.

CY_PD_DEV_DBG_ACC 

Debug accessory is attached.

CY_PD_DEV_RA_RA 

RA_RA is attached.

CY_PD_DEV_PWRD_ACC 

Powered accessory is attached.

CY_PD_DEV_VPD 

Vconn powered device is attached.

CY_PD_DEV_UNSUPORTED_ACC 

Unsupported device type is attached.

◆ cy_en_pd_ctrl_msg_t

Enum of the control message types.

Enumerator
CY_PD_CTRL_MSG_RSRVD 

0x00: Reserved message code.

CY_PD_CTRL_MSG_GOOD_CRC 

0x01: GoodCRC message.

CY_PD_CTRL_MSG_GO_TO_MIN 

0x02: GotoMin message.

CY_PD_CTRL_MSG_ACCEPT 

0x03: Accept message.

CY_PD_CTRL_MSG_REJECT 

0x04: Reject message.

CY_PD_CTRL_MSG_PING 

0x05: Ping message.

CY_PD_CTRL_MSG_PS_RDY 

0x06: PS_RDY message.

CY_PD_CTRL_MSG_GET_SOURCE_CAP 

0x07: Get_Source_Cap message.

CY_PD_CTRL_MSG_GET_SINK_CAP 

0x08: Get_Sink_Cap message.

CY_PD_CTRL_MSG_DR_SWAP 

0x09: DR_Swap message.

CY_PD_CTRL_MSG_PR_SWAP 

0x0A: PR_Swap message.

CY_PD_CTRL_MSG_VCONN_SWAP 

0x0B: VCONN_Swap message.

CY_PD_CTRL_MSG_WAIT 

0x0C: Wait message.

CY_PD_CTRL_MSG_SOFT_RESET 

0x0D: Soft_Reset message.

CY_PD_CTRL_MSG_DATA_RESET 

0x0E: Data_Reset message.

CY_PD_CTRL_MSG_DATA_RESET_COMPLETE 

0x0F: Data_Reset_Complete message.

CY_PD_CTRL_MSG_NOT_SUPPORTED 

0x10: Not_Supported message.

CY_PD_CTRL_MSG_GET_SRC_CAP_EXTD 

0x11: Get_Source_Cap_Extended message.

CY_PD_CTRL_MSG_GET_STATUS 

0x12: Get_Status message .

CY_PD_CTRL_MSG_FR_SWAP 

0x13: FR_Swap message.

CY_PD_CTRL_MSG_GET_PPS_STATUS 

0x14: Get_PPS_Status message.

CY_PD_CTRL_MSG_GET_COUNTRY_CODES 

0x15: Get_Country_Codes message.

CY_PD_CTRL_MSG_GET_SNK_CAP_EXTD 

0x16: Get_Sink_Cap_Extended message.

CY_PD_CTRL_MSG_GET_SOURCE_INFO 

0x17: Get_Source_Info message.

CY_PD_CTRL_MSG_GET_REVISION 

0x18: Get_Revision message.

◆ cy_en_pd_rp_cc_status_t

Enum of the Rp status when Rp is asserted.

Enumerator
CY_PD_RP_RA 

PMG1 has applied Rp.

External Ra present.

CY_PD_RP_RD 

PMG1 has applied Rp.

External Rd present.

CY_PD_RP_OPEN 

PMG1 has applied Rp.

No external pulldown.

◆ cy_en_pd_rd_cc_status_t

Enum of the Rd status when Rd is asserted.

Enumerator
CY_PD_RD_RA 

PMG1 has applied Rd.

No external Rp.

CY_PD_RD_USB 

PMG1 has applied Rd.

Default Rp present.

CY_PD_RD_1_5A 

PMG1 has applied Rd.

1.5A Rp present.

CY_PD_RD_3A 

PMG1 has applied Rd.

3A Rp present.

CY_PD_RD_ERR 

PMG1 has applied Rd.

Error state.

◆ cy_en_pd_rp_term_t

Enum of the CC termination current levels.

Enumerator
CY_PD_RP_TERM_RP_CUR_DEF 

Use default Rp.

CY_PD_RP_TERM_RP_CUR_1_5A 

Use 1.5 A Rp.

CY_PD_RP_TERM_RP_CUR_3A 

Use 3A Rp.

◆ cy_en_pd_typec_events_t

PD Type C Driver Events.

Enumerator
CY_PD_TYPEC_EVT_UNATTACHED_SRC 

Transition to Unattached.SRC state.

CY_PD_TYPEC_EVT_UNATTACHED_SNK 

Transition to Unattached.SNK state.

CY_PD_TYPEC_EVT_STOP_FSM 

Stop the Type C State machine.

◆ cy_en_pd_extd_alert_type_t

Types of extended alert events.

Enumerator
CY_PD_EXTD_ALERT_TYPE_PWR_STATE_CHANGE 

Power state change (DFP only).

CY_PD_EXTD_ALERT_TYPE_PWR_BTN_PRESS 

Power button press (UFP only).

CY_PD_EXTD_ALERT_TYPE_PWR_BTN_RELEASE 

Power button release (UFP only).

CY_PD_EXTD_ALERT_TYPE_CTRLR_WAKE 

Controller initiated wake (UFP only).