Skip to content

Commit 23a01f4

Browse files
committed
[Intel] Gaussian & Neural Accelerator - GNA technology
* Renamed Gemini Lake structures
1 parent 4705b32 commit 23a01f4

11 files changed

+37
-8
lines changed

x86_64/corefreq-api.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -814,8 +814,8 @@ typedef struct
814814
ADL_SA_PERF_STATUS ADL_SA_Pll;
815815
};
816816
struct {
817-
GKL_CAPID_A GKL_Cap_A;
818-
GKL_CAPID_B GKL_Cap_B;
817+
GLK_CAPID_A GLK_Cap_A;
818+
GLK_CAPID_B GLK_Cap_B;
819819
};
820820
struct {
821821
MTL_CAPID_A MTL_Cap_A;

x86_64/corefreq-cli-json.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1531,6 +1531,9 @@ void JsonSysInfo(RO(SHM_STRUCT) *RO(Shm))
15311531
json_literal(&s, "%llu", RO(Shm)->Proc.Technology.L2_UpDown_Pf);
15321532
json_key(&s, "LLC_Streamer");
15331533
json_literal(&s, "%llu", RO(Shm)->Proc.Technology.LLC_Streamer);
1534+
json_key(&s, "GNA");
1535+
json_literal(&s, "%llu", RO(Shm)->Proc.Technology.GNA);
1536+
15341537

15351538
json_end_object(&s);
15361539
}

x86_64/corefreq-cli-rsc-en.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1241,6 +1241,7 @@
12411241
#define RSC_TECHNOLOGIES_R2H_CODE_EN "Race To Halt Optimization"
12421242
#define RSC_TECHNOLOGIES_HYPERV_CODE_EN "Hypervisor"
12431243
#define RSC_TECHNOLOGIES_WDT_CODE_EN "Watchdog Timer"
1244+
#define RSC_TECHNOLOGIES_GNA_CODE_EN "Gaussian & Neural Accelerator"
12441245

12451246
#define RSC_TECH_AMD_CPB_COMM_CODE_EN " Hardware Configuration::CpbDis "
12461247
#define RSC_TECH_INTEL_EEO_COMM_CODE_EN " Skylake::Power Control::EEO_Disable "

x86_64/corefreq-cli-rsc-fr.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -715,6 +715,8 @@ do echo -en "$h$l\t""\xc3""\x$h$l""\t"; done; done;echo
715715
#define RSC_TECHNOLOGIES_R2H_CODE_FR "Optimisation Race To Halt"
716716
#define RSC_TECHNOLOGIES_HYPERV_CODE_FR "Hyperviseur"
717717
#define RSC_TECHNOLOGIES_WDT_CODE_FR "Compteur Watchdog"
718+
#define RSC_TECHNOLOGIES_GNA_CODE_FR \
719+
"Acc""\xa9""l""\xa9""rateur Gaussien & Neuronal"
718720

719721
#define RSC_TECH_AMD_CPB_COMM_CODE_FR RSC_TECH_AMD_CPB_COMM_CODE_EN
720722
#define RSC_TECH_INTEL_EEO_COMM_CODE_FR RSC_TECH_INTEL_EEO_COMM_CODE_EN

x86_64/corefreq-cli-rsc.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1151,6 +1151,7 @@ RESOURCE_ST Resource[] = {
11511151
LDQ(RSC_TECH_HYPERV_KBOX),
11521152
LDQ(RSC_TECH_HYPERV_VMWARE),
11531153
LDQ(RSC_TECH_HYPERV_HYPERV),
1154+
LDT(RSC_TECHNOLOGIES_GNA),
11541155
LDT(RSC_PERF_MON_TITLE),
11551156
LDT(RSC_PERF_CAPS_TITLE),
11561157
LDT(RSC_VERSION),

x86_64/corefreq-cli-rsc.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -954,6 +954,7 @@ enum {
954954
RSC_TECH_HYPERV_KBOX,
955955
RSC_TECH_HYPERV_VMWARE,
956956
RSC_TECH_HYPERV_HYPERV,
957+
RSC_TECHNOLOGIES_GNA,
957958
RSC_PERF_MON_TITLE,
958959
RSC_PERF_CAPS_TITLE,
959960
RSC_VERSION,

x86_64/corefreq-cli.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4389,6 +4389,16 @@ REASON_CODE SysInfoTech(Window *win,
43894389
: (char*) RSC(NOT_AVAILABLE).CODE(),
43904390
SCANKEY_NULL,
43914391
NULL
4392+
},
4393+
{
4394+
(unsigned int[]) { CRC_INTEL, 0 },
4395+
RO(Shm)->Proc.Technology.GNA == 1,
4396+
2, "%s%.*sGNA [%3s]",
4397+
RSC(TECHNOLOGIES_GNA).CODE(), NULL,
4398+
width - 14 - RSZ(TECHNOLOGIES_GNA),
4399+
NULL,
4400+
SCANKEY_NULL,
4401+
NULL
43924402
}
43934403
};
43944404
size_t idx;

x86_64/corefreq.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -370,7 +370,8 @@ typedef struct
370370
L2_Stream_HW_Pf : 41-40,
371371
L2_UpDown_Pf : 42-41,
372372
LLC_Streamer : 43-42,
373-
_pad64 : 64-43;
373+
GNA : 44-43,
374+
_pad64 : 64-44;
374375
} Technology;
375376

376377
struct {

x86_64/corefreqd.c

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4970,6 +4970,8 @@ void SKL_CAP(RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc), RO(CORE) *RO(Core))
49704970

49714971
RO(Shm)->Proc.Technology.IOMMU_Ver_Minor = \
49724972
RO(Proc)->Uncore.Bus.IOMMU_Ver.Minor;
4973+
4974+
RO(Shm)->Proc.Technology.GNA = !RO(Proc)->Uncore.Bus.SKL_Cap_B.GMM_DIS;
49734975
}
49744976

49754977
void RKL_IMC(RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc))
@@ -5286,6 +5288,8 @@ void RKL_CAP(RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc), RO(CORE) *RO(Core))
52865288

52875289
RO(Shm)->Proc.Technology.IOMMU_Ver_Minor = \
52885290
RO(Proc)->Uncore.Bus.IOMMU_Ver.Minor;
5291+
5292+
RO(Shm)->Proc.Technology.GNA = !RO(Proc)->Uncore.Bus.RKL_Cap_B.GNA_DIS;
52895293
}
52905294

52915295
void TGL_IMC(RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc))
@@ -5838,6 +5842,8 @@ void ADL_CAP(RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc), RO(CORE) *RO(Core))
58385842

58395843
RO(Shm)->Proc.Technology.IOMMU_Ver_Minor = \
58405844
RO(Proc)->Uncore.Bus.IOMMU_Ver.Minor;
5845+
5846+
RO(Shm)->Proc.Technology.GNA = !RO(Proc)->Uncore.Bus.ADL_Cap_B.GNA_DIS;
58415847
}
58425848

58435849
void GLK_CAP(RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc), RO(CORE) *RO(Core))
@@ -5851,13 +5857,15 @@ void GLK_CAP(RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc), RO(CORE) *RO(Core))
58515857
RO(Shm)->Uncore.Unit.BusSpeed = MC_NIL;
58525858
RO(Shm)->Uncore.Unit.DDRSpeed = MC_NIL;
58535859

5854-
RO(Shm)->Proc.Technology.IOMMU = !RO(Proc)->Uncore.Bus.RKL_Cap_A.VT_d;
5860+
RO(Shm)->Proc.Technology.IOMMU = !RO(Proc)->Uncore.Bus.GLK_Cap_A.VT_d;
58555861

58565862
RO(Shm)->Proc.Technology.IOMMU_Ver_Major = \
58575863
RO(Proc)->Uncore.Bus.IOMMU_Ver.Major;
58585864

58595865
RO(Shm)->Proc.Technology.IOMMU_Ver_Minor = \
58605866
RO(Proc)->Uncore.Bus.IOMMU_Ver.Minor;
5867+
5868+
RO(Shm)->Proc.Technology.GNA = !RO(Proc)->Uncore.Bus.GLK_Cap_B.GMM_DIS;
58615869
}
58625870

58635871
void GLK_IMC(RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc))
@@ -5982,6 +5990,8 @@ void MTL_CAP(RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc), RO(CORE) *RO(Core))
59825990

59835991
RO(Shm)->Proc.Technology.IOMMU_Ver_Minor = \
59845992
RO(Proc)->Uncore.Bus.IOMMU_Ver.Minor;
5993+
5994+
RO(Shm)->Proc.Technology.GNA = !RO(Proc)->Uncore.Bus.MTL_Cap_B.GNA_DIS;
59855995
}
59865996

59875997
void MTL_IMC(RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc))

x86_64/corefreqk.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6514,10 +6514,10 @@ static PCI_CALLBACK GLK_IMC(struct pci_dev *dev)
65146514
PUBLIC(RO(Proc))->Uncore.CtrlCount = 1;
65156515

65166516
pci_read_config_dword(dev, 0xe4,
6517-
&PUBLIC(RO(Proc))->Uncore.Bus.GKL_Cap_A.value);
6517+
&PUBLIC(RO(Proc))->Uncore.Bus.GLK_Cap_A.value);
65186518

65196519
pci_read_config_dword(dev, 0xe8,
6520-
&PUBLIC(RO(Proc))->Uncore.Bus.GKL_Cap_B.value);
6520+
&PUBLIC(RO(Proc))->Uncore.Bus.GLK_Cap_B.value);
65216521

65226522
SoC_SKL_VTD();
65236523

0 commit comments

Comments
 (0)