diff --git a/corefreqk.c b/corefreqk.c index 9fc2d94a..4e9cbf16 100644 --- a/corefreqk.c +++ b/corefreqk.c @@ -11965,7 +11965,7 @@ static void PerCore_Airmont_Query(void *arg) } } -static void PerCore_Goldmont_Query(void *arg) +static void PerCore_Atom_Goldmont_Query(void *arg) { CORE_RO *Core = (CORE_RO *) arg; @@ -12014,8 +12014,6 @@ static void PerCore_Goldmont_Query(void *arg) ThermalMonitor_Set(Core); - Intel_Turbo_Activation_Ratio(Core); - if (Core->Bind == PUBLIC(RO(Proc))->Service.Core) { Intel_DomainPowerLimit( MSR_PKG_POWER_LIMIT, /* Table 2-12 */ PKG_POWER_LIMIT_LOCK_MASK, @@ -12039,6 +12037,19 @@ static void PerCore_Goldmont_Query(void *arg) } } +static void PerCore_Goldmont_Query(void *arg) +{ + CORE_RO *Core = (CORE_RO *) arg; + + PerCore_Atom_Goldmont_Query(arg); + Intel_Turbo_Activation_Ratio(Core); +} + +static void PerCore_Geminilake_Query(void *arg) +{ + PerCore_Atom_Goldmont_Query(arg); +} + static void PerCore_Nehalem_Same_Query(void *arg) { CORE_RO *Core = (CORE_RO *) arg; diff --git a/corefreqk.h b/corefreqk.h index 61073d29..4bf7203d 100644 --- a/corefreqk.h +++ b/corefreqk.h @@ -1514,6 +1514,8 @@ static void InitTimer_Goldmont(unsigned int cpu) ; static void Query_Airmont(unsigned int cpu) ; static void PerCore_Airmont_Query(void *arg) ; +static void PerCore_Geminilake_Query(void *arg) ; + static void Query_Nehalem(unsigned int cpu) ; static void PerCore_Nehalem_Query(void *arg) ; static void PerCore_Nehalem_EX_Query(void *arg) ; @@ -8731,7 +8733,7 @@ static ARCH Arch[ARCHITECTURES] = { [Geminilake] = { /* 56*/ .Signature = _Geminilake, .Query = Query_Goldmont, - .Update = PerCore_Goldmont_Query, + .Update = PerCore_Geminilake_Query, .Start = Start_Goldmont, .Stop = Stop_Goldmont, .Exit = NULL,