Browse Source

Merge "feat(cpus): support to update External LLC presence in Neoverse N3" into integration

Olivier Deprez 3 weeks ago
parent
commit
332b62e044
2 changed files with 6 additions and 0 deletions
  1. 1 0
      include/lib/cpus/aarch64/neoverse_n3.h
  2. 5 0
      lib/cpus/aarch64/neoverse_n3.S

+ 1 - 0
include/lib/cpus/aarch64/neoverse_n3.h

@@ -13,6 +13,7 @@
  * CPU Extended Control register specific definitions
  ******************************************************************************/
 #define NEOVERSE_N3_CPUECTLR_EL1			S3_0_C15_C1_4
+#define NEOVERSE_N3_CPUECTLR_EL1_EXTLLC_BIT		(ULL(1) << 0)
 
 /*******************************************************************************
  * CPU Power Control register specific definitions

+ 5 - 0
lib/cpus/aarch64/neoverse_n3.S

@@ -24,6 +24,11 @@
 cpu_reset_func_start neoverse_n3
 	/* Disable speculative loads */
 	msr	SSBS, xzr
+
+#if NEOVERSE_Nx_EXTERNAL_LLC
+	/* Some systems may have External LLC, core needs to be made aware */
+	sysreg_bit_set NEOVERSE_N3_CPUECTLR_EL1, NEOVERSE_N3_CPUECTLR_EL1_EXTLLC_BIT
+#endif
 cpu_reset_func_end neoverse_n3
 
 	/* ----------------------------------------------------