Index | Thread | Search

From:
Mark Kettenis <mark.kettenis@xs4all.nl>
Subject:
Re: recognise Arm C1 CPUs
To:
Jonathan Gray <jsg@jsg.id.au>
Cc:
tech@openbsd.org
Date:
Wed, 10 Sep 2025 11:20:28 +0200

Download raw body.

Thread
  • Jonathan Gray:

    recognise Arm C1 CPUs

    • Mark Kettenis:

      recognise Arm C1 CPUs

> Date: Wed, 10 Sep 2025 14:28:53 +1000
> From: Jonathan Gray <jsg@jsg.id.au>

Sure.  It'll be a while before we actually see those though.

> C1-Nano
> https://developer.arm.com/documentation/107753/latest/
> codename Nevis
> https://github.com/ARM-software/arm-trusted-firmware/blob/master/include/lib/cpus/aarch64/nevis.h
> 
> C1-Premium
> https://developer.arm.com/documentation/109416/latest/
> codename Alto
> https://github.com/ARM-software/arm-trusted-firmware/blob/master/include/lib/cpus/aarch64/cortex_alto.h
> 
> C1-Pro
> https://developer.arm.com/documentation/107771/latest/
> codename Gelas
> https://github.com/ARM-software/arm-trusted-firmware/blob/master/include/lib/cpus/aarch64/cortex_gelas.h
> 
> C1-Ultra
> https://developer.arm.com/documentation/108014/latest/
> codename Travis
> https://github.com/ARM-software/arm-trusted-firmware/blob/master/include/lib/cpus/aarch64/travis.h
> 
> diff --git sys/arch/arm64/arm64/cpu.c sys/arch/arm64/arm64/cpu.c
> index 2e333ebbbad..9ed7aceed6f 100644
> --- sys/arch/arm64/arm64/cpu.c
> +++ sys/arch/arm64/arm64/cpu.c
> @@ -102,8 +102,12 @@
>  #define CPU_PART_CORTEX_A725	0xd87
>  #define CPU_PART_CORTEX_A520AE	0xd88
>  #define CPU_PART_CORTEX_A720AE	0xd89
> +#define CPU_PART_C1_NANO	0xd8a
> +#define CPU_PART_C1_PRO		0xd8b
> +#define CPU_PART_C1_ULTRA	0xd8c
>  #define CPU_PART_NEOVERSE_N3	0xd8e
>  #define CPU_PART_CORTEX_A320	0xd8f
> +#define CPU_PART_C1_PREMIUM	0xd90
>  
>  /* Cavium */
>  #define CPU_PART_THUNDERX_T88	0x0a1
> @@ -151,6 +155,10 @@ struct cpu_cores cpu_cores_none[] = {
>  };
>  
>  struct cpu_cores cpu_cores_arm[] = {
> +	{ CPU_PART_C1_NANO, "C1-Nano" },
> +	{ CPU_PART_C1_PREMIUM, "C1-Premium" },
> +	{ CPU_PART_C1_PRO, "C1-Pro" },
> +	{ CPU_PART_C1_ULTRA, "C1-Ultra" },
>  	{ CPU_PART_CORTEX_A34, "Cortex-A34" },
>  	{ CPU_PART_CORTEX_A35, "Cortex-A35" },
>  	{ CPU_PART_CORTEX_A53, "Cortex-A53" },
> 
>