blob: c2af8cad9b6af6d551a96a2d839deddb31a9e8d5 [file] [log] [blame]
Isla Mitchellea84d6b2017-08-03 16:04:46 +01001/*
Antonio Nino Diaz5e79cfe2019-02-11 13:34:15 +00002 * Copyright (c) 2017-2019, ARM Limited and Contributors. All rights reserved.
Isla Mitchellea84d6b2017-08-03 16:04:46 +01003 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +00007#ifndef CORTEX_A76_H
8#define CORTEX_A76_H
Isla Mitchellea84d6b2017-08-03 16:04:46 +01009
Antonio Nino Diaz5e79cfe2019-02-11 13:34:15 +000010#include <lib/utils_def.h>
11
Isla Mitchellea84d6b2017-08-03 16:04:46 +010012/* Cortex-A76 MIDR for revision 0 */
Antonio Nino Diaz5e79cfe2019-02-11 13:34:15 +000013#define CORTEX_A76_MIDR U(0x410fd0b0)
Isla Mitchellea84d6b2017-08-03 16:04:46 +010014
15/*******************************************************************************
16 * CPU Extended Control register specific definitions.
17 ******************************************************************************/
18#define CORTEX_A76_CPUPWRCTLR_EL1 S3_0_C15_C2_7
Antonio Nino Diaz5e79cfe2019-02-11 13:34:15 +000019#define CORTEX_A76_CPUECTLR_EL1 S3_0_C15_C1_4
Isla Mitchellea84d6b2017-08-03 16:04:46 +010020
Louis Mayencourtadda9d42019-02-25 11:37:38 +000021#define CORTEX_A76_CPUECTLR_EL1_WS_THR_L2 (ULL(3) << 24)
22
Dimitris Papastamos312e17e2018-05-16 09:59:54 +010023/*******************************************************************************
24 * CPU Auxiliary Control register specific definitions.
25 ******************************************************************************/
Louis Mayencourt59fa2182019-02-25 15:17:44 +000026#define CORTEX_A76_CPUACTLR_EL1 S3_0_C15_C1_0
27
28#define CORTEX_A76_CPUACTLR_EL1_DISABLE_STATIC_PREDICTION (ULL(1) << 6)
29
Dimitris Papastamos312e17e2018-05-16 09:59:54 +010030#define CORTEX_A76_CPUACTLR2_EL1 S3_0_C15_C1_1
31
Antonio Nino Diaz5e79cfe2019-02-11 13:34:15 +000032#define CORTEX_A76_CPUACTLR2_EL1_DISABLE_LOAD_PASS_STORE (ULL(1) << 16)
Dimitris Papastamos312e17e2018-05-16 09:59:54 +010033
Isla Mitchellea84d6b2017-08-03 16:04:46 +010034/* Definitions of register field mask in CORTEX_A76_CPUPWRCTLR_EL1 */
Antonio Nino Diaz5e79cfe2019-02-11 13:34:15 +000035#define CORTEX_A76_CORE_PWRDN_EN_MASK U(0x1)
Isla Mitchellea84d6b2017-08-03 16:04:46 +010036
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +000037#endif /* CORTEX_A76_H */