VirtualBox

Ignore:
Timestamp:
Mar 31, 2025 11:31:09 AM (2 weeks ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
168237
Message:

Devices/EFI/FirmwareNew: Merge edk2-stable202502 from the vendor branch and make it build for the important platforms, bugref:4643

Location:
trunk/src/VBox/Devices/EFI/FirmwareNew
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/EFI/FirmwareNew

  • trunk/src/VBox/Devices/EFI/FirmwareNew/MdePkg/Include/Guid/Cper.h

    r99404 r108794  
    12091209} EFI_IOMMU_DMAR_ERROR_DATA;
    12101210
     1211///
     1212/// CXL Cachemem Event Log Valid bits
     1213///@{
     1214#define EFI_CXL_CACHMEM_AGENT_TYPE      BIT0  // CXL Agent Type field is valid
     1215#define EFI_CXL_CACHMEM_AGENT_ADDRESS   BIT1  // CXL Agent Address field is valid
     1216#define EFI_CXL_CACHMEM_DEVICE_ID       BIT2  // Device ID field is valid
     1217#define EFI_CXL_CACHMEM_DEVICE_SER_NUM  BIT3  // Device Serial Number field is valid
     1218#define EFI_CXL_CACHMEM_CAP_STRUCT      BIT4  // Capability structure field is valid
     1219#define EFI_CXL_CACHMEM_DVSEC           BIT5  // CXL DVSET field is valid
     1220#define EFI_CXL_CACHMEM_ERROR_LOG       BIT6  // CXL Error Log field is valid
     1221///@}
     1222
     1223//
     1224// CXL Agent Types
     1225///@{
     1226#define EFI_CXL_AGENT_CXL11_DEV          0    // CXL 1.1 Device
     1227#define EFI_CXL_AGENT_CXL11_DSP          1    // CXL 1.1 Downstream Port
     1228#define EFI_CXL_AGENT_CXL20_DEV          2    // CXL 2.0 Device
     1229#define EFI_CXL_AGENT_CXL20_LOGICAL_DEV  3    // CXL 2.0 Logical Device
     1230#define EFI_CXL_AGENT_CXL20_FMLD         4    // CXL 2.0 Fabric Manager managed Logical device
     1231#define EFI_CXL_AGENT_CXL20_RP           5    // CXL 2.0 Root Port
     1232#define EFI_CXL_AGENT_CXL20_DSP          6    // CXL 2.0 Downstream Switch Port
     1233#define EFI_CXL_AGENT_CXL20_USP          7    // CXL 2.0 Upstream Switch Port
     1234///@}
     1235
     1236//
     1237// CXL Mem Event Log Valid bits
     1238///@{
     1239#define EFI_CXL_MEM_DEVICE_ID       BIT0  // Device ID field is valid
     1240#define EFI_CXL_MEM_DEVICE_SER_NUM  BIT1  // Device Serial Number field is valid
     1241#define EFI_CXL_MEM_COMP_ERROR_LOG  BIT2  // CXL Component Error Log field is valid
     1242///@}
     1243
     1244//
     1245// CXL Agent Address
     1246//
     1247typedef union {
     1248  struct {
     1249    UINT64    Function : 8;
     1250    UINT64    Device   : 8;
     1251    UINT64    Bus      : 8;
     1252    UINT64    Segment  : 16;
     1253    UINT64    Rsvd     : 24;
     1254  } Bits;
     1255  struct {
     1256    UINT32    Low;
     1257    UINT32    High;
     1258  } RcrbBase;
     1259} EFI_CXL_AGENT_ADDRESS;
     1260
     1261//
     1262// CXL Device ID
     1263//
     1264typedef struct {
     1265  UINT16    VendorId;
     1266  UINT16    DeviceId;
     1267  UINT16    Svid;
     1268  UINT16    Sid;
     1269  UINT16    ClassCode;
     1270  struct {
     1271    UINT16    Rsvd : 3;
     1272    UINT16    Num  : 13;
     1273  } Slot;
     1274  UINT32    Rsvd;
     1275} EFI_CXL_AGENT_DEVICE_ID;
     1276
     1277//
     1278// CXL Device Serial Number
     1279//
     1280typedef struct {
     1281  UINT32    Lower;
     1282  UINT32    Upper;
     1283} EFI_CXL_DEVICE_SERIAL_NUM;
     1284
     1285//
     1286// PCIe device identifiers of CXL Component
     1287//
     1288typedef struct {
     1289  UINT16                        VendorId;
     1290  UINT16                        DeviceId;
     1291  UINT8                         Function;
     1292  UINT8                         Device;
     1293  UINT8                         Bus;
     1294  UINT16                        Segment;
     1295  EFI_GENERIC_ERROR_PCI_SLOT    Slot;
     1296  UINT8                         Resvd;
     1297} EFI_CXL_ERROR_PCIE_DEV_ID;
     1298
     1299//
     1300// CXL Component Events Section
     1301//
     1302typedef struct {
     1303  UINT32                       Length;
     1304  UINT64                       ValidFields;
     1305  EFI_CXL_ERROR_PCIE_DEV_ID    CxlDeviceId;
     1306  UINT64                       DeviceSerialNo;
     1307} EFI_CXL_COMPONENT_EVENT_LOG;
     1308
    12111309#pragma pack()
    12121310
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette