1 /* 2 * Copyright (c) 2015-2017, ARM Limited and Contributors. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #ifndef __CORTEX_A72_H__ 8 #define __CORTEX_A72_H__ 9 #include <utils_def.h> 10 11 /* Cortex-A72 midr for revision 0 */ 12 #define CORTEX_A72_MIDR 0x410FD080 13 14 /******************************************************************************* 15 * CPU Extended Control register specific definitions. 16 ******************************************************************************/ 17 #define CORTEX_A72_ECTLR_EL1 S3_1_C15_C2_1 18 19 #define CORTEX_A72_ECTLR_SMP_BIT (ULL(1) << 6) 20 #define CORTEX_A72_ECTLR_DIS_TWD_ACC_PFTCH_BIT (ULL(1) << 38) 21 #define CORTEX_A72_ECTLR_L2_IPFTCH_DIST_MASK (ULL(0x3) << 35) 22 #define CORTEX_A72_ECTLR_L2_DPFTCH_DIST_MASK (ULL(0x3) << 32) 23 24 /******************************************************************************* 25 * CPU Memory Error Syndrome register specific definitions. 26 ******************************************************************************/ 27 #define CORTEX_A72_MERRSR_EL1 S3_1_C15_C2_2 28 29 /******************************************************************************* 30 * CPU Auxiliary Control register specific definitions. 31 ******************************************************************************/ 32 #define CORTEX_A72_CPUACTLR_EL1 S3_1_C15_C2_0 33 34 #define CORTEX_A72_CPUACTLR_EL1_DISABLE_L1_DCACHE_HW_PFTCH (ULL(1) << 56) 35 #define CORTEX_A72_CPUACTLR_EL1_NO_ALLOC_WBWA (ULL(1) << 49) 36 #define CORTEX_A72_CPUACTLR_EL1_DCC_AS_DCCI (ULL(1) << 44) 37 #define CORTEX_A72_CPUACTLR_EL1_DIS_INSTR_PREFETCH (ULL(1) << 32) 38 39 /******************************************************************************* 40 * L2 Control register specific definitions. 41 ******************************************************************************/ 42 #define CORTEX_A72_L2CTLR_EL1 S3_1_C11_C0_2 43 44 #define CORTEX_A72_L2CTLR_DATA_RAM_LATENCY_SHIFT 0 45 #define CORTEX_A72_L2CTLR_TAG_RAM_LATENCY_SHIFT 6 46 47 #define CORTEX_A72_L2_DATA_RAM_LATENCY_3_CYCLES 0x2 48 #define CORTEX_A72_L2_TAG_RAM_LATENCY_2_CYCLES 0x1 49 #define CORTEX_A72_L2_TAG_RAM_LATENCY_3_CYCLES 0x2 50 51 /******************************************************************************* 52 * L2 Memory Error Syndrome register specific definitions. 53 ******************************************************************************/ 54 #define CORTEX_A72_L2MERRSR_EL1 S3_1_C15_C2_3 55 56 #if !ERROR_DEPRECATED 57 /* 58 * These registers were previously wrongly named. Provide previous definitions so 59 * as not to break platforms that continue using them. 60 */ 61 #define CORTEX_A72_ACTLR CORTEX_A72_CPUACTLR_EL1 62 63 #define CORTEX_A72_ACTLR_DISABLE_L1_DCACHE_HW_PFTCH CORTEX_A72_CPUACTLR_EL1_DISABLE_L1_DCACHE_HW_PFTCH 64 #define CORTEX_A72_ACTLR_NO_ALLOC_WBWA CORTEX_A72_CPUACTLR_EL1_NO_ALLOC_WBWA 65 #define CORTEX_A72_ACTLR_DCC_AS_DCCI CORTEX_A72_CPUACTLR_EL1_DCC_AS_DCCI 66 #endif /* !ERROR_DEPRECATED */ 67 68 #endif /* __CORTEX_A72_H__ */ 69