Skip to content

Commit 802ed52

Browse files
committed
Add ARM Cortex A520 little core uarch
Example Samsung S24 sm-s921u SoC name: Unknown Microarchitectures: 1x Cortex-X4 5x Cortex-A720 2x Cortex-A520 Cores: 0: 1 processor (0), ARM Cortex-X4 1: 1 processor (1), ARM Cortex-A720 2: 1 processor (2), ARM Cortex-A720 3: 1 processor (3), ARM Cortex-A720 4: 1 processor (4), ARM Cortex-A720 5: 1 processor (5), ARM Cortex-A720 6: 1 processor (6), ARM Cortex-A520 7: 1 processor (7), ARM Cortex-A520 Clusters: 0: 1 processor (0), 0: 1 core (0), ARM Cortex-X4 1: 3 processors (1-3), 1: 3 cores (1-3), ARM Cortex-A720 2: 2 processors (4-5), 2: 2 cores (4-5), ARM Cortex-A720 3: 2 processors (6-7), 3: 2 cores (6-7), ARM Cortex-A520 Logical processors (System ID): 0 (7) 1 (2) 2 (3) 3 (4) 4 (5) 5 (6) 6 (0) 7 (1)
1 parent 0fea7f5 commit 802ed52

4 files changed

Lines changed: 9 additions & 0 deletions

File tree

src/arm/linux/aarch32-isa.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ void cpuinfo_arm_linux_decode_isa_from_proc_cpuinfo(
6969
* - Processors with Cortex-A77 cores
7070
* - Processors with Cortex-A78 cores
7171
* - Processors with Cortex-A510 cores
72+
* - Processors with Cortex-A520 cores
7273
* - Processors with Cortex-A710 cores
7374
* - Processors with Cortex-A715 cores
7475
* - Processors with Cortex-X1 cores

src/arm/midr.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,9 @@ inline static uint32_t midr_score_core(uint32_t midr) {
221221
case UINT32_C(0x4100D030): /* Cortex-A53 */
222222
case UINT32_C(0x4100D050): /* Cortex-A55 */
223223
case UINT32_C(0x4100D460): /* Cortex-A510 */
224+
#if CPUINFO_ARCH_ARM64
225+
case UINT32_C(0x4100D800): /* Cortex-A520 */
226+
#endif /* CPUINFO_ARCH_ARM64 */
224227
/* Cortex-A53 is usually in LITTLE role, but can be in
225228
* big role w.r.t. Cortex-A35 */
226229
return 2;

src/arm/uarch.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,9 @@ void cpuinfo_arm_decode_vendor_uarch(
126126
case 0xD4F: /* Neoverse V2 */
127127
*uarch = cpuinfo_uarch_neoverse_v2;
128128
break;
129+
case 0xD80: /* Cortex-A520 */
130+
*uarch = cpuinfo_uarch_cortex_a520;
131+
break;
129132
case 0xD81: /* Cortex-A720 */
130133
*uarch = cpuinfo_uarch_cortex_a720;
131134
break;

tools/cpu-info.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,8 @@ static const char* uarch_to_string(enum cpuinfo_uarch uarch) {
202202
return "Cortex-A78";
203203
case cpuinfo_uarch_cortex_a510:
204204
return "Cortex-A510";
205+
case cpuinfo_uarch_cortex_a520:
206+
return "Cortex-A520";
205207
case cpuinfo_uarch_cortex_a710:
206208
return "Cortex-A710";
207209
case cpuinfo_uarch_cortex_a715:

0 commit comments

Comments
 (0)