@@ -151,10 +151,24 @@ typedef struct GT_CCS_INFO
151151
152152typedef struct GT_SQIDI_INFO
153153{
154- uint32_t NumberofSQIDI ; // Total no. of enabled SQIDIs
155- uint32_t NumberofDoorbellPerSQIDI ; // Total no. of doorbells available per SQIDI unit
154+ uint32_t NumberofSQIDI ; // Total no. of enabled SQIDIs.
155+ uint32_t NumberofDoorbellPerSQIDI ; // Total no. of doorbells available per SQIDI unit
156156}GT_SQIDI_INFO ;
157157
158+ typedef union _GT_CACHE_TYPES
159+ {
160+ struct
161+ {
162+ uint32_t L3 : 1 ;
163+ uint32_t LLC : 1 ;
164+ uint32_t eDRAM : 1 ;
165+ uint32_t Reserved : 29 ;
166+ };
167+
168+ uint32_t CacheTypeMask ;
169+
170+ } GT_CACHE_TYPES ;
171+
158172typedef struct GT_SYSTEM_INFO
159173{
160174 // These fields should always hold valid values
@@ -214,13 +228,17 @@ typedef struct GT_SYSTEM_INFO
214228 GT_SLICE_INFO SliceInfo [GT_MAX_SLICE ];
215229 bool IsDynamicallyPopulated ;
216230
217- //SqidiInfo provides the detailed information for number of SQIDIs supported in GT.
218- //It also provides total no. of doorbells available per SQIDI unit.
231+ //SqidiInfo provides the detailed information for number of SQIDIs supported in GT.
232+ //It also provides total no. of doorbells available per SQIDI unit.
219233 GT_SQIDI_INFO SqidiInfo ;
220234
221235 uint32_t ReservedCCSWays ; // Reserved CCS ways provides value of reserved L3 ways for CCS when CCS is enabled.
222- // This is a hardcoded value as suggested by HW. No MMIO read is needed for same.
236+ // This is a hardcoded value as suggested by HW. No MMIO read is needed for same.
223237 GT_CCS_INFO CCSInfo ; // CCSInfo provides details(enabled/disabled) of all CCS instances.
238+
239+ uint32_t NumThreadsPerEu ; // Number of threads per EU.
240+ GT_CACHE_TYPES CacheTypes ; // Types of caches available on system (L3/LLC/eDRAM).
241+ uint32_t MaxVECS ; // Max VECS instances.
224242} GT_SYSTEM_INFO , * PGT_SYSTEM_INFO ;
225243
226244#pragma pack(pop)
0 commit comments