HPI Library
cy_stc_hpi_dev_reg_t Struct Reference

Description

Structure to define the HPI device-specific register details.

Data Fields

uint8_t device_mode
 00h - Device Operation mode. More...
 
uint8_t boot_mode_reason
 01h - Reason for Boot mode operation. More...
 
uint16_t silicon_id
 03:02h - Device Silicon ID. More...
 
uint16_t bl_last_row
 05:04h - Number of last flash row occupied by Bootloader. More...
 
uint8_t intr_stat
 06h - Interrupt GPIO status. More...
 
uint8_t jump_to_boot
 07h - Jump to boot or alternate firmware. More...
 
uint16_t reset_rqt
 09:08h - Device/I2C reset. More...
 
uint8_t enter_flash
 0Ah - Enter Flashing mode. More...
 
uint8_t validate_fw
 0Bh - Validate firmware image. More...
 
uint32_t flash_read_write
 0F:0Ch - Flash read/write. More...
 
uint8_t dev_version [16]
 1F:10h - Bootloader and FW version. More...
 
uint8_t fw_2_version [8]
 27:20h - Firmware2 version. More...
 
uint16_t fw_bin_loc [2]
 2B:28h - Firmware binary location. More...
 
uint8_t port_enable
 2Ch - PD port enable bit mask. More...
 
uint8_t sleep_ctrl
 2Dh - Deep Sleep enable/disable register. More...
 
uint8_t power_stat
 2Eh - System Power Status register. More...
 
uint8_t set_app_priority
 2Fh - Set application boot priority. More...
 
uint8_t read_customer_info
 30h - Read customer-specific information. More...
 
uint8_t battery_stat
 31h - Current Battery Status register. More...
 
uint8_t wd_reset_count
 32h - Watchdog reset count since startup. More...
 
uint8_t read_die_info
 33h - Read DIA and Silicon ID. More...
 
uint32_t hpi_vers_ext
 37:34h - HPI library and feature support information. More...
 
uint8_t ucsi_status
 38h - UCSI Status register. More...
 
uint8_t ucsi_control
 39h - UCSI Control register. More...
 
uint8_t cfgtab_vers
 3Ah - Config table version supported by firmware. More...
 
uint8_t syspwr_state
 3Bh - System power state (received from EC). More...
 
uint32_t hpi_vers
 3F:3Ch - HPI version and feature support information. More...
 
uint8_t userdef_regs [CY_HPI_USERDEF_REG_COUNT]
 4F:40h - User-specific register space. More...
 
uint8_t bb_disable_reset
 50h - Control register used by Billboard controller to prevent reset. More...
 
uint8_t byte_81_reserved
 51h - Reserved for future implementation. More...
 
uint16_t bb_altmode_status
 53:52h - Alternate mode status to be reported during Billboard enumeration. More...
 
uint8_t bb_oper_model
 54h - Billboard operating model configuration. More...
 
uint8_t bb_addl_fail_info
 55h - Billboard failure information during enumeration. More...
 
uint8_t bb_cmd_reg
 56h - Reserved register to support Billboard commands. More...
 
uint8_t bb_misc_info
 57h - Reserved register to report PD contract status. More...
 
uint8_t bb_bl_version [8]
 5F:58h - Reserved Register to expand Billboard communication. More...
 
uint8_t bb_fw_version [8]
 67:60h - Reserved Register to expand Billboard communication. More...
 
uint8_t reg_6F_68h [8]
 6F:68h - Reserved Register for future use. More...
 
uint16_t pps_design_voltage
 71:70h - PPD design voltage. More...
 
uint8_t fw_update_lock
 72h - FW Update lock state. More...
 
uint8_t dev_control
 73h - Device Control register. More...
 
uint8_t userdef_rsvd [CY_HPI_DEVICE_RESERVED_COUNT]
 7D:74h - Reserved register for future implementation. More...
 
uint8_t response
 7Eh - Response ID/Code. More...
 
uint8_t response_length
 7Fh - Response data length. More...
 

Field Documentation

◆ device_mode

uint8_t cy_stc_hpi_dev_reg_t::device_mode

00h - Device Operation mode.

◆ boot_mode_reason

uint8_t cy_stc_hpi_dev_reg_t::boot_mode_reason

01h - Reason for Boot mode operation.

◆ silicon_id

uint16_t cy_stc_hpi_dev_reg_t::silicon_id

03:02h - Device Silicon ID.

◆ bl_last_row

uint16_t cy_stc_hpi_dev_reg_t::bl_last_row

05:04h - Number of last flash row occupied by Bootloader.

◆ intr_stat

uint8_t cy_stc_hpi_dev_reg_t::intr_stat

06h - Interrupt GPIO status.

◆ jump_to_boot

uint8_t cy_stc_hpi_dev_reg_t::jump_to_boot

07h - Jump to boot or alternate firmware.

◆ reset_rqt

uint16_t cy_stc_hpi_dev_reg_t::reset_rqt

09:08h - Device/I2C reset.

◆ enter_flash

uint8_t cy_stc_hpi_dev_reg_t::enter_flash

0Ah - Enter Flashing mode.

◆ validate_fw

uint8_t cy_stc_hpi_dev_reg_t::validate_fw

