Skip to content

Commit 5e710ee

Browse files
committed
Add Apple M1/M2 Linux MIDR detection
Fixes pytorch#380 by adding cpuinfo_arm_decode_vendor_uarch logic for Apple's implementer 'a' (0x61).
1 parent 13d023f commit 5e710ee

1 file changed

Lines changed: 29 additions & 0 deletions

File tree

src/arm/uarch.c

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -438,6 +438,35 @@ void cpuinfo_arm_decode_vendor_uarch(
438438
midr_get_part(midr));
439439
}
440440
break;
441+
case 'a':
442+
*vendor = cpuinfo_vendor_apple;
443+
switch (midr_get_part(midr)) {
444+
case 0x022:
445+
case 0x024:
446+
case 0x028:
447+
*uarch = cpuinfo_uarch_icestorm;
448+
break;
449+
case 0x023:
450+
case 0x025:
451+
case 0x029:
452+
*uarch = cpuinfo_uarch_firestorm;
453+
break;
454+
case 0x032:
455+
case 0x034:
456+
case 0x038:
457+
*uarch = cpuinfo_uarch_blizzard;
458+
break;
459+
case 0x033:
460+
case 0x035:
461+
case 0x039:
462+
*uarch = cpuinfo_uarch_avalanche;
463+
break;
464+
default:
465+
cpuinfo_log_warning(
466+
"unknown Apple CPU part 0x%03" PRIx32 " ignored",
467+
midr_get_part(midr));
468+
}
469+
break;
441470
#if CPUINFO_ARCH_ARM
442471
case 'V':
443472
*vendor = cpuinfo_vendor_marvell;

0 commit comments

Comments
 (0)