CAT2 Peripheral Driver Library

Macros

#define CY_USBPD_GET_APP_TIMER_ID(context, id)   (uint16_t)(((context)->port != 0u) ? ((uint16_t)(id) + (uint16_t)128u) : (uint16_t)(id))
 Macro to get APP timer ids for port 0 and port 1.
 
#define CY_USBPD_GET_PD_TIMER_ID(context, id)   (uint16_t)(((context)->port != 0u) ? ((uint16_t)(id) + (uint16_t)CY_USBPD_PD1_TIMERS_START_ID) : (uint16_t)(id))
 Macro to get PD timer ids for port 0 and port 1.
 

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
}
 ADC block reference voltage selection. More...
 
enum  cy_en_usbpd_timer_id_t {
  CY_USBPD_PD_TIMERS_START_ID = 0u,
  CY_USBPD_PD_CABLE_TIMER,
  CY_USBPD_PD_NO_RESPONSE_TIMER,
  CY_USBPD_PD_CBL_DSC_ID_TIMER,
  CY_USBPD_PD_CBL_DELAY_TIMER,
  CY_USBPD_PD_PHY_BUSY_TIMER,
  CY_USBPD_PD_GOOD_CRC_TX_TIMER,
  CY_USBPD_PD_HARD_RESET_TX_TIMER,
  CY_USBPD_PD_VCONN_SWAP_INITIATOR_TIMER,
  CY_USBPD_PD_GENERIC_TIMER,
  CY_USBPD_PD_PPS_TIMER,
  CY_USBPD_PD_SINK_TX_TIMER,
  CY_USBPD_PD_DATA_RESET_COMP_TIMER,
  CY_USBPD_PD_SNK_EPR_MODE_TIMER,
  CY_USBPD_PD_SRC_EPR_MODE_TIMER,
  CY_USBPD_PD_EPR_KEEPALIVE_TIMER,
  CY_USBPD_PD_TIMER_RESERVED_16 = 16u,
  CY_USBPD_PD_TIMERS_END_ID = 16u,
  CY_USBPD_TYPEC_TIMERS_START_ID = 17u,
  CY_USBPD_TYPEC_GENERIC_TIMER2 = 17u,
  CY_USBPD_TYPEC_GENERIC_TIMER1,
  CY_USBPD_TYPEC_CC1_DEBOUNCE_TIMER,
  CY_USBPD_TYPEC_CC2_DEBOUNCE_TIMER,
  CY_USBPD_TYPEC_RD_DEBOUNCE_TIMER,
  CY_USBPD_TYPEC_VBUS_DISCHARGE_TIMER,
  CY_USBPD_TYPEC_ACTIVITY_TIMER,
  CY_USBPD_TYPEC_RP_CHANGE_TIMER,
  CY_USBPD_TYPEC_TIMER_RESERVED_23,
  CY_USBPD_TYPEC_TIMERS_END_ID,
  CY_USBPD_PD_OCP_DEBOUNCE_TIMER,
  CY_USBPD_HPD_RX_ACTIVITY_TIMER_ID,
  CY_USBPD_PD_VCONN_OCP_DEBOUNCE_TIMER,
  CY_USBPD_PD_TIMER_RESERVED_30,
  CY_USBPD_PD_TIMER_RESERVED_31,
  CY_USBPD_PD1_TIMERS_START_ID = 32u,
  CY_USBPD_PD1_CABLE_TIMER,
  CY_USBPD_PD1_NO_RESPONSE_TIMER,
  CY_USBPD_PD1_CBL_DSC_ID_TIMER,
  CY_USBPD_PD1_CBL_DELAY_TIMER,
  CY_USBPD_PD1_PHY_BUSY_TIMER,
  CY_USBPD_PD1_GOOD_CRC_TX_TIMER,
  CY_USBPD_PD1_HARD_RESET_TX_TIMER,
  CY_USBPD_PD1_VCONN_SWAP_INITIATOR_TIMER,
  CY_USBPD_PD1_GENERIC_TIMER,
  CY_USBPD_PD1_PPS_TIMER,
  CY_USBPD_PD1_SINK_TX_TIMER,
  CY_USBPD_PD1_DATA_RESET_COMP_TIMER,
  CY_USBPD_PD1_SNK_EPR_MODE_TIMER,
  CY_USBPD_PD1_SRC_EPR_MODE_TIMER,
  CY_USBPD_PD1_EPR_KEEPALIVE_TIMER,
  CY_USBPD_PD1_TIMER_RESERVED_48 = 48u,
  CY_USBPD_PD1_TIMERS_END_ID = 48u,
  CY_USBPD_TYPEC1_TIMERS_START_ID = 49u,
  CY_USBPD_TYPEC1_GENERIC_TIMER2 = 49u,
  CY_USBPD_TYPEC1_GENERIC_TIMER1,
  CY_USBPD_TYPEC1_CC1_DEBOUNCE_TIMER,
  CY_USBPD_TYPEC1_CC2_DEBOUNCE_TIMER,
  CY_USBPD_TYPEC1_RD_DEBOUNCE_TIMER,
  CY_USBPD_TYPEC1_VBUS_DISCHARGE_TIMER,
  CY_USBPD_TYPEC1_ACTIVITY_TIMER,
  CY_USBPD_TYPEC1_RP_CHANGE_TIMER,
  CY_USBPD_TYPEC1_TIMER_RESERVED_53,
  CY_USBPD_TYPEC1_TIMERS_END_ID,
  CY_USBPD_PD1_OCP_DEBOUNCE_TIMER,
  CY_USBPD_HPD1_RX_ACTIVITY_TIMER_ID,
  CY_USBPD_PD1_VCONN_OCP_DEBOUNCE_TIMER,
  CY_USBPD_CCG_ACTIVITY_TIMER_ID,
  CY_USBPD_APP_TIMERS_START_ID = 64u,
  CY_USBPD_APP_PSOURCE_EN_TIMER = 64u,
  CY_USBPD_APP_PSOURCE_EN_MONITOR_TIMER,
  CY_USBPD_APP_PSOURCE_EN_HYS_TIMER,
  CY_USBPD_APP_PSOURCE_DIS_TIMER,
  CY_USBPD_APP_PSOURCE_DIS_MONITOR_TIMER,
  CY_USBPD_APP_PSOURCE_CF_TIMER,
  CY_USBPD_APP_PSOURCE_DIS_EXT_DIS_TIMER,
  CY_USBPD_APP_DB_SNK_FET_DIS_DELAY_TIMER,
  CY_USBPD_APP_PSINK_DIS_TIMER,
  CY_USBPD_APP_PSINK_DIS_MONITOR_TIMER,
  CY_USBPD_APP_VDM_BUSY_TIMER,
  CY_USBPD_APP_AME_TIMEOUT_TIMER,
  CY_USBPD_APP_VBUS_OCP_OFF_TIMER,
  CY_USBPD_APP_VBUS_OVP_OFF_TIMER,
  CY_USBPD_APP_VBUS_UVP_OFF_TIMER,
  CY_USBPD_APP_VBUS_SCP_OFF_TIMER,
  CY_USBPD_APP_FAULT_RECOVERY_TIMER,
  CY_USBPD_APP_SBU_DELAYED_CONNECT_TIMER,
  CY_USBPD_APP_MUX_DELAY_TIMER,
  CY_USBPD_APP_MUX_POLL_TIMER,
  CY_USBPD_APP_CBL_DISC_TRIGGER_TIMER,
  CY_USBPD_APP_V5V_CHANGE_DEBOUNCE_TIMER,
  CY_USBPD_APP_VCONN_RECOVERY_TIMER,
  CY_USBPD_APP_OT_DETECTION_TIMER,
  CY_USBPD_APP_CHUNKED_MSG_RESP_TIMER,
  CY_USBPD_APP_RESET_VDM_LAYER_TIMER,
  CY_USBPD_APP_BB_ON_TIMER,
  CY_USBPD_APP_BB_OFF_TIMER,
  CY_USBPD_APP_INITIATE_SWAP_TIMER,
  CY_USBPD_APP_VDM_NOT_SUPPORT_RESP_TIMER_ID,
  CY_USBPD_APP_BC_TIMERS_START_ID,
  CY_USBPD_APP_BC_GENERIC_TIMER1,
  CY_USBPD_APP_BC_GENERIC_TIMER2,
  CY_USBPD_APP_BC_DP_DM_DEBOUNCE_TIMER,
  CY_USBPD_APP_BC_DETACH_DETECT_TIMER,
  CY_USBPD_APP_CDP_DP_DM_POLL_TIMER,
  CY_USBPD_APP_EPR_MODE_TIMER,
  CY_USBPD_APP_EPR_EXT_CMD_TIMER,
  CY_USBPD_APP_TIMER_HPD_DELAY_TIMER,
  CY_USBPD_APP_PSOURCE_VBUS_SET_TIMER_ID,
  CY_USBPD_APP_PSOURCE_SAFE_FET_ON_MONITOR_TIMER_ID,
  CY_USBPD_APP_PSOURCE_SAFE_FET_ON_TIMER_ID,
  CY_USBPD_VBUS_DISCHARGE_SCHEDULE_TIMER,
  CY_USBPD_CCG_LS_MASTER_PORT_DEBOUNCE_TIMER_ID,
  CY_USBPD_CCG_LS_SLAVE_PORT_DEBOUNCE_TIMER_ID,
  CY_USBPD_CCG_LS_MASTER_WRITE_TIMER_ID,
  CY_USBPD_CCG_LS_HEART_BEAT_TIMER_ID,
  CY_USBPD_THROTTLE_TIMER_ID,
  CY_USBPD_THROTTLE_WAIT_FOR_PD_TIMER_ID,
  CY_USBPD_HPI_PD_CMD_TIMER,
  CY_USBPD_LINS_BUS_INACTIVE_TIMER,
  CY_USBPD_LINS_BUS_LISTEN_TIMER,
  CY_USBPD_LINS_MULTIFRAME_DROP_TIMER,
  CY_USBPD_APP_FET_SOFT_START_TIMER_ID,
  CY_USBPD_APP_HAL_VREG_TIMER,
  CY_USBPD_APP_HAL_GENERIC_TIMER,
  CY_USBPD_APP_REGULATOR_STARTUP_MONITOR_TIMER,
  CY_USBPD_APP_DATA_RESET_TIMER,
  CY_USBPD_SYS_BLACK_BOX_TIMER_ID,
  CY_USBPD_APP_PSOURCE_REGULATOR_MON_TIMER,
  CY_USBPD_APP_BAD_SINK_TIMEOUT_TIMER,
  CY_USBPD_APP_VBAT_GND_SCP_TIMER_ID,
  CY_USBPD_APP_VCONN_OCP_TIMER,
  CY_USBPD_CCG_LS_SNK_CAP_TIMEOUT_TIMER_ID,
  CY_USBPD_APP_GPIO_HPD_TIMER_ID,
  CY_USBPD_APP_PSOURCE_VBUS_SRC_FET_BYPASS_TIMER_ID,
  CY_USBPD_APP_TIMERS_RESERVED_START_ID = 130,
  CY_USBPD_APP_TIMER_RESERVED_130 = CY_USBPD_APP_TIMERS_RESERVED_START_ID,
  CY_USBPD_APP_PORT1_TIMER_START_ID = 192u,
  CY_USBPD_I2C_SLAVE_SCB0_TIMER = 320u,
  CY_USBPD_I2C_SLAVE_SCB1_TIMER = 321u,
  CY_USBPD_I2C_SLAVE_SCB2_TIMER = 322u,
  CY_USBPD_I2C_SLAVE_SCB3_TIMER = 323u,
  CY_USBPD_I2C_SLAVE_SCB4_TIMER = 324u,
  CY_USBPD_I2C_SLAVE_SCB5_TIMER = 325u,
  CY_USBPD_I2C_SLAVE_SCB6_TIMER = 326u,
  CY_USBPD_I2C_SLAVE_SCB7_TIMER = 327u,
  CY_USBPD_SYS_DEEPSLEEP_TIMER_ID = 328u,
  CY_USBPD_USER_TIMERS_START_ID = 329u,
  CY_USBPD_MAX_TIMER_ID = 65535u
}
 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_AUD_ACC,
  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_en_usbpd_timer_id_t

