mirror of
https://github.com/opnsense/src.git
synced 2026-06-10 09:11:07 -04:00
arm64: add CPU part identifiers for Apple M1 and M2
Part numbers are sourced from Linux (arch/arm64/include/asm/cputype.h).
MFC after: 2 weeks
Pull Request: https://github.com/freebsd/freebsd-src/pull/1144
(cherry picked from commit da2b732288)
This commit is contained in:
parent
753de72517
commit
fc04560978
2 changed files with 32 additions and 1 deletions
|
|
@ -251,6 +251,23 @@ static const struct cpu_parts cpu_parts_qcom[] = {
|
|||
CPU_PART_NONE,
|
||||
};
|
||||
|
||||
/* Apple */
|
||||
static const struct cpu_parts cpu_parts_apple[] = {
|
||||
{ CPU_PART_M1_ICESTORM, "M1 Icestorm" },
|
||||
{ CPU_PART_M1_FIRESTORM, "M1 Firestorm" },
|
||||
{ CPU_PART_M1_ICESTORM_PRO, "M1 Pro Icestorm" },
|
||||
{ CPU_PART_M1_FIRESTORM_PRO, "M1 Pro Firestorm" },
|
||||
{ CPU_PART_M1_ICESTORM_MAX, "M1 Max Icestorm" },
|
||||
{ CPU_PART_M1_FIRESTORM_MAX, "M1 Max Firestorm" },
|
||||
{ CPU_PART_M2_BLIZZARD, "M2 Blizzard" },
|
||||
{ CPU_PART_M2_AVALANCHE, "M2 Avalanche" },
|
||||
{ CPU_PART_M2_BLIZZARD_PRO, "M2 Pro Blizzard" },
|
||||
{ CPU_PART_M2_AVALANCHE_PRO, "M2 Pro Avalanche" },
|
||||
{ CPU_PART_M2_BLIZZARD_MAX, "M2 Max Blizzard" },
|
||||
{ CPU_PART_M2_AVALANCHE_MAX, "M2 Max Avalanche" },
|
||||
CPU_PART_NONE,
|
||||
};
|
||||
|
||||
/* Unknown */
|
||||
static const struct cpu_parts cpu_parts_none[] = {
|
||||
CPU_PART_NONE,
|
||||
|
|
@ -261,7 +278,7 @@ static const struct cpu_parts cpu_parts_none[] = {
|
|||
*/
|
||||
const struct cpu_implementers cpu_implementers[] = {
|
||||
{ CPU_IMPL_AMPERE, "Ampere", cpu_parts_none },
|
||||
{ CPU_IMPL_APPLE, "Apple", cpu_parts_none },
|
||||
{ CPU_IMPL_APPLE, "Apple", cpu_parts_apple },
|
||||
{ CPU_IMPL_APM, "APM", cpu_parts_apm },
|
||||
{ CPU_IMPL_ARM, "ARM", cpu_parts_arm },
|
||||
{ CPU_IMPL_BROADCOM, "Broadcom", cpu_parts_none },
|
||||
|
|
|
|||
|
|
@ -134,6 +134,20 @@
|
|||
#define CPU_PART_KRYO400_GOLD 0x804
|
||||
#define CPU_PART_KRYO400_SILVER 0x805
|
||||
|
||||
/* Apple part numbers */
|
||||
#define CPU_PART_M1_ICESTORM 0x022
|
||||
#define CPU_PART_M1_FIRESTORM 0x023
|
||||
#define CPU_PART_M1_ICESTORM_PRO 0x024
|
||||
#define CPU_PART_M1_FIRESTORM_PRO 0x025
|
||||
#define CPU_PART_M1_ICESTORM_MAX 0x028
|
||||
#define CPU_PART_M1_FIRESTORM_MAX 0x029
|
||||
#define CPU_PART_M2_BLIZZARD 0x032
|
||||
#define CPU_PART_M2_AVALANCHE 0x033
|
||||
#define CPU_PART_M2_BLIZZARD_PRO 0x034
|
||||
#define CPU_PART_M2_AVALANCHE_PRO 0x035
|
||||
#define CPU_PART_M2_BLIZZARD_MAX 0x038
|
||||
#define CPU_PART_M2_AVALANCHE_MAX 0x039
|
||||
|
||||
#define CPU_IMPL(midr) (((midr) >> 24) & 0xff)
|
||||
#define CPU_PART(midr) (((midr) >> 4) & 0xfff)
|
||||
#define CPU_VAR(midr) (((midr) >> 20) & 0xf)
|
||||
|
|
|
|||
Loading…
Reference in a new issue