1. Add defines for MAX values for UEFI data types.

2. Remove the #defines and add the extern declarations for gEfiDebugPortVariableGuid and gEfiDebugPortDevicePathGuid.

Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: michael.d.kinney@intel.com
Reviewed-by: Star Zeng <star.zeng@intel.com>


git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14465 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Liming Gao 2013-07-12 02:48:08 +00:00 committed by lgao4
parent 41982ebbc5
commit 068a82fc5a
6 changed files with 45 additions and 8 deletions

View File

@ -1,7 +1,7 @@
/** @file /** @file
Processor or Compiler specific defines and types for ARM. Processor or Compiler specific defines and types for ARM.
Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR> Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR> Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
@ -92,6 +92,12 @@ typedef INT32 INTN;
/// ///
#define MAX_ADDRESS 0xFFFFFFFF #define MAX_ADDRESS 0xFFFFFFFF
///
/// Maximum legal ARM INTN and UINTN values.
///
#define MAX_INTN ((INTN)0x7FFFFFFF)
#define MAX_UINTN ((UINTN)0xFFFFFFFF)
/// ///
/// The stack alignment required for ARM /// The stack alignment required for ARM
/// ///

View File

@ -6,7 +6,7 @@
environment. There are a set of base libraries in the Mde Package that can environment. There are a set of base libraries in the Mde Package that can
be used to implement base modules. be used to implement base modules.
Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR> Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR> Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
@ -206,6 +206,17 @@ struct _LIST_ENTRY {
/// ///
#define NULL ((VOID *) 0) #define NULL ((VOID *) 0)
///
/// Maximum values for common UEFI Data Types
///
#define MAX_INT8 ((INT8)0x7F)
#define MAX_UINT8 ((UINT8)0xFF)
#define MAX_INT16 ((INT16)0x7FFF)
#define MAX_UINT16 ((UINT16)0xFFFF)
#define MAX_INT32 ((INT32)0x7FFFFFFF)
#define MAX_UINT32 ((UINT32)0xFFFFFFFF)
#define MAX_INT64 ((INT64)0x7FFFFFFFFFFFFFFFULL)
#define MAX_UINT64 ((UINT64)0xFFFFFFFFFFFFFFFFULL)
#define BIT0 0x00000001 #define BIT0 0x00000001
#define BIT1 0x00000002 #define BIT1 0x00000002

View File

@ -1,7 +1,7 @@
/** @file /** @file
Processor or Compiler specific defines and types for IA-32 architecture. Processor or Compiler specific defines and types for IA-32 architecture.
Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR> Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available under This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution. the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at The full text of the license may be found at
@ -226,6 +226,12 @@ typedef INT32 INTN;
/// ///
#define MAX_ADDRESS 0xFFFFFFFF #define MAX_ADDRESS 0xFFFFFFFF
///
/// Maximum legal IA-32 INTN and UINTN values.
///
#define MAX_INTN ((INTN)0x7FFFFFFF)
#define MAX_UINTN ((UINTN)0xFFFFFFFF)
/// ///
/// The stack alignment required for IA-32. /// The stack alignment required for IA-32.
/// ///

View File

@ -1,7 +1,7 @@
/** @file /** @file
Processor or Compiler specific defines and types for Intel Itanium(TM) processors. Processor or Compiler specific defines and types for Intel Itanium(TM) processors.
Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR> Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available This program and the accompanying materials are licensed and made available
under the terms and conditions of the BSD License which accompanies this under the terms and conditions of the BSD License which accompanies this
distribution. The full text of the license may be found at distribution. The full text of the license may be found at
@ -236,6 +236,12 @@ typedef INT64 INTN;
/// ///
#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFFULL #define MAX_ADDRESS 0xFFFFFFFFFFFFFFFFULL
///
/// Maximum legal Itanium-based INTN and UINTN values.
///
#define MAX_INTN ((INTN)0x7FFFFFFFFFFFFFFFULL)
#define MAX_UINTN ((UINTN)0xFFFFFFFFFFFFFFFFULL)
/// ///
/// Per the Itanium Software Conventions and Runtime Architecture Guide, /// Per the Itanium Software Conventions and Runtime Architecture Guide,
/// section 3.3.4, IPF stack must always be 16-byte aligned. /// section 3.3.4, IPF stack must always be 16-byte aligned.

View File

@ -4,7 +4,7 @@
This protocol is used by debug agent to communicate with the This protocol is used by debug agent to communicate with the
remote debug host. remote debug host.
Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR> Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License 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 which accompanies this distribution. The full text of the license may be found at
@ -128,13 +128,15 @@ struct _EFI_DEBUGPORT_PROTOCOL {
// //
#define EFI_DEBUGPORT_VARIABLE_NAME L"DEBUGPORT" #define EFI_DEBUGPORT_VARIABLE_NAME L"DEBUGPORT"
#define EFI_DEBUGPORT_VARIABLE_GUID EFI_DEBUGPORT_PROTOCOL_GUID #define EFI_DEBUGPORT_VARIABLE_GUID EFI_DEBUGPORT_PROTOCOL_GUID
#define gEfiDebugPortVariableGuid gEfiDebugPortProtocolGuid
extern EFI_GUID gEfiDebugPortVariableGuid;
// //
// DebugPort device path definitions... // DebugPort device path definitions...
// //
#define DEVICE_PATH_MESSAGING_DEBUGPORT EFI_DEBUGPORT_PROTOCOL_GUID #define DEVICE_PATH_MESSAGING_DEBUGPORT EFI_DEBUGPORT_PROTOCOL_GUID
#define gEfiDebugPortDevicePathGuid gEfiDebugPortProtocolGuid
extern EFI_GUID gEfiDebugPortDevicePathGuid;
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;

View File

@ -1,7 +1,7 @@
/** @file /** @file
Processor or Compiler specific defines and types x64 (Intel 64, AMD64). Processor or Compiler specific defines and types x64 (Intel 64, AMD64).
Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR> Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License 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 which accompanies this distribution. The full text of the license may be found at
@ -227,6 +227,12 @@ typedef INT64 INTN;
/// ///
#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFFULL #define MAX_ADDRESS 0xFFFFFFFFFFFFFFFFULL
///
/// Maximum legal x64 INTN and UINTN values.
///
#define MAX_INTN ((INTN)0x7FFFFFFFFFFFFFFFULL)
#define MAX_UINTN ((UINTN)0xFFFFFFFFFFFFFFFFULL)
/// ///
/// The stack alignment required for x64 /// The stack alignment required for x64
/// ///