Timer Callback type selection.

Enumerator
CY_USBPD_PD_TIMERS_START_ID 

000: Start index for USB-PD stack timers.

CY_USBPD_PD_CABLE_TIMER 

001: Timer used for cable capability check.

CY_USBPD_PD_NO_RESPONSE_TIMER 

002: Response timer.

CY_USBPD_PD_CBL_DSC_ID_TIMER 

003: Timer used for cable discovery state machine.

CY_USBPD_PD_CBL_DELAY_TIMER 

004: Timer used to enforce cable delay.

CY_USBPD_PD_PHY_BUSY_TIMER 

005: Timer used to handle PHY busy status.

CY_USBPD_PD_GOOD_CRC_TX_TIMER 

006: GoodCRC timer.

CY_USBPD_PD_HARD_RESET_TX_TIMER 

007: Hard reset transmit timer.

CY_USBPD_PD_VCONN_SWAP_INITIATOR_TIMER 

008: VConn swap initiator timer.

CY_USBPD_PD_GENERIC_TIMER 

009: Generic AMS timer.

CY_USBPD_PD_PPS_TIMER 

010: PPS related timer.

CY_USBPD_PD_SINK_TX_TIMER 

011: PD 3.0 sink Rp flow control timer.

CY_USBPD_PD_DATA_RESET_COMP_TIMER 

