@@ -336,12 +336,19 @@ void GetCPUProperties (void)
336336 case CPU_MODEL_ALDERLAKE_ULT:
337337 case CPU_MODEL_RAPTORLAKE_B:
338338 case CPU_MODEL_METEORLAKE:
339- case CPU_MODEL_ARROWLAKE:
340339 msr = AsmReadMsr64 (MSR_CORE_THREAD_COUNT); // 0x35
341340 DBG (" MSR 0x35 %16llX\n " , msr);
342341 gCPUStructure .Cores = (UINT8)bitfield ((UINT32)msr, 31 , 16 );
343342 gCPUStructure .Threads = (UINT8)bitfield ((UINT32)msr, 15 , 0 );
344343 break ;
344+ case CPU_MODEL_ARROWLAKE:
345+ case CPU_MODEL_ARROWLAKE_X:
346+ case CPU_MODEL_ARROWLAKE_U:
347+ msr = AsmReadMsr64 (MSR_CORE_THREAD_COUNT); // 0x35
348+ DBG (" MSR 0x35 %16llX\n " , msr);
349+ gCPUStructure .Cores = (UINT8)bitfield ((UINT32)msr, 31 , 16 );
350+ gCPUStructure .Threads = gCPUStructure .Cores ; // no hyperthreading
351+ break ;
345352
346353 case CPU_MODEL_DALES:
347354 case CPU_MODEL_WESTMERE: // Intel Core i7 LGA1366 (32nm) 6 Core
@@ -421,7 +428,7 @@ void GetCPUProperties (void)
421428 gCPUStructure .Threads = 4 ;
422429 }
423430
424- // New for SkyLake 0x4E, 0x5E
431+ // New for SkyLake 0x4E, 0x5E and up
425432 if (gCPUStructure .CPUID [CPUID_0][EAX] >= 0x15 ) {
426433 UINT32 Num, Denom;
427434 DoCpuid (0x15 , gCPUStructure .CPUID [CPUID_15]);
@@ -540,6 +547,8 @@ void GetCPUProperties (void)
540547 case CPU_MODEL_RAPTORLAKE:
541548 case CPU_MODEL_METEORLAKE:
542549 case CPU_MODEL_ARROWLAKE:
550+ case CPU_MODEL_ARROWLAKE_X:
551+ case CPU_MODEL_ARROWLAKE_U:
543552
544553 gCPUStructure .TSCFrequency = MultU64x32 (gCPUStructure .CurrentSpeed , Mega); // MHz -> Hz
545554 gCPUStructure .CPUFrequency = gCPUStructure .TSCFrequency ;
@@ -1428,6 +1437,8 @@ UINT16 GetAdvancedCpuType()
14281437 case CPU_MODEL_RAPTORLAKE:
14291438 case CPU_MODEL_METEORLAKE:
14301439 case CPU_MODEL_ARROWLAKE:
1440+ case CPU_MODEL_ARROWLAKE_X:
1441+ case CPU_MODEL_ARROWLAKE_U:
14311442 if ( gCPUStructure .BrandString .contains (" Core(TM) i3" ) )
14321443 return 0x905 ; // Core i3 - Apple doesn't use it
14331444 if ( gCPUStructure .BrandString .contains (" Core(TM) i5-1" ) )
@@ -1566,6 +1577,8 @@ MacModel GetDefaultModel()
15661577 case CPU_MODEL_ICELAKE_A:
15671578 case CPU_MODEL_ICELAKE_C:
15681579 case CPU_MODEL_ICELAKE_D:
1580+ case CPU_MODEL_ALDERLAKE_ULT: // ???
1581+ case CPU_MODEL_ARROWLAKE_U:
15691582 DefaultType = MacBookPro161;
15701583 break ;
15711584 default :
@@ -1678,13 +1691,15 @@ MacModel GetDefaultModel()
16781691 DefaultType = MacPro61;
16791692 break ;
16801693 case CPU_MODEL_ALDERLAKE:
1681- case CPU_MODEL_ALDERLAKE_ULT: // ???
1694+
16821695 case CPU_MODEL_RAPTORLAKE_B:
16831696 case CPU_MODEL_COMETLAKE_S:
16841697 case CPU_MODEL_ROCKETLAKE:
16851698 case CPU_MODEL_RAPTORLAKE:
16861699 case CPU_MODEL_METEORLAKE:
16871700 case CPU_MODEL_ARROWLAKE:
1701+ case CPU_MODEL_ARROWLAKE_X:
1702+
16881703 DefaultType = MacPro71;
16891704 break ;
16901705 default :
0 commit comments