]> git.proxmox.com Git - mirror_edk2.git/blob - ArmPkg/Include/Chipset/ArmCortexA9.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / ArmPkg / Include / Chipset / ArmCortexA9.h
1 /** @file
2
3 Copyright (c) 2011, ARM Limited. All rights reserved.
4
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7 **/
8
9 #ifndef __ARM_CORTEX_A9_H__
10 #define __ARM_CORTEX_A9_H__
11
12 #include <Chipset/ArmV7.h>
13
14 //
15 // Cortex A9 feature bit definitions
16 //
17 #define A9_FEATURE_PARITY (1<<9)
18 #define A9_FEATURE_AOW (1<<8)
19 #define A9_FEATURE_EXCL (1<<7)
20 #define A9_FEATURE_SMP (1<<6)
21 #define A9_FEATURE_FOZ (1<<3)
22 #define A9_FEATURE_DPREF (1<<2)
23 #define A9_FEATURE_HINT (1<<1)
24 #define A9_FEATURE_FWD (1<<0)
25
26 //
27 // Cortex A9 Watchdog
28 //
29 #define ARM_A9_WATCHDOG_REGION 0x600
30
31 #define ARM_A9_WATCHDOG_LOAD_REGISTER 0x20
32 #define ARM_A9_WATCHDOG_CONTROL_REGISTER 0x28
33
34 #define ARM_A9_WATCHDOG_WATCHDOG_MODE (1 << 3)
35 #define ARM_A9_WATCHDOG_TIMER_MODE (0 << 3)
36 #define ARM_A9_WATCHDOG_SINGLE_SHOT (0 << 1)
37 #define ARM_A9_WATCHDOG_AUTORELOAD (1 << 1)
38 #define ARM_A9_WATCHDOG_ENABLE 1
39
40 //
41 // SCU register offsets & masks
42 //
43 #define A9_SCU_CONTROL_OFFSET 0x0
44 #define A9_SCU_CONFIG_OFFSET 0x4
45 #define A9_SCU_INVALL_OFFSET 0xC
46 #define A9_SCU_FILT_START_OFFSET 0x40
47 #define A9_SCU_FILT_END_OFFSET 0x44
48 #define A9_SCU_SACR_OFFSET 0x50
49 #define A9_SCU_SSACR_OFFSET 0x54
50
51
52 UINTN
53 EFIAPI
54 ArmGetScuBaseAddress (
55 VOID
56 );
57
58 #endif
59