012: Reserved for future use.

CY_USBPD_PD_SNK_EPR_MODE_TIMER 

013: Timer used for Pd Sink EPR Mode.

CY_USBPD_PD_SRC_EPR_MODE_TIMER 

014: Timer used for Pd Source EPR Mode.

CY_USBPD_PD_EPR_KEEPALIVE_TIMER 

015: Timer used by EPR state machine for sending KeepAlive message.

CY_USBPD_PD_TIMER_RESERVED_16 

016: Reserved for future use.

CY_USBPD_PD_TIMERS_END_ID 

016: End index (inclusive) for USB-PD stack timers.

CY_USBPD_TYPEC_TIMERS_START_ID 

017: Start index for Type-C timers.

CY_USBPD_TYPEC_GENERIC_TIMER2 

017: Generic Type-C state machine timer #2.

CY_USBPD_TYPEC_GENERIC_TIMER1 

018: Generic Type-C state machine timer #1.

CY_USBPD_TYPEC_CC1_DEBOUNCE_TIMER 

019: Timer used for CC1 debounce.

CY_USBPD_TYPEC_CC2_DEBOUNCE_TIMER 

020: Timer used for CC2 debounce.

CY_USBPD_TYPEC_RD_DEBOUNCE_TIMER 

021: Timer used for Rd debounce.

