diff options
Diffstat (limited to 'payloads/libpayload/include/coreboot_tables.h')
-rw-r--r-- | payloads/libpayload/include/coreboot_tables.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/payloads/libpayload/include/coreboot_tables.h b/payloads/libpayload/include/coreboot_tables.h index 91f848654f..a841e0326f 100644 --- a/payloads/libpayload/include/coreboot_tables.h +++ b/payloads/libpayload/include/coreboot_tables.h @@ -82,6 +82,7 @@ enum { CB_TAG_SMMSTOREV2 = 0x0039, CB_TAG_BOARD_CONFIG = 0x0040, CB_TAG_ACPI_CNVS = 0x0041, + CB_TAG_TYPE_C_INFO = 0x0042, CB_TAG_CMOS_OPTION_TABLE = 0x00c8, CB_TAG_OPTION = 0x00c9, CB_TAG_OPTION_ENUM = 0x00ca, @@ -142,6 +143,27 @@ struct cb_mainboard { u8 strings[0]; }; +struct type_c_port_info { + /* + * usb2_port_number and usb3_port_number are expected to be + * the port numbers as seen by the USB controller in the SoC. + */ + uint8_t usb2_port_number; + uint8_t usb3_port_number; + + /* + * Valid sbu_orientation and data_orientation values will be of + * type enum type_c_orienation. + */ + uint8_t sbu_orientation; + uint8_t data_orientation; +}; + +struct type_c_info { + u32 port_count; + struct type_c_port_info port_info[0]; +}; + struct cb_string { u32 tag; u32 size; |