diff --git a/projects/rocr-runtime/include/hsakmttypes.h b/projects/rocr-runtime/include/hsakmttypes.h index 210f4fc523..f74641d181 100644 --- a/projects/rocr-runtime/include/hsakmttypes.h +++ b/projects/rocr-runtime/include/hsakmttypes.h @@ -299,7 +299,9 @@ typedef struct _HsaNodeProperties HSA_DEBUG_PROPERTIES DebugProperties; // Debug properties of this node. HSAuint64 HiveID; // XGMI Hive the GPU node belongs to in the system. It is an opaque and static // number hash created by the PSP - HSAuint8 Reserved[44]; + HSAuint32 NumSdmaEngines; // number of PCIe optimized SDMA engines + HSAuint32 NumSdmaXgmiEngines;// number of XGMI optimized SDMA engines + HSAuint8 Reserved[36]; } HsaNodeProperties; diff --git a/projects/rocr-runtime/src/topology.c b/projects/rocr-runtime/src/topology.c index 31f9797d09..4e3290c7ea 100644 --- a/projects/rocr-runtime/src/topology.c +++ b/projects/rocr-runtime/src/topology.c @@ -990,6 +990,10 @@ HSAKMT_STATUS topology_sysfs_get_node_props(uint32_t node_id, props->uCodeEngineVersions.Value = (uint32_t)prop_val & 0x3ff; else if (strcmp(prop_name, "hive_id") == 0) props->HiveID = prop_val; + else if (strcmp(prop_name, "num_sdma_engines") == 0) + props->NumSdmaEngines = prop_val; + else if (strcmp(prop_name, "num_sdma_xgmi_engines") == 0) + props->NumSdmaXgmiEngines = prop_val; } hsa_gfxip = find_hsa_gfxip_device(props->DeviceId);