CY_USBPD_TYPEC_VBUS_DISCHARGE_TIMER 

022: VBus discharge timer id.

CY_USBPD_TYPEC_ACTIVITY_TIMER 

023: Type-C activity timer id.

CY_USBPD_TYPEC_RP_CHANGE_TIMER 

024: Timer used to trigger current limit update after Rp change.

CY_USBPD_TYPEC_TIMER_RESERVED_23 

025: Reserved for future use.

CY_USBPD_TYPEC_TIMERS_END_ID 

026: End index (inclusive) for Type-C timers.

CY_USBPD_PD_OCP_DEBOUNCE_TIMER 

027: Timer used for FW debounce of VBus OCP.

CY_USBPD_HPD_RX_ACTIVITY_TIMER_ID 

028: Timer used for HPD receive handling.

CY_USBPD_PD_VCONN_OCP_DEBOUNCE_TIMER 

029: Timer used for FW debounce of VConn OCP.

CY_USBPD_PD_TIMER_RESERVED_30 

030: Reserved for future use.

CY_USBPD_PD_TIMER_RESERVED_31 

031: Reserved for future use.

CY_USBPD_PD1_TIMERS_START_ID 

032: Start index for USB-PD stack timers.

CY_USBPD_PD1_CABLE_TIMER 

033: Timer used for cable capability check.

CY_USBPD_PD1_NO_RESPONSE_TIMER 

034: Response timer.

CY_USBPD_PD1_CBL_DSC_ID_TIMER 

035: Timer used for cable discovery state machine.

CY_USBPD_PD1_CBL_DELAY_TIMER 

036: Timer used to enforce cable delay.

CY_USBPD_PD1_PHY_BUSY_TIMER 

037: Timer used to handle PHY busy status.

CY_USBPD_PD1_GOOD_CRC_TX_TIMER 

038: GoodCRC timer.

CY_USBPD_PD1_HARD_RESET_TX_TIMER 

039: Hard reset transmit timer.

CY_USBPD_PD1_VCONN_SWAP_INITIATOR_TIMER 

040: VConn swap initiator timer.

CY_USBPD_PD1_GENERIC_TIMER 

