diff --git a/aarch64/corefreq-api.h b/aarch64/corefreq-api.h index 426ca405..ae273ac0 100644 --- a/aarch64/corefreq-api.h +++ b/aarch64/corefreq-api.h @@ -304,7 +304,6 @@ typedef struct FEATURES Features; BitCC CR_Mask __attribute__ ((aligned (16))); - BitCC TurboBoost_Mask __attribute__ ((aligned (16))); BitCC HWP_Mask __attribute__ ((aligned (16))); BitCC SPEC_CTRL_Mask __attribute__ ((aligned (16))); @@ -387,7 +386,6 @@ typedef struct } Power; } Delta __attribute__ ((aligned (8))); - BitCC TurboBoost __attribute__ ((aligned (16))); BitCC HWP __attribute__ ((aligned (16))); BitCC VM __attribute__ ((aligned (16))); BitCC CLRBHB __attribute__ ((aligned (16))); diff --git a/aarch64/corefreq-cli-json.c b/aarch64/corefreq-cli-json.c index ea5fa9a5..bfdfb3f8 100644 --- a/aarch64/corefreq-cli-json.c +++ b/aarch64/corefreq-cli-json.c @@ -702,10 +702,6 @@ void JsonSysInfo(RO(SHM_STRUCT) *RO(Shm)) json_literal(&s, "%u", (unsigned) RO(Shm)->Proc.Features.Power.PTM); json_key(&s, "HWP_Registers"); json_literal(&s, "%u", (unsigned) RO(Shm)->Proc.Features.Power.HWP_Reg); - json_key(&s, "Turbo_V3"); - json_literal(&s, "%u", (unsigned) RO(Shm)->Proc.Features.Power.Turbo_V3); - json_key(&s, "HCF_Cap"); - json_literal(&s, "%u", (unsigned) RO(Shm)->Proc.Features.Power.HCF_Cap); json_end_object(&s); } @@ -727,10 +723,10 @@ void JsonSysInfo(RO(SHM_STRUCT) *RO(Shm)) json_literal(&s, "%u", (unsigned) RO(Shm)->Proc.Features.PerfMon.CoreCycles); json_key(&s, "InstrRetired"); json_literal(&s, "%u", (unsigned) RO(Shm)->Proc.Features.PerfMon.InstrRetired); - json_key(&s, "PMC_LLC"); - json_literal(&s, "%u", (unsigned) RO(Shm)->Proc.Features.Factory.PMC.LLC); - json_key(&s, "PMC_NB"); - json_literal(&s, "%u", (unsigned) RO(Shm)->Proc.Features.Factory.PMC.NB); + json_key(&s, "AMU_CG0NC"); + json_literal(&s, "%u", (unsigned) RO(Shm)->Proc.Features.AMU.CG0NC); + json_key(&s, "AMU_CG1NC"); + json_literal(&s, "%u", (unsigned) RO(Shm)->Proc.Features.AMU.CG1NC); json_end_object(&s); } @@ -779,8 +775,6 @@ void JsonSysInfo(RO(SHM_STRUCT) *RO(Shm)) json_key(&s, "Technology"); { json_start_object(&s); - json_key(&s, "Turbo"); - json_literal(&s, "%llu", RO(Shm)->Proc.Technology.Turbo); json_key(&s, "VM"); json_literal(&s, "%llu", RO(Shm)->Proc.Technology.VM); json_key(&s, "IOMMU"); diff --git a/aarch64/corefreq-cli-rsc-en.h b/aarch64/corefreq-cli-rsc-en.h index 0d4e766e..33a61500 100644 --- a/aarch64/corefreq-cli-rsc-en.h +++ b/aarch64/corefreq-cli-rsc-en.h @@ -844,8 +844,6 @@ #define RSC_TECHNOLOGIES_TITLE_CODE_EN " Technologies " #define RSC_TECHNOLOGIES_DCU_CODE_EN "Data Cache Unit" #define RSC_TECHNOLOGIES_ICU_CODE_EN "Instruction Cache Unit" -#define RSC_TECHNOLOGIES_TURBO_CODE_EN "Turbo Boost" -#define RSC_TECHNOLOGIES_TBMT3_CODE_EN "Turbo Boost Max 3.0" #define RSC_TECHNOLOGIES_VM_CODE_EN "Virtualization" #define RSC_TECHNOLOGIES_IOMMU_CODE_EN "I/O MMU" #define RSC_TECHNOLOGIES_SMT_CODE_EN "Simultaneous Multithreading" @@ -860,7 +858,6 @@ #define RSC_GENERAL_CTRS_CODE_EN "General" #define RSC_FIXED_CTRS_CODE_EN "Fixed" #define RSC_PERF_MON_UNIT_BIT_CODE_EN "bits" -#define RSC_PERF_MON_HWCF_CODE_EN "P-State Hardware Coordination Feedback" #define RSC_PERF_MON_CPPC_CODE_EN "Collaborative Processor Performance Control" #define RSC_PERF_MON_PCT_CODE_EN "Processor Performance Control" #define RSC_PERF_MON_PSS_CODE_EN "Performance Supported States" @@ -879,7 +876,7 @@ #define RSC_PERF_MON_INST_RET_CODE_EN "Instructions Counter" #define RSC_PERF_MON_PMC_COMM_CODE_EN \ - " { Core performance monitoring, LLC cache, Northbridge } " + " { Core performance monitoring, AMU-CG0NC, AMU-CG1NC } " #define RSC_PERF_MON_CPPC_COMM_CODE_EN " Firmware " @@ -1368,19 +1365,8 @@ #define RSC_BOX_MODE_TITLE_CODE_EN " Experimental " #define RSC_BOX_MODE_DESC_CODE_EN " CoreFreq Operation Mode " -#define RSC_BOX_TURBO_DESC_CODE_EN " Turbo Boost/Core Performance Boost " -#define RSC_BOX_C1A_DESC_CODE_EN " C1 Auto Demotion " -#define RSC_BOX_C3A_DESC_CODE_EN " C3 Auto Demotion " -#define RSC_BOX_C1U_DESC_CODE_EN " C1 UnDemotion " -#define RSC_BOX_C2U_DESC_CODE_EN " C2 UnDemotion " -#define RSC_BOX_C3U_DESC_CODE_EN " C3 UnDemotion " -#define RSC_BOX_C6D_DESC_CODE_EN " Core C6 Demotion " -#define RSC_BOX_MC6_DESC_CODE_EN " Module C6 Demotion " -#define RSC_BOX_CC6_DESC_CODE_EN " Core C6 State " -#define RSC_BOX_PC6_DESC_CODE_EN " Package C6 State " #define RSC_BOX_HWP_DESC_CODE_EN " Hardware-Controlled Performance " #define RSC_BOX_FMW_DESC_CODE_EN " Firmware Controlled Performance " -#define RSC_BOX_HSMP_DESC_CODE_EN " Host System Management Port " #define RSC_BOX_NOMINAL_MODE_COND0_CODE_EN \ " Nominal operating mode " @@ -1634,25 +1620,9 @@ #define RSC_SETTINGS_ROUTE_HALT_CODE " HALT" #define RSC_SETTINGS_ROUTE_MWAIT_CODE " MWAIT" -#define RSC_BOX_TURBO_TITLE_CODE " Turbo " - -#define RSC_BOX_C1A_TITLE_CODE " C1A " -#define RSC_BOX_C3A_TITLE_CODE " C3A " -#define RSC_BOX_C1U_TITLE_CODE " C1U " -#define RSC_BOX_C2U_TITLE_CODE " C2U " -#define RSC_BOX_C3U_TITLE_CODE " C3U " - -#define RSC_BOX_CC6_TITLE_CODE " CC6 " -#define RSC_BOX_C6D_TITLE_CODE " C6D " - -#define RSC_BOX_MC6_TITLE_CODE " MC6 " -#define RSC_BOX_PC6_TITLE_CODE " PC6 " #define RSC_BOX_CPPC_TITLE_CODE " CPPC " - #define RSC_BOX_HWP_TITLE_CODE " HWP " -#define RSC_BOX_HSMP_TITLE_CODE " HSMP " - #define RSC_BOX_CFG_TDP_BLANK_CODE " " #define RSC_BOX_PWR_OFFSET_00_CODE " +50 watts " diff --git a/aarch64/corefreq-cli-rsc-fr.h b/aarch64/corefreq-cli-rsc-fr.h index 3ecbb206..f6474ff7 100644 --- a/aarch64/corefreq-cli-rsc-fr.h +++ b/aarch64/corefreq-cli-rsc-fr.h @@ -545,8 +545,6 @@ do echo -en "$h$l\t""\xc3""\x$h$l""\t"; done; done;echo #define RSC_TECHNOLOGIES_TITLE_CODE_FR " Technologies " #define RSC_TECHNOLOGIES_DCU_CODE_FR "Unit""\xa9"" de cache de donn""\xa9""es" #define RSC_TECHNOLOGIES_ICU_CODE_FR "Unit""\xa9"" de cache d'instructions" -#define RSC_TECHNOLOGIES_TURBO_CODE_FR "Turbo Boost" -#define RSC_TECHNOLOGIES_TBMT3_CODE_FR "Turbo Boost Max 3.0" #define RSC_TECHNOLOGIES_VM_CODE_FR "Virtualisation" #define RSC_TECHNOLOGIES_IOMMU_CODE_FR "MMU E/S" #define RSC_TECHNOLOGIES_SMT_CODE_FR "Multithreading simultan""\xa9" @@ -561,7 +559,6 @@ do echo -en "$h$l\t""\xc3""\x$h$l""\t"; done; done;echo #define RSC_GENERAL_CTRS_CODE_FR "G""\xa9""n""\xa9""raux" #define RSC_FIXED_CTRS_CODE_FR "Fixes" #define RSC_PERF_MON_UNIT_BIT_CODE_FR "bits" -#define RSC_PERF_MON_HWCF_CODE_FR "P-State Hardware Coordination Feedback" #define RSC_PERF_MON_CPPC_CODE_FR \ "Contr""\xb4""le collaboratif des performances du processeur" @@ -581,8 +578,7 @@ do echo -en "$h$l\t""\xc3""\x$h$l""\t"; done; done;echo #define RSC_PERF_MON_CORE_CYCLE_CODE_FR "Core Cycles Counter" #define RSC_PERF_MON_INST_RET_CODE_FR "Instructions Counter" -#define RSC_PERF_MON_PMC_COMM_CODE_FR \ - " { Core performance monitoring, Cache LLC, Northbridge } " +#define RSC_PERF_MON_PMC_COMM_CODE_FR RSC_PERF_MON_PMC_COMM_CODE_EN #define RSC_PERF_MON_CPPC_COMM_CODE_FR " Micrologiciel " @@ -1019,40 +1015,12 @@ do echo -en "$h$l\t""\xc3""\x$h$l""\t"; done; done;echo #define RSC_BOX_MODE_DESC_CODE_FR " CoreFreq mode " \ "op""\xa9""rationnel " -#define RSC_BOX_TURBO_DESC_CODE_FR " Turbo Boost/Core Performance Boost " - -#define RSC_BOX_C1A_DESC_CODE_FR " Auto r""\xa9""trogradation" \ - " C1 " - -#define RSC_BOX_C3A_DESC_CODE_FR " Auto r""\xa9""trogradation" \ - " C3 " - -#define RSC_BOX_C1U_DESC_CODE_FR " Non-r""\xa9""trogradation" \ - " C1 " - -#define RSC_BOX_C2U_DESC_CODE_FR " Non-r""\xa9""trogradation" \ - " C2 " - -#define RSC_BOX_C3U_DESC_CODE_FR " Non-r""\xa9""trogradation" \ - " C3 " - -#define RSC_BOX_C6D_DESC_CODE_FR " C6 Core Demotion " -#define RSC_BOX_MC6_DESC_CODE_FR " C6 Module Demotion " - -#define RSC_BOX_CC6_DESC_CODE_FR " Core ""\x89""tat" \ - " C6 " - -#define RSC_BOX_PC6_DESC_CODE_FR " Package ""\x89""tat" \ - " C6 " - #define RSC_BOX_HWP_DESC_CODE_FR " Contr""\xb4""le Mat""\xa9""riel" \ " de la Performance" #define RSC_BOX_FMW_DESC_CODE_FR " Contr""\xb4""le Firmware" \ " de la Performance" -#define RSC_BOX_HSMP_DESC_CODE_FR " Host System Management Port " - #define RSC_BOX_NOMINAL_MODE_COND0_CODE_FR \ " Fonctionnement" \ " nominal " diff --git a/aarch64/corefreq-cli-rsc.c b/aarch64/corefreq-cli-rsc.c index 1f874f96..beb27d61 100644 --- a/aarch64/corefreq-cli-rsc.c +++ b/aarch64/corefreq-cli-rsc.c @@ -799,8 +799,6 @@ RESOURCE_ST Resource[] = { LDT(RSC_TECHNOLOGIES_TITLE), LDT(RSC_TECHNOLOGIES_DCU), LDT(RSC_TECHNOLOGIES_ICU), - LDT(RSC_TECHNOLOGIES_TURBO), - LDT(RSC_TECHNOLOGIES_TBMT3), LDT(RSC_TECHNOLOGIES_VM), LDT(RSC_TECHNOLOGIES_VM_COMM), LDT(RSC_TECHNOLOGIES_IOMMU), @@ -822,7 +820,6 @@ RESOURCE_ST Resource[] = { LDT(RSC_GENERAL_CTRS), LDT(RSC_FIXED_CTRS), LDT(RSC_PERF_MON_UNIT_BIT), - LDT(RSC_PERF_MON_HWCF), LDT(RSC_PERF_MON_CPPC), LDT(RSC_PERF_MON_PCT), LDT(RSC_PERF_MON_PSS), @@ -1379,32 +1376,10 @@ RESOURCE_ST Resource[] = { LDT(RSC_BOX_AUTO_CLOCK_TITLE), LDT(RSC_BOX_MODE_TITLE), LDT(RSC_BOX_MODE_DESC), - LDQ(RSC_BOX_TURBO_TITLE), - LDT(RSC_BOX_TURBO_DESC), - LDQ(RSC_BOX_C1A_TITLE), - LDT(RSC_BOX_C1A_DESC), - LDQ(RSC_BOX_C3A_TITLE), - LDT(RSC_BOX_C3A_DESC), - LDQ(RSC_BOX_C1U_TITLE), - LDT(RSC_BOX_C1U_DESC), - LDQ(RSC_BOX_C2U_TITLE), - LDT(RSC_BOX_C2U_DESC), - LDQ(RSC_BOX_C3U_TITLE), - LDT(RSC_BOX_C3U_DESC), - LDT(RSC_BOX_C6D_DESC), - LDQ(RSC_BOX_MC6_TITLE), - LDT(RSC_BOX_MC6_DESC), - LDQ(RSC_BOX_CC6_TITLE), - LDQ(RSC_BOX_C6D_TITLE), - LDT(RSC_BOX_CC6_DESC), - LDQ(RSC_BOX_PC6_TITLE), - LDT(RSC_BOX_PC6_DESC), LDQ(RSC_BOX_CPPC_TITLE), LDQ(RSC_BOX_HWP_TITLE), LDT(RSC_BOX_HWP_DESC), LDT(RSC_BOX_FMW_DESC), - LDQ(RSC_BOX_HSMP_TITLE), - LDT(RSC_BOX_HSMP_DESC), LDQ(RSC_BOX_BLANK_DESC), LDT(RSC_BOX_NOMINAL_MODE_COND0), LDT(RSC_BOX_NOMINAL_MODE_COND1), diff --git a/aarch64/corefreq-cli-rsc.h b/aarch64/corefreq-cli-rsc.h index d4cd960e..fe4e283b 100644 --- a/aarch64/corefreq-cli-rsc.h +++ b/aarch64/corefreq-cli-rsc.h @@ -622,8 +622,6 @@ enum { RSC_TECHNOLOGIES_TITLE, RSC_TECHNOLOGIES_DCU, RSC_TECHNOLOGIES_ICU, - RSC_TECHNOLOGIES_TURBO, - RSC_TECHNOLOGIES_TBMT3, RSC_TECHNOLOGIES_VM, RSC_TECHNOLOGIES_VM_COMM, RSC_TECHNOLOGIES_IOMMU, @@ -645,7 +643,6 @@ enum { RSC_GENERAL_CTRS, RSC_FIXED_CTRS, RSC_PERF_MON_UNIT_BIT, - RSC_PERF_MON_HWCF, RSC_PERF_MON_CPPC, RSC_PERF_MON_PCT, RSC_PERF_MON_PSS, @@ -1202,32 +1199,10 @@ enum { RSC_BOX_AUTO_CLOCK_TITLE, RSC_BOX_MODE_TITLE, RSC_BOX_MODE_DESC, - RSC_BOX_TURBO_TITLE, - RSC_BOX_TURBO_DESC, - RSC_BOX_C1A_TITLE, - RSC_BOX_C1A_DESC, - RSC_BOX_C3A_TITLE, - RSC_BOX_C3A_DESC, - RSC_BOX_C1U_TITLE, - RSC_BOX_C1U_DESC, - RSC_BOX_C2U_TITLE, - RSC_BOX_C2U_DESC, - RSC_BOX_C3U_TITLE, - RSC_BOX_C3U_DESC, - RSC_BOX_C6D_DESC, - RSC_BOX_MC6_TITLE, - RSC_BOX_MC6_DESC, - RSC_BOX_CC6_TITLE, - RSC_BOX_C6D_TITLE, - RSC_BOX_CC6_DESC, - RSC_BOX_PC6_TITLE, - RSC_BOX_PC6_DESC, RSC_BOX_CPPC_TITLE, RSC_BOX_HWP_TITLE, RSC_BOX_HWP_DESC, RSC_BOX_FMW_DESC, - RSC_BOX_HSMP_TITLE, - RSC_BOX_HSMP_DESC, RSC_BOX_BLANK_DESC, RSC_BOX_NOMINAL_MODE_COND0, RSC_BOX_NOMINAL_MODE_COND1, diff --git a/aarch64/corefreq-cli.c b/aarch64/corefreq-cli.c index 33cb5a5e..a6f5face 100644 --- a/aarch64/corefreq-cli.c +++ b/aarch64/corefreq-cli.c @@ -2269,15 +2269,6 @@ void TechUpdate(TGrid *grid, const int unsigned bix, const signed int pos, memcpy(&grid->cell.item[pos], item, len); } -void TurboUpdate(TGrid *grid, DATA_TYPE data[]) -{ - const unsigned int bix = RO(Shm)->Proc.Technology.Turbo == 1; - const signed int pos = grid->cell.length - 5; - UNUSED(data); - - TechUpdate(grid, bix, pos, 3, ENABLED(bix)); -} - REASON_CODE SysInfoTech(Window *win, CUINT width, CELL_FUNC OutFunc, @@ -2341,19 +2332,6 @@ REASON_CODE SysInfoTech(Window *win, SCANKEY_NULL, NULL }, - { - NULL, - RO(Shm)->Proc.Technology.Turbo == 1, - 2, "%s%.*sTURBO <%3s>", - RO(Shm)->Proc.Features.Power.Turbo_V3 == 1 ? - RSC(TECHNOLOGIES_TBMT3).CODE() : RSC(TECHNOLOGIES_TURBO).CODE(), - NULL, - width - 16 - (RO(Shm)->Proc.Features.Power.Turbo_V3 == 1 ? - RSZ(TECHNOLOGIES_TBMT3) : RSZ(TECHNOLOGIES_TURBO)), - NULL, - BOXKEY_TURBO, - TurboUpdate - }, { NULL, RO(Shm)->Cpu[RO(Shm)->Proc.Service.Core].Query.CStateBaseAddr != 0, @@ -2596,8 +2574,8 @@ REASON_CODE SysInfoPerfMon( Window *win, PUT( SCANKEY_NULL, attrib[0], width, 1, "%.*s{%3u,%3u,%3u } x%3u %s%.*s%3u x%3u %s", 11, hSpace, RO(Shm)->Proc.Features.PerfMon.MonCtrs, - RO(Shm)->Proc.Features.Factory.PMC.LLC, - RO(Shm)->Proc.Features.Factory.PMC.NB, + RO(Shm)->Proc.Features.AMU.CG0NC, + RO(Shm)->Proc.Features.AMU.CG1NC, RO(Shm)->Proc.Features.PerfMon.MonWidth, RSC(PERF_MON_UNIT_BIT).CODE(), 10, hSpace, RO(Shm)->Proc.Features.PerfMon.FixCtrs, @@ -2607,8 +2585,8 @@ REASON_CODE SysInfoPerfMon( Window *win, GridHover( PUT( SCANKEY_NULL, attrib[0], width, 0, "%.*s{%3u,%3u,%3u } x%3u %s%.*s%3u x%3u %s", 11, hSpace, RO(Shm)->Proc.Features.PerfMon.MonCtrs, - RO(Shm)->Proc.Features.Factory.PMC.LLC, - RO(Shm)->Proc.Features.Factory.PMC.NB, + RO(Shm)->Proc.Features.AMU.CG0NC, + RO(Shm)->Proc.Features.AMU.CG1NC, RO(Shm)->Proc.Features.PerfMon.MonWidth, RSC(PERF_MON_UNIT_BIT).CODE(), 4, hSpace, RO(Shm)->Proc.Features.PerfMon.FixCtrs, @@ -2616,13 +2594,6 @@ REASON_CODE SysInfoPerfMon( Window *win, RSC(PERF_MON_UNIT_BIT).CODE() ), (char *) RSC(PERF_MON_PMC_COMM).CODE() ); } -/* Section Mark */ - bix = RO(Shm)->Proc.Features.Power.HCF_Cap == 1; - - PUT( SCANKEY_NULL, attrib[bix], width, 2, - "%s%.*s%s [%3s]", RSC(PERF_MON_HWCF).CODE(), - width - 26 - RSZ(PERF_MON_HWCF), hSpace, - RSC(PERF_LABEL_HWCF).CODE(), ENABLED(bix) ); /* Section Mark */ PUT( SCANKEY_NULL, attrib[0], width, 2, "%s", RSC(PERF_MON_CORE_CSTATE).CODE() ); @@ -6786,7 +6757,7 @@ Window *CreateSysInfo(unsigned long long id) case SCANKEY_t: { winOrigin.col = 23; - matrixSize.hth = 10; + matrixSize.hth = 9; winOrigin.row = TOP_HEADER_ROW + 5; winWidth = 60; SysInfoFunc = SysInfoTech; @@ -10952,56 +10923,6 @@ int Shortcut(SCANKEY *scan) } break; - case BOXKEY_TURBO: - { - Window *win = SearchWinListById(scan->key, &winList); - if (win == NULL) - { - const Coordinate origin = { - .col = (Draw.Size.width - RSZ(BOX_BLANK_DESC)) / 2, - .row = TOP_HEADER_ROW + 2 - }, select = { - .col = 0, - .row = RO(Shm)->Proc.Technology.Turbo ? 4 : 3 - }; - AppendWindow( - CreateBox(scan->key, origin, select, - (char*) RSC(BOX_TURBO_TITLE).CODE(), - RSC(BOX_BLANK_DESC).CODE(), blankAttr, SCANKEY_NULL, - RSC(BOX_TURBO_DESC).CODE(), descAttr, SCANKEY_NULL, - RSC(BOX_BLANK_DESC).CODE(), blankAttr, SCANKEY_NULL, - stateStr[1][RO(Shm)->Proc.Technology.Turbo], - stateAttr[RO(Shm)->Proc.Technology.Turbo], - BOXKEY_TURBO_ON, - stateStr[0][!RO(Shm)->Proc.Technology.Turbo], - stateAttr[!RO(Shm)->Proc.Technology.Turbo], - BOXKEY_TURBO_OFF, - RSC(BOX_BLANK_DESC).CODE(), blankAttr, SCANKEY_NULL), - &winList); - } else { - SetHead(&winList, win); - } - } - break; - - case BOXKEY_TURBO_OFF: - if (!RING_FULL(RW(Shm)->Ring[0])) { - RING_WRITE( RW(Shm)->Ring[0], - COREFREQ_IOCTL_TECHNOLOGY, - COREFREQ_TOGGLE_OFF, - TECHNOLOGY_TURBO ); - } - break; - - case BOXKEY_TURBO_ON: - if (!RING_FULL(RW(Shm)->Ring[0])) { - RING_WRITE( RW(Shm)->Ring[0], - COREFREQ_IOCTL_TECHNOLOGY, - COREFREQ_TOGGLE_ON, - TECHNOLOGY_TURBO ); - } - break; - case BOXKEY_HWP_EPP: { CPU_STRUCT *SProc = &RO(Shm)->Cpu[RO(Shm)->Proc.Service.Core]; diff --git a/aarch64/corefreq-cli.h b/aarch64/corefreq-cli.h index 3f26b220..955d9540 100644 --- a/aarch64/corefreq-cli.h +++ b/aarch64/corefreq-cli.h @@ -139,9 +139,6 @@ enum KEY_ENUM { OPS_POWER_SCOPE_CORE = OPS_POWER_SCOPE | (7 ^ FORMULA_SCOPE_CORE), OPS_POWER_SCOPE_PKG = OPS_POWER_SCOPE | (7 ^ FORMULA_SCOPE_PKG), - BOXKEY_TURBO = 0x3000000000000010LLU, - BOXKEY_TURBO_OFF = 0x3000000000000011LLU, - BOXKEY_TURBO_ON = 0x3000000000000012LLU, BOXKEY_HWP = 0x3000000000004020LLU, BOXKEY_HWP_ON = 0x3000000000004021LLU, BOXKEY_HWP_EPP = 0x3000000000004040LLU, @@ -364,9 +361,6 @@ int CheckDuplicateKey(void) \ case OPS_POWER_SCOPE_SMT: \ case OPS_POWER_SCOPE_CORE: \ case OPS_POWER_SCOPE_PKG: \ - case BOXKEY_TURBO: \ - case BOXKEY_TURBO_OFF: \ - case BOXKEY_TURBO_ON: \ case BOXKEY_HWP: \ case BOXKEY_HWP_ON: \ case BOXKEY_HWP_EPP: \ diff --git a/aarch64/corefreq.h b/aarch64/corefreq.h index b6af3426..fb20bea2 100644 --- a/aarch64/corefreq.h +++ b/aarch64/corefreq.h @@ -233,12 +233,13 @@ typedef struct struct { unsigned long long - Turbo : 5-4, + _Unused1_ : 13-0, VM : 14-13, IOMMU : 15-14, + _Unused2_ : 20-15, IOMMU_Ver_Major : 24-20, IOMMU_Ver_Minor : 28-24, - _pad64 : 64-34; + _Unused3_ : 64-28; } Technology; struct { diff --git a/aarch64/corefreqd.c b/aarch64/corefreqd.c index cdb34cf6..baa24833 100644 --- a/aarch64/corefreqd.c +++ b/aarch64/corefreqd.c @@ -635,10 +635,6 @@ void ThermalPoint(RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc)) void Technology_Update( RO(SHM_STRUCT) *RO(Shm), RO(PROC) *RO(Proc), RW(PROC) *RW(Proc) ) { /* Technologies aggregation. */ - RO(Shm)->Proc.Technology.Turbo = BITWISEAND_CC(LOCKLESS, - RW(Proc)->TurboBoost, - RO(Proc)->TurboBoost_Mask) != 0; - RO(Shm)->Proc.Technology.VM = BITWISEAND_CC(LOCKLESS, RW(Proc)->VM, RO(Proc)->CR_Mask) != 0; diff --git a/aarch64/corefreqk.c b/aarch64/corefreqk.c index 621267b2..53f1faaf 100644 --- a/aarch64/corefreqk.c +++ b/aarch64/corefreqk.c @@ -126,12 +126,6 @@ static unsigned short NMI_Disable = 1; module_param(NMI_Disable, ushort, S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH); MODULE_PARM_DESC(NMI_Disable, "Disable the NMI Handler"); -static unsigned int TurboBoost_Enable_Count = 1; -static signed short TurboBoost_Enable[2] = {-1, -1}; -module_param_array(TurboBoost_Enable, short, &TurboBoost_Enable_Count, \ - S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH); -MODULE_PARM_DESC(TurboBoost_Enable, "Enable Turbo Boost"); - static enum RATIO_BOOST Ratio_Boost_Count = 0; static signed int Ratio_Boost[BOOST(SIZE) - BOOST(18C)] = { /* 18C */ -1, @@ -254,7 +248,6 @@ static struct { /*MANDATORY*/ .setpolicy = CoreFreqK_SetPolicy, #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 14, 0) .bios_limit= CoreFreqK_Bios_Limit, - .set_boost = CoreFreqK_SetBoost #else .bios_limit= CoreFreqK_Bios_Limit #endif @@ -1033,7 +1026,8 @@ static void Query_Features(void *pArg) } if (iArg->Features->AMU_vers > 0) { AMCGCR amcgc = {.value = SysRegRead(AMCGCR_EL0)}; - iArg->Features->PerfMon.FixCtrs += amcgc.CG0NC + amcgc.CG1NC; + iArg->Features->AMU.CG0NC = amcgc.CG0NC; + iArg->Features->AMU.CG1NC = amcgc.CG1NC; } switch (pfr0.RME) { case 0b0001: @@ -2158,11 +2152,9 @@ void SystemRegisters(CORE_RO *Core) void PerCore_Reset(CORE_RO *Core) { - BITCLR_CC(LOCKLESS, PUBLIC(RO(Proc))->TurboBoost_Mask,Core->Bind); BITCLR_CC(LOCKLESS, PUBLIC(RO(Proc))->HWP_Mask , Core->Bind); BITCLR_CC(LOCKLESS, PUBLIC(RO(Proc))->CR_Mask , Core->Bind); - BITCLR_CC(LOCKLESS, PUBLIC(RW(Proc))->TurboBoost, Core->Bind); BITCLR_CC(LOCKLESS, PUBLIC(RW(Proc))->HWP , Core->Bind); BITCLR_CC(LOCKLESS, PUBLIC(RW(Proc))->CSV2_1 , Core->Bind); BITCLR_CC(LOCKLESS, PUBLIC(RW(Proc))->CSV2_2 , Core->Bind); @@ -2204,7 +2196,6 @@ static void PerCore_GenericMachine(void *arg) SystemRegisters(Core); - BITSET_CC(LOCKLESS, PUBLIC(RO(Proc))->TurboBoost_Mask,Core->Bind); BITSET_CC(LOCKLESS, PUBLIC(RO(Proc))->SPEC_CTRL_Mask, Core->Bind); } @@ -3396,39 +3387,6 @@ static int CoreFreqK_Bios_Limit(int cpu, unsigned int *limit) return 0; } -void Policy_Aggregate_Turbo(void) -{ -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 14, 0) - if (PUBLIC(RO(Proc))->Registration.Driver.CPUfreq & REGISTRATION_ENABLE) { - CoreFreqK.FreqDriver.boost_enabled = ( - BITWISEAND_CC( LOCKLESS, - PUBLIC(RW(Proc))->TurboBoost, - PUBLIC(RO(Proc))->TurboBoost_Mask ) != 0 - ); - } -#endif -} - -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 14, 0) -#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0) \ - || ((RHEL_MAJOR == 8) && (RHEL_MINOR > 3)) -static int CoreFreqK_SetBoost(struct cpufreq_policy *policy, int state) -{ - UNUSED(policy); -#else -static int CoreFreqK_SetBoost(int state) -{ -#endif /* 5.8.0 */ - Controller_Stop(1); - TurboBoost_Enable[0] = (state != 0); - Controller_Start(1); - TurboBoost_Enable[0] = -1; - Policy_Aggregate_Turbo(); - BITSET(BUS_LOCK, PUBLIC(RW(Proc))->OS.Signal, NTFY); /* Notify Daemon*/ - return 0; -} -#endif /* 3.14.0 */ - static ssize_t CoreFreqK_Show_SetSpeed(struct cpufreq_policy *policy,char *buf) { if (policy != NULL) @@ -4063,9 +4021,6 @@ static long CoreFreqK_ioctl( struct file *filp, break; case COREFREQ_TOGGLE_ON: Controller_Start(1); - #ifdef CONFIG_CPU_FREQ - Policy_Aggregate_Turbo(); - #endif /* CONFIG_CPU_FREQ */ rc = RC_OK_COMPUTE; break; } @@ -4284,22 +4239,6 @@ static long CoreFreqK_ioctl( struct file *filp, switch (prm.dl.hi) { - case TECHNOLOGY_TURBO: - switch (prm.dl.lo) { - case COREFREQ_TOGGLE_OFF: - case COREFREQ_TOGGLE_ON: - Controller_Stop(1); - TurboBoost_Enable[0] = prm.dl.lo; - Controller_Start(1); - TurboBoost_Enable[0] = -1; - #ifdef CONFIG_CPU_FREQ - Policy_Aggregate_Turbo(); - #endif /* CONFIG_CPU_FREQ */ - rc = RC_OK_COMPUTE; - break; - } - break; - case TECHNOLOGY_HWP: switch (prm.dl.lo) { case COREFREQ_TOGGLE_ON: @@ -4412,9 +4351,6 @@ static long CoreFreqK_ioctl( struct file *filp, Controller_Stop(1); rc = Arch[PUBLIC(RO(Proc))->ArchID].ClockMod(&clockMod); Controller_Start(1); - #ifdef CONFIG_CPU_FREQ - Policy_Aggregate_Turbo(); - #endif /* CONFIG_CPU_FREQ */ } else { rc = -RC_UNIMPLEMENTED; } @@ -4702,10 +4638,6 @@ static int CoreFreqK_Resume(struct device *dev) } Controller_Start(1); -#ifdef CONFIG_CPU_FREQ - Policy_Aggregate_Turbo(); -#endif /* CONFIG_CPU_FREQ */ - BITSET(BUS_LOCK, PUBLIC(RW(Proc))->OS.Signal, NTFY); /* Notify Daemon*/ CoreFreqK.ResumeFromSuspend = false; @@ -4809,10 +4741,6 @@ static int CoreFreqK_HotPlug_CPU_Online(unsigned int cpu) } #endif /* CONFIG_CPU_IDLE */ -#ifdef CONFIG_CPU_FREQ - Policy_Aggregate_Turbo(); -#endif /* CONFIG_CPU_FREQ */ - return 0; } else return -EINVAL; @@ -4868,9 +4796,6 @@ static int CoreFreqK_HotPlug_CPU_Offline(unsigned int cpu) PUBLIC(RO(Proc))->Service.Hybrid = Seek_Topology_Hybrid_Core(cpu); } } -#ifdef CONFIG_CPU_FREQ - Policy_Aggregate_Turbo(); -#endif /* CONFIG_CPU_FREQ */ return 0; } else return -EINVAL; @@ -5568,10 +5493,6 @@ static int CoreFreqK_Ignition_Level_Up(INIT_ARG *pArg) #endif /* KERNEL_VERSION(4, 6, 0) */ #endif /* CONFIG_HOTPLUG_CPU */ - #ifdef CONFIG_CPU_FREQ - Policy_Aggregate_Turbo(); - #endif /* CONFIG_CPU_FREQ */ - return 0; } @@ -5606,9 +5527,6 @@ static int CoreFreqK_User_Ops_Level_Up(INIT_ARG *pArg) clockMod.cpu = -1; clockMod.NC = CLOCK_MOD_HWP_MIN; rc = Arch[PUBLIC(RO(Proc))->ArchID].ClockMod(&clockMod); - #ifdef CONFIG_CPU_FREQ - Policy_Aggregate_Turbo(); - #endif } break; case BOOST(HWP_MAX) - BOOST(HWP_MIN): @@ -5617,9 +5535,6 @@ static int CoreFreqK_User_Ops_Level_Up(INIT_ARG *pArg) clockMod.cpu = -1; clockMod.NC = CLOCK_MOD_HWP_MAX; rc = Arch[PUBLIC(RO(Proc))->ArchID].ClockMod(&clockMod); - #ifdef CONFIG_CPU_FREQ - Policy_Aggregate_Turbo(); - #endif } break; case BOOST(HWP_TGT) - BOOST(HWP_MIN): @@ -5628,9 +5543,6 @@ static int CoreFreqK_User_Ops_Level_Up(INIT_ARG *pArg) clockMod.cpu = -1; clockMod.NC = CLOCK_MOD_HWP_TGT; rc = Arch[PUBLIC(RO(Proc))->ArchID].ClockMod(&clockMod); - #ifdef CONFIG_CPU_FREQ - Policy_Aggregate_Turbo(); - #endif } break; default: @@ -5680,9 +5592,6 @@ static int CoreFreqK_User_Ops_Level_Up(INIT_ARG *pArg) boost, rc); } } - } - if (TurboBoost_Enable_Count == 2) { - TurboBoost_Enable[0] = TurboBoost_Enable[1]; } Controller_Start(1); diff --git a/aarch64/corefreqk.h b/aarch64/corefreqk.h index 23e9f833..6eb15b3e 100644 --- a/aarch64/corefreqk.h +++ b/aarch64/corefreqk.h @@ -464,14 +464,6 @@ static int CoreFreqK_Policy_Verify(struct cpufreq_policy*) ; #endif static int CoreFreqK_SetPolicy(struct cpufreq_policy*) ; static int CoreFreqK_Bios_Limit(int, unsigned int*) ; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 14, 0) -#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0) \ - || ((RHEL_MAJOR == 8) && (RHEL_MINOR > 3)) -static int CoreFreqK_SetBoost(struct cpufreq_policy*, int) ; -#else -static int CoreFreqK_SetBoost(int) ; -#endif -#endif static ssize_t CoreFreqK_Show_SetSpeed(struct cpufreq_policy*, char*); static int CoreFreqK_Store_SetSpeed(struct cpufreq_policy*, unsigned int) ; #endif /* CONFIG_CPU_FREQ */ diff --git a/aarch64/coretypes.h b/aarch64/coretypes.h index eb518273..d4d59ae3 100644 --- a/aarch64/coretypes.h +++ b/aarch64/coretypes.h @@ -939,17 +939,21 @@ typedef struct /* BSP features. */ InstrRetired : 32-31; } PerfMon; + struct { + unsigned short CG0NC, + CG1NC; + } AMU; + struct { unsigned int DTS : 1-0, - _Unused1_ : 2-1, - Turbo_V3 : 3-2, + _Unused1_ : 3-1, PLN : 4-3, PTM : 5-4, HWP_Reg : 6-5, - HCF_Cap : 7-6, -/* HWP_Int : 1 +/* HCF_Cap : 7-6, + HWP_Int : 1 HWP_Act : 1 HWP_EPP : 1 HWP_Pkg : 1 @@ -959,7 +963,7 @@ typedef struct /* BSP features. */ HWP_Fast : 1 HWFB_Cap : 1 HWP_Idle : 1 */ - _Unused2_ : 32-7; + _Unused2_ : 32-6; } Power; struct { @@ -967,10 +971,6 @@ typedef struct /* BSP features. */ CLOCK Clock; unsigned int Freq, Ratio; - struct { - unsigned char LLC, - NB; - } PMC; } Factory; } FEATURES; @@ -1298,7 +1298,6 @@ enum { }; enum { - TECHNOLOGY_TURBO, TECHNOLOGY_HWP, TECHNOLOGY_HWP_EPP, };