@@ -784,48 +784,48 @@ static void (*ComputeVoltage_AMD_RMB_Matrix[4])(struct FLIP_FLOP*,
784
784
[FORMULA_SCOPE_PKG ] = ComputeVoltage_AMD_RMB_PerPkg
785
785
};
786
786
787
- static void ComputeVoltage_AMD_19_61h ( struct FLIP_FLOP * CFlip ,
788
- RO (SHM_STRUCT ) * RO (Shm ),
789
- unsigned int cpu )
787
+ static void ComputeVoltage_AMD_VCO ( struct FLIP_FLOP * CFlip ,
788
+ RO (SHM_STRUCT ) * RO (Shm ),
789
+ unsigned int cpu )
790
790
{
791
- COMPUTE_VOLTAGE (AMD_19_61h ,
791
+ COMPUTE_VOLTAGE (AMD_VCO ,
792
792
CFlip -> Voltage .Vcore ,
793
793
CFlip -> Voltage .VID );
794
794
795
795
Core_ComputeVoltageLimits (& RO (Shm )-> Cpu [cpu ], CFlip );
796
796
}
797
797
798
- #define ComputeVoltage_AMD_19_61h_PerSMT ComputeVoltage_AMD_19_61h
798
+ #define ComputeVoltage_AMD_VCO_PerSMT ComputeVoltage_AMD_VCO
799
799
800
- static void ComputeVoltage_AMD_19_61h_PerCore ( struct FLIP_FLOP * CFlip ,
801
- RO (SHM_STRUCT ) * RO (Shm ),
802
- unsigned int cpu )
800
+ static void ComputeVoltage_AMD_VCO_PerCore ( struct FLIP_FLOP * CFlip ,
801
+ RO (SHM_STRUCT ) * RO (Shm ),
802
+ unsigned int cpu )
803
803
{
804
804
if ((RO (Shm )-> Cpu [cpu ].Topology .ThreadID == 0 )
805
805
|| (RO (Shm )-> Cpu [cpu ].Topology .ThreadID == -1 ))
806
806
{
807
- ComputeVoltage_AMD_19_61h (CFlip , RO (Shm ), cpu );
807
+ ComputeVoltage_AMD_VCO (CFlip , RO (Shm ), cpu );
808
808
}
809
809
}
810
810
811
- static void ComputeVoltage_AMD_19_61h_PerPkg ( struct FLIP_FLOP * CFlip ,
812
- RO (SHM_STRUCT ) * RO (Shm ),
813
- unsigned int cpu )
811
+ static void ComputeVoltage_AMD_VCO_PerPkg ( struct FLIP_FLOP * CFlip ,
812
+ RO (SHM_STRUCT ) * RO (Shm ),
813
+ unsigned int cpu )
814
814
{
815
815
if (cpu == RO (Shm )-> Proc .Service .Core )
816
816
{
817
- ComputeVoltage_AMD_19_61h (CFlip , RO (Shm ), cpu );
817
+ ComputeVoltage_AMD_VCO (CFlip , RO (Shm ), cpu );
818
818
}
819
819
}
820
820
821
- static void (* ComputeVoltage_AMD_19_61h_Matrix [4 ])(struct FLIP_FLOP * ,
821
+ static void (* ComputeVoltage_AMD_VCO_Matrix [4 ])(struct FLIP_FLOP * ,
822
822
RO (SHM_STRUCT )* ,
823
823
unsigned int ) = \
824
824
{
825
825
[FORMULA_SCOPE_NONE ] = ComputeVoltage_None ,
826
- [FORMULA_SCOPE_SMT ] = ComputeVoltage_AMD_19_61h_PerSMT ,
827
- [FORMULA_SCOPE_CORE ] = ComputeVoltage_AMD_19_61h_PerCore ,
828
- [FORMULA_SCOPE_PKG ] = ComputeVoltage_AMD_19_61h_PerPkg
826
+ [FORMULA_SCOPE_SMT ] = ComputeVoltage_AMD_VCO_PerSMT ,
827
+ [FORMULA_SCOPE_CORE ] = ComputeVoltage_AMD_VCO_PerCore ,
828
+ [FORMULA_SCOPE_PKG ] = ComputeVoltage_AMD_VCO_PerPkg
829
829
};
830
830
831
831
static void ComputeVoltage_Winbond_IO ( struct FLIP_FLOP * CFlip ,
@@ -1102,8 +1102,14 @@ static void *Core_Cycle(void *arg)
1102
1102
case VOLTAGE_KIND_AMD_RMB :
1103
1103
ComputeVoltageFormula = ComputeVoltage_AMD_RMB_Matrix ;
1104
1104
break ;
1105
- case VOLTAGE_KIND_AMD_19_61h :
1106
- ComputeVoltageFormula = ComputeVoltage_AMD_19_61h_Matrix ;
1105
+ case VOLTAGE_KIND_ZEN3_VCO :
1106
+ ComputeVoltageFormula = ComputeVoltage_AMD_VCO_Matrix ;
1107
+ break ;
1108
+ case VOLTAGE_KIND_ZEN4_VCO :
1109
+ ComputeVoltageFormula = ComputeVoltage_AMD_VCO_Matrix ;
1110
+ break ;
1111
+ case VOLTAGE_KIND_ZEN5_VCO :
1112
+ ComputeVoltageFormula = ComputeVoltage_AMD_VCO_Matrix ;
1107
1113
break ;
1108
1114
case VOLTAGE_KIND_WINBOND_IO :
1109
1115
ComputeVoltageFormula = ComputeVoltage_Winbond_IO_Matrix ;
@@ -8784,13 +8790,36 @@ static void Pkg_ComputeVoltage_AMD_RMB(struct PKG_FLIP_FLOP *PFlip)
8784
8790
PFlip -> Voltage .VID .SOC );
8785
8791
}
8786
8792
8787
- static void Pkg_ComputeVoltage_AMD_19_61h (struct PKG_FLIP_FLOP * PFlip )
8793
+ static void Pkg_ComputeVoltage_ZEN3_VCO (struct PKG_FLIP_FLOP * PFlip )
8788
8794
{
8789
- COMPUTE_VOLTAGE (AMD_19_61h ,
8795
+ COMPUTE_VOLTAGE (AMD_VCO ,
8790
8796
PFlip -> Voltage .CPU ,
8791
8797
PFlip -> Voltage .VID .CPU );
8792
- /*TODO
8793
- COMPUTE_VOLTAGE(AMD_19_61h,
8798
+
8799
+ COMPUTE_VOLTAGE (AMD_17h ,
8800
+ PFlip -> Voltage .SOC ,
8801
+ PFlip -> Voltage .VID .SOC );
8802
+ }
8803
+
8804
+ static void Pkg_ComputeVoltage_ZEN4_VCO (struct PKG_FLIP_FLOP * PFlip )
8805
+ {
8806
+ COMPUTE_VOLTAGE (AMD_VCO ,
8807
+ PFlip -> Voltage .CPU ,
8808
+ PFlip -> Voltage .VID .CPU );
8809
+
8810
+ COMPUTE_VOLTAGE (AMD_RMB ,
8811
+ PFlip -> Voltage .SOC ,
8812
+ PFlip -> Voltage .VID .SOC );
8813
+ }
8814
+
8815
+ static void Pkg_ComputeVoltage_ZEN5_VCO (struct PKG_FLIP_FLOP * PFlip )
8816
+ {
8817
+ COMPUTE_VOLTAGE (AMD_VCO ,
8818
+ PFlip -> Voltage .CPU ,
8819
+ PFlip -> Voltage .VID .CPU );
8820
+
8821
+ /*TODO(Unknown SOC voltage register)
8822
+ COMPUTE_VOLTAGE(AMD_VCO,
8794
8823
PFlip->Voltage.SOC,
8795
8824
PFlip->Voltage.VID.SOC); */
8796
8825
}
@@ -8951,8 +8980,14 @@ REASON_CODE Core_Manager(REF *Ref)
8951
8980
case VOLTAGE_KIND_AMD_RMB :
8952
8981
Pkg_ComputeVoltageFormula = Pkg_ComputeVoltage_AMD_RMB ;
8953
8982
break ;
8954
- case VOLTAGE_KIND_AMD_19_61h :
8955
- Pkg_ComputeVoltageFormula = Pkg_ComputeVoltage_AMD_19_61h ;
8983
+ case VOLTAGE_KIND_ZEN3_VCO :
8984
+ Pkg_ComputeVoltageFormula = Pkg_ComputeVoltage_ZEN3_VCO ;
8985
+ break ;
8986
+ case VOLTAGE_KIND_ZEN4_VCO :
8987
+ Pkg_ComputeVoltageFormula = Pkg_ComputeVoltage_ZEN4_VCO ;
8988
+ break ;
8989
+ case VOLTAGE_KIND_ZEN5_VCO :
8990
+ Pkg_ComputeVoltageFormula = Pkg_ComputeVoltage_ZEN5_VCO ;
8956
8991
break ;
8957
8992
case VOLTAGE_KIND_WINBOND_IO :
8958
8993
Pkg_ComputeVoltageFormula = Pkg_ComputeVoltage_Winbond_IO ;
0 commit comments