041: Generic AMS timer.

CY_USBPD_PD1_PPS_TIMER 

042: PPS related timer.

CY_USBPD_PD1_SINK_TX_TIMER 

043: PD 3.0 sink Rp flow control timer.

CY_USBPD_PD1_DATA_RESET_COMP_TIMER 

044: Reserved for future use.

CY_USBPD_PD1_SNK_EPR_MODE_TIMER 

045: Timer used for Pd Sink EPR Mode.

CY_USBPD_PD1_SRC_EPR_MODE_TIMER 

046: Timer used for Pd Source EPR Mode.

CY_USBPD_PD1_EPR_KEEPALIVE_TIMER 

047: Timer used by EPR state machine for sending KeepAlive message.

CY_USBPD_PD1_TIMER_RESERVED_48 

048: Reserved for future use.

CY_USBPD_PD1_TIMERS_END_ID 

048: End index (inclusive) for USB-PD stack timers.

CY_USBPD_TYPEC1_TIMERS_START_ID 

049: Start index for Type-C timers.

CY_USBPD_TYPEC1_GENERIC_TIMER2 

049: Generic Type-C state machine timer #2.

CY_USBPD_TYPEC1_GENERIC_TIMER1 

050: Generic Type-C state machine timer #1.

CY_USBPD_TYPEC1_CC1_DEBOUNCE_TIMER 

051: Timer used for CC1 debounce.

CY_USBPD_TYPEC1_CC2_DEBOUNCE_TIMER 

052: Timer used for CC2 debounce.

CY_USBPD_TYPEC1_RD_DEBOUNCE_TIMER 

053: Timer used for Rd debounce.

CY_USBPD_TYPEC1_VBUS_DISCHARGE_TIMER 

054: VBus discharge timer id.

CY_USBPD_TYPEC1_ACTIVITY_TIMER 

055: Type-C activity timer id.

CY_USBPD_TYPEC1_RP_CHANGE_TIMER 

056: Timer used to trigger current limit update after Rp change.

CY_USBPD_TYPEC1_TIMER_RESERVED_53 

057: Reserved for future use.

CY_USBPD_TYPEC1_TIMERS_END_ID 

058: End index (inclusive) for Type-C timers.

CY_USBPD_PD1_OCP_DEBOUNCE_TIMER 

059: Timer used for FW debounce of VBus OCP.

CY_USBPD_HPD1_RX_ACTIVITY_TIMER_ID 

060: Timer used for HPD receive handling.

CY_USBPD_PD1_VCONN_OCP_DEBOUNCE_TIMER 

061: Timer used for FW debounce of VConn OCP.

CY_USBPD_CCG_ACTIVITY_TIMER_ID 

062: PD Application level activity timer.

CY_USBPD_APP_TIMERS_START_ID 

064: Start index for Application level timers.

CY_USBPD_APP_PSOURCE_EN_TIMER 

064: Timer used to ensure timely completion of power source enable operation.

CY_USBPD_APP_PSOURCE_EN_MONITOR_TIMER 

065: Timer used to monitor voltage during power source enable operation.

CY_USBPD_APP_PSOURCE_EN_HYS_TIMER 

066: Timer used to add hysteresis at the end of a power source enable operation.

CY_USBPD_APP_PSOURCE_DIS_TIMER 

067: Timer used to ensure timely completion of power source disable operation.

CY_USBPD_APP_PSOURCE_DIS_MONITOR_TIMER 

068: Timer used to monitor voltage during power source disable operation.

CY_USBPD_APP_PSOURCE_CF_TIMER 

069: Power source Current foldback restart timer ID.

CY_USBPD_APP_PSOURCE_DIS_EXT_DIS_TIMER 

070: Timer used to discharge VBus for some extra time at the end of a power source disable operation.

CY_USBPD_APP_DB_SNK_FET_DIS_DELAY_TIMER 

071: Dead battery Sink Fet disable delay timer.

CY_USBPD_APP_PSINK_DIS_TIMER 

072: Timer used to ensure timely completion of power sink disable operation.

CY_USBPD_APP_PSINK_DIS_MONITOR_TIMER 

073: Timer used to monitor voltage during power sink disable operation.

CY_USBPD_APP_VDM_BUSY_TIMER 

074: Timer used to delay retry of VDMs due to BUSY responses or errors.

CY_USBPD_APP_AME_TIMEOUT_TIMER 

075: Timer used to implement AME timeout.

CY_USBPD_APP_VBUS_OCP_OFF_TIMER 

076: Timer used to disable VBus supply after OC fault.

CY_USBPD_APP_VBUS_OVP_OFF_TIMER 

077: Timer used to disable VBus supply after OV fault.

CY_USBPD_APP_VBUS_UVP_OFF_TIMER 

078: Timer used to disable VBus supply after UV fault.

CY_USBPD_APP_VBUS_SCP_OFF_TIMER 

079: Timer used to disable VBus supply after SC fault.

CY_USBPD_APP_FAULT_RECOVERY_TIMER 

080: App timer used to delay port enable after detecting a fault.

CY_USBPD_APP_SBU_DELAYED_CONNECT_TIMER 

081: Timer used to do delayed SBU connection in Thunderbolt mode.

CY_USBPD_APP_MUX_DELAY_TIMER 

082: Timer used to delay VDM response.

CY_USBPD_APP_MUX_POLL_TIMER 

083: Timer used to MUX status.

CY_USBPD_APP_CBL_DISC_TRIGGER_TIMER 

084: Timer used to trigger cable discovery after a V5V supply change.

CY_USBPD_APP_V5V_CHANGE_DEBOUNCE_TIMER 

085: Timer used to debounce V5V voltage changes.

CY_USBPD_APP_VCONN_RECOVERY_TIMER 

086: Timer used to run Vconn swap after V5V was lost and recovered while UFP.

CY_USBPD_APP_OT_DETECTION_TIMER 

087: Timer used to call OT measurement handler.

CY_USBPD_APP_CHUNKED_MSG_RESP_TIMER 

088: Timer ID used to respond to chunked messages with NOT_SUPPORTED.

CY_USBPD_APP_RESET_VDM_LAYER_TIMER 

089: Timer used to run reset of VDM layer.

CY_USBPD_APP_BB_ON_TIMER 

090: Timer used to provide delay between disabling the Billboard device and re-enabling it.

CY_USBPD_APP_BB_OFF_TIMER 

091: Timer used to display USB billboard interface to save power.

CY_USBPD_APP_INITIATE_SWAP_TIMER 

092: Timer used to initiate SWAP operations in DRP applications with a power/data role preference.

CY_USBPD_APP_VDM_NOT_SUPPORT_RESP_TIMER_ID 

093: VDM Not supported response timer.

CY_USBPD_APP_BC_TIMERS_START_ID 

094: Start of Battery Charging State Machine timers.

CY_USBPD_APP_BC_GENERIC_TIMER1 

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

CY_USBPD_APP_BC_GENERIC_TIMER2 

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

CY_USBPD_APP_BC_DP_DM_DEBOUNCE_TIMER 

097: Timer used to debounce voltage changes on DP and DM pins.

CY_USBPD_APP_BC_DETACH_DETECT_TIMER 

098: Timer used to detect detach of a BC 1.2 sink while functioning as a CDP.

CY_USBPD_APP_CDP_DP_DM_POLL_TIMER 

099: Timer used to initiate DP/DM voltage polling while connected as a CDP.

CY_USBPD_APP_EPR_MODE_TIMER 

100: Timer used by EPR state machine.

CY_USBPD_APP_EPR_EXT_CMD_TIMER 

101: Timer used to send enter/exit EPR mode events to EPR state machine.

CY_USBPD_APP_TIMER_HPD_DELAY_TIMER 

102: This timer is used to delay HPD events.

CY_USBPD_APP_PSOURCE_VBUS_SET_TIMER_ID 

103: Power source VBUS set timer ID.

CY_USBPD_APP_PSOURCE_SAFE_FET_ON_MONITOR_TIMER_ID 

104: Timer to monitor voltage during FET On operation.

CY_USBPD_APP_PSOURCE_SAFE_FET_ON_TIMER_ID 

105: Timeout timer to set safe voltage during FET On operation.

CY_USBPD_VBUS_DISCHARGE_SCHEDULE_TIMER 

106: Timer for VBUS SLow Discharge

CY_USBPD_CCG_LS_MASTER_PORT_DEBOUNCE_TIMER_ID 

107: Macro defines Master Debounce Timer ID.

