mirror of https://github.com/acidanthera/audk.git
66 lines
1.7 KiB
C
66 lines
1.7 KiB
C
/** @file
|
|
|
|
Copyright (c) 2011, ARM Limited. All rights reserved.
|
|
|
|
This program and the accompanying materials
|
|
are licensed and made available under the terms and conditions of the BSD License
|
|
which accompanies this distribution. The full text of the license may be found at
|
|
http://opensource.org/licenses/bsd-license.php
|
|
|
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
|
|
**/
|
|
|
|
#ifndef __ARM_CORTEX_A9_H__
|
|
#define __ARM_CORTEX_A9_H__
|
|
|
|
#include <Chipset/ArmV7.h>
|
|
|
|
//
|
|
// Cortex A9 feature bit definitions
|
|
//
|
|
#define A9_FEATURE_PARITY (1<<9)
|
|
#define A9_FEATURE_AOW (1<<8)
|
|
#define A9_FEATURE_EXCL (1<<7)
|
|
#define A9_FEATURE_SMP (1<<6)
|
|
#define A9_FEATURE_FOZ (1<<3)
|
|
#define A9_FEATURE_DPREF (1<<2)
|
|
#define A9_FEATURE_HINT (1<<1)
|
|
#define A9_FEATURE_FWD (1<<0)
|
|
|
|
//
|
|
// Cortex A9 Watchdog
|
|
//
|
|
#define ARM_A9_WATCHDOG_REGION 0x600
|
|
|
|
#define ARM_A9_WATCHDOG_LOAD_REGISTER 0x20
|
|
#define ARM_A9_WATCHDOG_CONTROL_REGISTER 0x28
|
|
|
|
#define ARM_A9_WATCHDOG_WATCHDOG_MODE (1 << 3)
|
|
#define ARM_A9_WATCHDOG_TIMER_MODE (0 << 3)
|
|
#define ARM_A9_WATCHDOG_SINGLE_SHOT (0 << 1)
|
|
#define ARM_A9_WATCHDOG_AUTORELOAD (1 << 1)
|
|
#define ARM_A9_WATCHDOG_ENABLE 1
|
|
|
|
//
|
|
// SCU register offsets & masks
|
|
//
|
|
#define A9_SCU_CONTROL_OFFSET 0x0
|
|
#define A9_SCU_CONFIG_OFFSET 0x4
|
|
#define A9_SCU_INVALL_OFFSET 0xC
|
|
#define A9_SCU_FILT_START_OFFSET 0x40
|
|
#define A9_SCU_FILT_END_OFFSET 0x44
|
|
#define A9_SCU_SACR_OFFSET 0x50
|
|
#define A9_SCU_SSACR_OFFSET 0x54
|
|
|
|
|
|
UINTN
|
|
EFIAPI
|
|
ArmGetScuBaseAddress (
|
|
VOID
|
|
);
|
|
|
|
#endif
|
|
|