mirror of https://github.com/acidanthera/audk.git
94 lines
2.4 KiB
OpenEdge ABL
94 lines
2.4 KiB
OpenEdge ABL
|
//++
|
||
|
// Copyright (c) 2006, Intel Corporation
|
||
|
// 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.
|
||
|
//
|
||
|
// Module Name:
|
||
|
//
|
||
|
// IpfCpuCore.i
|
||
|
//
|
||
|
// Abstract:
|
||
|
// IPF CPU definitions
|
||
|
//
|
||
|
//--
|
||
|
|
||
|
#ifndef _IPF_CPU_CORE_
|
||
|
#define _IPF_CPU_CORE_
|
||
|
|
||
|
#define PEI_BSP_STORE_SIZE 0x4000
|
||
|
#define ResetFn 0x00
|
||
|
#define MachineCheckFn 0x01
|
||
|
#define InitFn 0x02
|
||
|
#define RecoveryFn 0x03
|
||
|
#define GuardBand 0x10
|
||
|
|
||
|
//
|
||
|
// Define hardware RSE Configuration Register
|
||
|
//
|
||
|
|
||
|
//
|
||
|
// RS Configuration (RSC) bit field positions
|
||
|
//
|
||
|
#define RSC_MODE 0
|
||
|
#define RSC_PL 2
|
||
|
#define RSC_BE 4
|
||
|
//
|
||
|
// RSC bits 5-15 reserved
|
||
|
//
|
||
|
#define RSC_MBZ0 5
|
||
|
#define RSC_MBZ0_V 0x3ff
|
||
|
#define RSC_LOADRS 16
|
||
|
#define RSC_LOADRS_LEN 14
|
||
|
//
|
||
|
// RSC bits 30-63 reserved
|
||
|
//
|
||
|
#define RSC_MBZ1 30
|
||
|
#define RSC_MBZ1_V 0x3ffffffffULL
|
||
|
|
||
|
//
|
||
|
// RSC modes
|
||
|
//
|
||
|
|
||
|
//
|
||
|
// Lazy
|
||
|
//
|
||
|
#define RSC_MODE_LY (0x0)
|
||
|
//
|
||
|
// Store intensive
|
||
|
//
|
||
|
#define RSC_MODE_SI (0x1)
|
||
|
//
|
||
|
// Load intensive
|
||
|
//
|
||
|
#define RSC_MODE_LI (0x2)
|
||
|
//
|
||
|
// Eager
|
||
|
//
|
||
|
#define RSC_MODE_EA (0x3)
|
||
|
|
||
|
//
|
||
|
// RSC Endian bit values
|
||
|
//
|
||
|
#define RSC_BE_LITTLE 0
|
||
|
#define RSC_BE_BIG 1
|
||
|
|
||
|
//
|
||
|
// RSC while in kernel: enabled, little endian, pl = 0, eager mode
|
||
|
//
|
||
|
#define RSC_KERNEL ((RSC_MODE_EA<<RSC_MODE) | (RSC_BE_LITTLE<<RSC_BE))
|
||
|
//
|
||
|
// Lazy RSC in kernel: enabled, little endian, pl = 0, lazy mode
|
||
|
//
|
||
|
#define RSC_KERNEL_LAZ ((RSC_MODE_LY<<RSC_MODE) | (RSC_BE_LITTLE<<RSC_BE))
|
||
|
//
|
||
|
// RSE disabled: disabled, pl = 0, little endian, eager mode
|
||
|
//
|
||
|
#define RSC_KERNEL_DISABLED ((RSC_MODE_LY<<RSC_MODE) | (RSC_BE_LITTLE<<RSC_BE))
|
||
|
|
||
|
#endif
|