0Bh - Validate firmware image.

◆ flash_read_write

uint32_t cy_stc_hpi_dev_reg_t::flash_read_write

0F:0Ch - Flash read/write.

◆ dev_version

uint8_t cy_stc_hpi_dev_reg_t::dev_version[16]

1F:10h - Bootloader and FW version.

◆ fw_2_version

uint8_t cy_stc_hpi_dev_reg_t::fw_2_version[8]

27:20h - Firmware2 version.

◆ fw_bin_loc

uint16_t cy_stc_hpi_dev_reg_t::fw_bin_loc[2]

2B:28h - Firmware binary location.

◆ port_enable

uint8_t cy_stc_hpi_dev_reg_t::port_enable

2Ch - PD port enable bit mask.

◆ sleep_ctrl

uint8_t cy_stc_hpi_dev_reg_t::sleep_ctrl

2Dh - Deep Sleep enable/disable register.

◆ power_stat

uint8_t cy_stc_hpi_dev_reg_t::power_stat

2Eh - System Power Status register.

◆ set_app_priority

uint8_t cy_stc_hpi_dev_reg_t::set_app_priority

2Fh - Set application boot priority.

◆ read_customer_info

uint8_t cy_stc_hpi_dev_reg_t::read_customer_info

30h - Read customer-specific information.

◆ battery_stat

uint8_t cy_stc_hpi_dev_reg_t::battery_stat

31h - Current Battery Status register.

◆ wd_reset_count

uint8_t cy_stc_hpi_dev_reg_t::wd_reset_count

32h - Watchdog reset count since startup.

◆ read_die_info

uint8_t cy_stc_hpi_dev_reg_t::read_die_info

33h - Read DIA and Silicon ID.

◆ hpi_vers_ext

uint32_t cy_stc_hpi_dev_reg_t::hpi_vers_ext

37:34h - HPI library and feature support information.

◆ ucsi_status

uint8_t cy_stc_hpi_dev_reg_t::ucsi_status

38h - UCSI Status register.

◆ ucsi_control

uint8_t cy_stc_hpi_dev_reg_t::ucsi_control

39h - UCSI Control register.

◆ cfgtab_vers

uint8_t cy_stc_hpi_dev_reg_t::cfgtab_vers

3Ah - Config table version supported by firmware.

◆ syspwr_state

uint8_t cy_stc_hpi_dev_reg_t::syspwr_state

3Bh - System power state (received from EC).

◆ hpi_vers

uint32_t cy_stc_hpi_dev_reg_t::hpi_vers

3F:3Ch - HPI version and feature support information.

◆ userdef_regs

uint8_t cy_stc_hpi_dev_reg_t::userdef_regs[CY_HPI_USERDEF_REG_COUNT]

4F:40h - User-specific register space.

◆ bb_disable_reset

uint8_t cy_stc_hpi_dev_reg_t::bb_disable_reset

50h - Control register used by Billboard controller to prevent reset.

◆ byte_81_reserved

uint8_t cy_stc_hpi_dev_reg_t::byte_81_reserved

51h - Reserved for future implementation.

◆ bb_altmode_status

uint16_t cy_stc_hpi_dev_reg_t::bb_altmode_status

53:52h - Alternate mode status to be reported during Billboard enumeration.

◆ bb_oper_model

uint8_t cy_stc_hpi_dev_reg_t::bb_oper_model

54h - Billboard operating model configuration.

◆ bb_addl_fail_info

uint8_t cy_stc_hpi_dev_reg_t::bb_addl_fail_info

55h - Billboard failure information during enumeration.

◆ bb_cmd_reg

uint8_t cy_stc_hpi_dev_reg_t::bb_cmd_reg

56h - Reserved register to support Billboard commands.

◆ bb_misc_info

uint8_t cy_stc_hpi_dev_reg_t::bb_misc_info

57h - Reserved register to report PD contract status.

◆ bb_bl_version

uint8_t cy_stc_hpi_dev_reg_t::bb_bl_version[8]

5F:58h - Reserved Register to expand Billboard communication.

◆ bb_fw_version

uint8_t cy_stc_hpi_dev_reg_t::bb_fw_version[8]

67:60h - Reserved Register to expand Billboard communication.

◆ reg_6F_68h

uint8_t cy_stc_hpi_dev_reg_t::reg_6F_68h[8]

6F:68h - Reserved Register for future use.

◆ pps_design_voltage

uint16_t cy_stc_hpi_dev_reg_t::pps_design_voltage

71:70h - PPD design voltage.

◆ fw_update_lock

uint8_t cy_stc_hpi_dev_reg_t::fw_update_lock

72h - FW Update lock state.

◆ dev_control

uint8_t cy_stc_hpi_dev_reg_t::dev_control

73h - Device Control register.

◆ userdef_rsvd

uint8_t cy_stc_hpi_dev_reg_t::userdef_rsvd[CY_HPI_DEVICE_RESERVED_COUNT]

7D:74h - Reserved register for future implementation.

◆ response

uint8_t cy_stc_hpi_dev_reg_t::response

7Eh - Response ID/Code.

◆ response_length

uint8_t cy_stc_hpi_dev_reg_t::response_length

7Fh - Response data length.