CY_USBPD_CCG_LS_SLAVE_PORT_DEBOUNCE_TIMER_ID 

108: Macro defines Slave Debounce Timer ID.

CY_USBPD_CCG_LS_MASTER_WRITE_TIMER_ID 

109: Macro defines Master Write Timer ID.

CY_USBPD_CCG_LS_HEART_BEAT_TIMER_ID 

110: Macro defines Heart Beat Timer ID.

CY_USBPD_THROTTLE_TIMER_ID 

111: Power Throttling timer ID.

CY_USBPD_THROTTLE_WAIT_FOR_PD_TIMER_ID 

112: Power Throttling timer ID.

CY_USBPD_HPI_PD_CMD_TIMER 

113: Timer ID reserved for future use.

CY_USBPD_LINS_BUS_INACTIVE_TIMER 

114: Bus Inactivity Timeout for LIN.

CY_USBPD_LINS_BUS_LISTEN_TIMER 

115: Nominal Time for Reception of a single frame from BREAK

CY_USBPD_LINS_MULTIFRAME_DROP_TIMER 

116: Multiframe timer to drop the frame upon late reception.

CY_USBPD_APP_FET_SOFT_START_TIMER_ID 

117: Timer used to control soft turn-on of power FET gate drivers.

CY_USBPD_APP_HAL_VREG_TIMER 

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

CY_USBPD_APP_HAL_GENERIC_TIMER 

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

CY_USBPD_APP_REGULATOR_STARTUP_MONITOR_TIMER 

120: Timer ID reserved for regulator startup monitoring.

CY_USBPD_APP_DATA_RESET_TIMER 

121: Timer ID for DATA Reset handling.

CY_USBPD_SYS_BLACK_BOX_TIMER_ID 

122: Timer ID reserved for blackbox.

CY_USBPD_APP_PSOURCE_REGULATOR_MON_TIMER 

123: Timer ID used to monitor regulator enable status periodically.

CY_USBPD_APP_BAD_SINK_TIMEOUT_TIMER 

124: PD bad sink timeout timer ID.

CY_USBPD_APP_VBAT_GND_SCP_TIMER_ID 

125: VBAT-GND SCP recovery timer.

CY_USBPD_APP_VCONN_OCP_TIMER 

126: Timer to perform delayed start for VCONN OCP.

CY_USBPD_CCG_LS_SNK_CAP_TIMEOUT_TIMER_ID 

127: PD Timeout Timer for LS Slave.

CY_USBPD_APP_GPIO_HPD_TIMER_ID 

128: GPIO based HPD timer.

CY_USBPD_APP_PSOURCE_VBUS_SRC_FET_BYPASS_TIMER_ID 

129: Timer to wait for BB_Enable before performing VBTR transition.

CY_USBPD_APP_TIMERS_RESERVED_START_ID 

130: App Reserved Timer Id Start.

CY_USBPD_APP_TIMER_RESERVED_130 

130 - 191: Timer ID reserved for future use.

CY_USBPD_APP_PORT1_TIMER_START_ID 

192: Start of timer IDs reserved for the application layer management of PD port #1.

CY_USBPD_I2C_SLAVE_SCB0_TIMER 

320: I2C transfer timeout for SCB0.

CY_USBPD_I2C_SLAVE_SCB1_TIMER 

321: I2C transfer timeout for SCB1.

CY_USBPD_I2C_SLAVE_SCB2_TIMER 

322: I2C transfer timeout for SCB2.

CY_USBPD_I2C_SLAVE_SCB3_TIMER 

323: I2C transfer timeout for SCB3.

CY_USBPD_I2C_SLAVE_SCB4_TIMER 

324: I2C transfer timeout for SCB4.

CY_USBPD_I2C_SLAVE_SCB5_TIMER 

325: I2C transfer timeout for SCB5.

CY_USBPD_I2C_SLAVE_SCB6_TIMER 

326: I2C transfer timeout for SCB6.

CY_USBPD_I2C_SLAVE_SCB7_TIMER 

327: I2C transfer timeout for SCB7.

CY_USBPD_SYS_DEEPSLEEP_TIMER_ID 

324: Timer reserved for System Deep Sleep.

CY_USBPD_USER_TIMERS_START_ID 

325: Start of timer IDs left for generic solution level usage.

◆ 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_AUD_ACC 

Audio accessory 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).