Skip to content

Commit 200f5c4

Browse files
authored
Add AMD Renoir models and preliminary support for ZEN3 as ZEN2
also remap erroneous family 16 entry to BOBCAT and reclaim erroneous family 25 "Barcelona" for Zen3
1 parent d6b6e5c commit 200f5c4

File tree

1 file changed

+20
-5
lines changed

1 file changed

+20
-5
lines changed

cpuid_x86.c

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1454,10 +1454,11 @@ int get_cpuname(void){
14541454
return CPUTYPE_OPTERON;
14551455
case 1:
14561456
case 3:
1457-
case 7:
1458-
case 10:
1457+
// case 7:
1458+
// case 10:
14591459
return CPUTYPE_BARCELONA;
14601460
case 5:
1461+
case 7:
14611462
return CPUTYPE_BOBCAT;
14621463
case 6:
14631464
switch (model) {
@@ -1507,6 +1508,8 @@ int get_cpuname(void){
15071508
// AMD Ryzen
15081509
case 8:
15091510
// AMD Ryzen2
1511+
default:
1512+
// Matisse/Renoir and other recent Ryzen2
15101513
if(support_avx())
15111514
#ifndef NO_AVX2
15121515
return CPUTYPE_ZEN;
@@ -1516,6 +1519,16 @@ int get_cpuname(void){
15161519
else
15171520
return CPUTYPE_BARCELONA;
15181521
}
1522+
break;
1523+
case 10: // Zen3
1524+
if(support_avx())
1525+
#ifndef NO_AVX2
1526+
return CPUTYPE_ZEN;
1527+
#else
1528+
return CPUTYPE_SANDYBRIDGE; // Zen is closer in architecture to Sandy Bridge than to Excavator
1529+
#endif
1530+
else
1531+
return CPUTYPE_BARCELONA;
15191532
}
15201533
break;
15211534
}
@@ -2107,7 +2120,7 @@ int get_coretype(void){
21072120
return CORE_PILEDRIVER;
21082121
else
21092122
return CORE_BARCELONA; //OS don't support AVX.
2110-
case 5: // New EXCAVATOR
2123+
case 5: // New EXCAVATOR
21112124
if(support_avx())
21122125
return CORE_EXCAVATOR;
21132126
else
@@ -2135,12 +2148,14 @@ int get_coretype(void){
21352148
}
21362149
break;
21372150
}
2138-
} else if (exfamily == 8) {
2151+
} else if (exfamily == 8 || exfamily == 10) {
21392152
switch (model) {
21402153
case 1:
21412154
// AMD Ryzen
21422155
case 8:
2143-
// Ryzen 2
2156+
// Ryzen 2
2157+
default:
2158+
// Matisse,Renoir Ryzen2 models
21442159
if(support_avx())
21452160
#ifndef NO_AVX2
21462161
return CORE_ZEN;

0 commit comments

Comments
 (0)