From b085096abf4c7ce9f664a5f98c165c0b22e33011 Mon Sep 17 00:00:00 2001 From: John Machado Date: Mon, 19 Oct 2020 20:33:43 +0530 Subject: [PATCH] Adding new gtsysinfo fields. Change-Id: Idf85657fb640823c1a15b61d895b3b40d666b831 --- Source/inc/common/gtsysinfo.h | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/Source/inc/common/gtsysinfo.h b/Source/inc/common/gtsysinfo.h index 783cb87..2d9a6f9 100644 --- a/Source/inc/common/gtsysinfo.h +++ b/Source/inc/common/gtsysinfo.h @@ -151,10 +151,24 @@ typedef struct GT_CCS_INFO typedef struct GT_SQIDI_INFO { - uint32_t NumberofSQIDI; // Total no. of enabled SQIDIs - uint32_t NumberofDoorbellPerSQIDI; // Total no. of doorbells available per SQIDI unit + uint32_t NumberofSQIDI; // Total no. of enabled SQIDIs. + uint32_t NumberofDoorbellPerSQIDI; // Total no. of doorbells available per SQIDI unit }GT_SQIDI_INFO; +typedef union _GT_CACHE_TYPES +{ + struct + { + uint32_t L3 : 1; + uint32_t LLC : 1; + uint32_t eDRAM : 1; + uint32_t Reserved : 29; + }; + + uint32_t CacheTypeMask; + +} GT_CACHE_TYPES; + typedef struct GT_SYSTEM_INFO { // These fields should always hold valid values @@ -214,13 +228,17 @@ typedef struct GT_SYSTEM_INFO GT_SLICE_INFO SliceInfo[GT_MAX_SLICE]; bool IsDynamicallyPopulated; - //SqidiInfo provides the detailed information for number of SQIDIs supported in GT. - //It also provides total no. of doorbells available per SQIDI unit. + //SqidiInfo provides the detailed information for number of SQIDIs supported in GT. + //It also provides total no. of doorbells available per SQIDI unit. GT_SQIDI_INFO SqidiInfo; uint32_t ReservedCCSWays; // Reserved CCS ways provides value of reserved L3 ways for CCS when CCS is enabled. - // This is a hardcoded value as suggested by HW. No MMIO read is needed for same. + // This is a hardcoded value as suggested by HW. No MMIO read is needed for same. GT_CCS_INFO CCSInfo; // CCSInfo provides details(enabled/disabled) of all CCS instances. + + uint32_t NumThreadsPerEu; // Number of threads per EU. + GT_CACHE_TYPES CacheTypes; // Types of caches available on system (L3/LLC/eDRAM). + uint32_t MaxVECS; // Max VECS instances. } GT_SYSTEM_INFO, *PGT_SYSTEM_INFO; #pragma pack(pop)