Base.h File Reference

Root include file for Mde Package Base type modules. More...

#include <gpxe/efi/ProcessorBind.h>

Go to the source code of this file.

Data Structures

struct  GUID
struct  _LIST_ENTRY

Defines

#define CONST   const
#define STATIC   static
#define VOID   void
#define IN
#define OUT
#define OPTIONAL
#define TRUE   ((BOOLEAN)(1==1))
#define FALSE   ((BOOLEAN)(0==1))
#define NULL   ((VOID *) 0)
#define BIT0   0x00000001
#define BIT1   0x00000002
#define BIT2   0x00000004
#define BIT3   0x00000008
#define BIT4   0x00000010
#define BIT5   0x00000020
#define BIT6   0x00000040
#define BIT7   0x00000080
#define BIT8   0x00000100
#define BIT9   0x00000200
#define BIT10   0x00000400
#define BIT11   0x00000800
#define BIT12   0x00001000
#define BIT13   0x00002000
#define BIT14   0x00004000
#define BIT15   0x00008000
#define BIT16   0x00010000
#define BIT17   0x00020000
#define BIT18   0x00040000
#define BIT19   0x00080000
#define BIT20   0x00100000
#define BIT21   0x00200000
#define BIT22   0x00400000
#define BIT23   0x00800000
#define BIT24   0x01000000
#define BIT25   0x02000000
#define BIT26   0x04000000
#define BIT27   0x08000000
#define BIT28   0x10000000
#define BIT29   0x20000000
#define BIT30   0x40000000
#define BIT31   0x80000000
#define BIT32   0x0000000100000000UL
#define BIT33   0x0000000200000000UL
#define BIT34   0x0000000400000000UL
#define BIT35   0x0000000800000000UL
#define BIT36   0x0000001000000000UL
#define BIT37   0x0000002000000000UL
#define BIT38   0x0000004000000000UL
#define BIT39   0x0000008000000000UL
#define BIT40   0x0000010000000000UL
#define BIT41   0x0000020000000000UL
#define BIT42   0x0000040000000000UL
#define BIT43   0x0000080000000000UL
#define BIT44   0x0000100000000000UL
#define BIT45   0x0000200000000000UL
#define BIT46   0x0000400000000000UL
#define BIT47   0x0000800000000000UL
#define BIT48   0x0001000000000000UL
#define BIT49   0x0002000000000000UL
#define BIT50   0x0004000000000000UL
#define BIT51   0x0008000000000000UL
#define BIT52   0x0010000000000000UL
#define BIT53   0x0020000000000000UL
#define BIT54   0x0040000000000000UL
#define BIT55   0x0080000000000000UL
#define BIT56   0x0100000000000000UL
#define BIT57   0x0200000000000000UL
#define BIT58   0x0400000000000000UL
#define BIT59   0x0800000000000000UL
#define BIT60   0x1000000000000000UL
#define BIT61   0x2000000000000000UL
#define BIT62   0x4000000000000000UL
#define BIT63   0x8000000000000000UL
#define _INT_SIZE_OF(n)   ((sizeof (n) + sizeof (UINTN) - 1) &~(sizeof (UINTN) - 1))
#define VA_START(ap, v)   (ap = (VA_LIST) & (v) + _INT_SIZE_OF (v))
#define VA_ARG(ap, t)   (*(t *) ((ap += _INT_SIZE_OF (t)) - _INT_SIZE_OF (t)))
#define VA_END(ap)   (ap = (VA_LIST) 0)
#define OFFSET_OF(TYPE, Field)   ((UINTN) &(((TYPE *)0)->Field))
#define _CR(Record, TYPE, Field)   ((TYPE *) ((CHAR8 *) (Record) - (CHAR8 *) &(((TYPE *) 0)->Field)))
 CONTAINING_RECORD - returns a pointer to the structure from one of it's elements.
#define ALIGN_VALUE(Value, Alignment)   ((Value) + (((Alignment) - (Value)) & ((Alignment) - 1)))
 ALIGN_VALUE - aligns a value up to the next boundary of the given alignment.
#define ALIGN_POINTER(Pointer, Alignment)   ((VOID *) (ALIGN_VALUE ((UINTN)(Pointer), (Alignment))))
 ALIGN_POINTER - aligns a pointer to the lowest boundry.
#define ALIGN_VARIABLE(Value)   ALIGN_VALUE ((Value), sizeof (UINTN))
 ALIGN_VARIABLE - aligns a variable up to the next natural boundry for int size of a processor.
#define MAX(a, b)   (((a) > (b)) ? (a) : (b))
#define MIN(a, b)   (((a) < (b)) ? (a) : (b))
#define ENCODE_ERROR(a)   (MAX_BIT | (a))
 Set the upper bit to indicate EFI Error.
#define ENCODE_WARNING(a)   (a)
#define RETURN_ERROR(a)   ((INTN) (a) < 0)
#define RETURN_SUCCESS   0
#define RETURN_LOAD_ERROR   ENCODE_ERROR (1)
#define RETURN_INVALID_PARAMETER   ENCODE_ERROR (2)
#define RETURN_UNSUPPORTED   ENCODE_ERROR (3)
#define RETURN_BAD_BUFFER_SIZE   ENCODE_ERROR (4)
#define RETURN_BUFFER_TOO_SMALL   ENCODE_ERROR (5)
#define RETURN_NOT_READY   ENCODE_ERROR (6)
#define RETURN_DEVICE_ERROR   ENCODE_ERROR (7)
#define RETURN_WRITE_PROTECTED   ENCODE_ERROR (8)
#define RETURN_OUT_OF_RESOURCES   ENCODE_ERROR (9)
#define RETURN_VOLUME_CORRUPTED   ENCODE_ERROR (10)
#define RETURN_VOLUME_FULL   ENCODE_ERROR (11)
#define RETURN_NO_MEDIA   ENCODE_ERROR (12)
#define RETURN_MEDIA_CHANGED   ENCODE_ERROR (13)
#define RETURN_NOT_FOUND   ENCODE_ERROR (14)
#define RETURN_ACCESS_DENIED   ENCODE_ERROR (15)
#define RETURN_NO_RESPONSE   ENCODE_ERROR (16)
#define RETURN_NO_MAPPING   ENCODE_ERROR (17)
#define RETURN_TIMEOUT   ENCODE_ERROR (18)
#define RETURN_NOT_STARTED   ENCODE_ERROR (19)
#define RETURN_ALREADY_STARTED   ENCODE_ERROR (20)
#define RETURN_ABORTED   ENCODE_ERROR (21)
#define RETURN_ICMP_ERROR   ENCODE_ERROR (22)
#define RETURN_TFTP_ERROR   ENCODE_ERROR (23)
#define RETURN_PROTOCOL_ERROR   ENCODE_ERROR (24)
#define RETURN_INCOMPATIBLE_VERSION   ENCODE_ERROR (25)
#define RETURN_SECURITY_VIOLATION   ENCODE_ERROR (26)
#define RETURN_CRC_ERROR   ENCODE_ERROR (27)
#define RETURN_END_OF_MEDIA   ENCODE_ERROR (28)
#define RETURN_END_OF_FILE   ENCODE_ERROR (31)
#define RETURN_INVALID_LANGUAGE   ENCODE_ERROR (32)
#define RETURN_WARN_UNKNOWN_GLYPH   ENCODE_WARNING (1)
#define RETURN_WARN_DELETE_FAILURE   ENCODE_WARNING (2)
#define RETURN_WARN_WRITE_FAILURE   ENCODE_WARNING (3)
#define RETURN_WARN_BUFFER_TOO_SMALL   ENCODE_WARNING (4)
#define SIGNATURE_16(A, B)   ((A) | (B << 8))
 Returns a 16-bit signature built from 2 ASCII characters.
#define SIGNATURE_32(A, B, C, D)   (SIGNATURE_16 (A, B) | (SIGNATURE_16 (C, D) << 16))
 Returns a 32-bit signature built from 4 ASCII characters.
#define SIGNATURE_64(A, B, C, D, E, F, G, H)   (SIGNATURE_32 (A, B, C, D) | ((UINT64) (SIGNATURE_32 (E, F, G, H)) << 32))
 Returns a 64-bit signature built from 8 ASCII characters.

Typedefs

typedef UINT64 PHYSICAL_ADDRESS
typedef struct _LIST_ENTRY LIST_ENTRY
 LIST_ENTRY definition.
typedef CHAR8VA_LIST
typedef INTN RETURN_STATUS


Detailed Description

Root include file for Mde Package Base type modules.

This is the include file for any module of type base. Base modules only use types defined via this include file and can be ported easily to any environment. There are a set of base libraries in the Mde Package that can be used to implement base modules.

Copyright (c) 2006 - 2008, 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.

Definition in file Base.h.


Define Documentation

#define CONST   const

Definition at line 51 of file Base.h.

#define STATIC   static

Definition at line 52 of file Base.h.

#define VOID   void

Definition at line 53 of file Base.h.

#define IN

Definition at line 59 of file Base.h.

#define OUT

Definition at line 60 of file Base.h.

#define OPTIONAL

Definition at line 61 of file Base.h.

#define TRUE   ((BOOLEAN)(1==1))

Definition at line 67 of file Base.h.

#define FALSE   ((BOOLEAN)(0==1))

Definition at line 68 of file Base.h.

#define NULL   ((VOID *) 0)

Definition at line 70 of file Base.h.

#define BIT0   0x00000001

Definition at line 72 of file Base.h.

#define BIT1   0x00000002

Definition at line 73 of file Base.h.

#define BIT2   0x00000004

Definition at line 74 of file Base.h.

#define BIT3   0x00000008

Definition at line 75 of file Base.h.

#define BIT4   0x00000010

Definition at line 76 of file Base.h.

#define BIT5   0x00000020

Definition at line 77 of file Base.h.

#define BIT6   0x00000040

Definition at line 78 of file Base.h.

#define BIT7   0x00000080

Definition at line 79 of file Base.h.

#define BIT8   0x00000100

Definition at line 80 of file Base.h.

#define BIT9   0x00000200

Definition at line 81 of file Base.h.

#define BIT10   0x00000400

Definition at line 82 of file Base.h.

#define BIT11   0x00000800

Definition at line 83 of file Base.h.

#define BIT12   0x00001000

Definition at line 84 of file Base.h.

#define BIT13   0x00002000

Definition at line 85 of file Base.h.

#define BIT14   0x00004000

Definition at line 86 of file Base.h.

#define BIT15   0x00008000

Definition at line 87 of file Base.h.

#define BIT16   0x00010000

Definition at line 88 of file Base.h.

#define BIT17   0x00020000

Definition at line 89 of file Base.h.

#define BIT18   0x00040000

Definition at line 90 of file Base.h.

#define BIT19   0x00080000

Definition at line 91 of file Base.h.

#define BIT20   0x00100000

Definition at line 92 of file Base.h.

#define BIT21   0x00200000

Definition at line 93 of file Base.h.

#define BIT22   0x00400000

Definition at line 94 of file Base.h.

#define BIT23   0x00800000

Definition at line 95 of file Base.h.

#define BIT24   0x01000000

Definition at line 96 of file Base.h.

#define BIT25   0x02000000

Definition at line 97 of file Base.h.

#define BIT26   0x04000000

Definition at line 98 of file Base.h.

#define BIT27   0x08000000

Definition at line 99 of file Base.h.

#define BIT28   0x10000000

Definition at line 100 of file Base.h.

#define BIT29   0x20000000

Definition at line 101 of file Base.h.

#define BIT30   0x40000000

Definition at line 102 of file Base.h.

#define BIT31   0x80000000

Definition at line 103 of file Base.h.

#define BIT32   0x0000000100000000UL

Definition at line 104 of file Base.h.

#define BIT33   0x0000000200000000UL

Definition at line 105 of file Base.h.

#define BIT34   0x0000000400000000UL

Definition at line 106 of file Base.h.

#define BIT35   0x0000000800000000UL

Definition at line 107 of file Base.h.

#define BIT36   0x0000001000000000UL

Definition at line 108 of file Base.h.

#define BIT37   0x0000002000000000UL

Definition at line 109 of file Base.h.

#define BIT38   0x0000004000000000UL

Definition at line 110 of file Base.h.

#define BIT39   0x0000008000000000UL

Definition at line 111 of file Base.h.

#define BIT40   0x0000010000000000UL

Definition at line 112 of file Base.h.

#define BIT41   0x0000020000000000UL

Definition at line 113 of file Base.h.

#define BIT42   0x0000040000000000UL

Definition at line 114 of file Base.h.

#define BIT43   0x0000080000000000UL

Definition at line 115 of file Base.h.

#define BIT44   0x0000100000000000UL

Definition at line 116 of file Base.h.

#define BIT45   0x0000200000000000UL

Definition at line 117 of file Base.h.

#define BIT46   0x0000400000000000UL

Definition at line 118 of file Base.h.

#define BIT47   0x0000800000000000UL

Definition at line 119 of file Base.h.

#define BIT48   0x0001000000000000UL

Definition at line 120 of file Base.h.

#define BIT49   0x0002000000000000UL

Definition at line 121 of file Base.h.

#define BIT50   0x0004000000000000UL

Definition at line 122 of file Base.h.

#define BIT51   0x0008000000000000UL

Definition at line 123 of file Base.h.

#define BIT52   0x0010000000000000UL

Definition at line 124 of file Base.h.

#define BIT53   0x0020000000000000UL

Definition at line 125 of file Base.h.

#define BIT54   0x0040000000000000UL

Definition at line 126 of file Base.h.

#define BIT55   0x0080000000000000UL

Definition at line 127 of file Base.h.

#define BIT56   0x0100000000000000UL

Definition at line 128 of file Base.h.

#define BIT57   0x0200000000000000UL

Definition at line 129 of file Base.h.

#define BIT58   0x0400000000000000UL

Definition at line 130 of file Base.h.

#define BIT59   0x0800000000000000UL

Definition at line 131 of file Base.h.

#define BIT60   0x1000000000000000UL

Definition at line 132 of file Base.h.

#define BIT61   0x2000000000000000UL

Definition at line 133 of file Base.h.

#define BIT62   0x4000000000000000UL

Definition at line 134 of file Base.h.

#define BIT63   0x8000000000000000UL

Definition at line 135 of file Base.h.

#define _INT_SIZE_OF (  )     ((sizeof (n) + sizeof (UINTN) - 1) &~(sizeof (UINTN) - 1))

Definition at line 177 of file Base.h.

#define VA_START ( ap,
 )     (ap = (VA_LIST) & (v) + _INT_SIZE_OF (v))

Definition at line 183 of file Base.h.

#define VA_ARG ( ap,
 )     (*(t *) ((ap += _INT_SIZE_OF (t)) - _INT_SIZE_OF (t)))

Definition at line 184 of file Base.h.

#define VA_END ( ap   )     (ap = (VA_LIST) 0)

Definition at line 185 of file Base.h.

#define OFFSET_OF ( TYPE,
Field   )     ((UINTN) &(((TYPE *)0)->Field))

Definition at line 190 of file Base.h.

#define _CR ( Record,
TYPE,
Field   )     ((TYPE *) ((CHAR8 *) (Record) - (CHAR8 *) &(((TYPE *) 0)->Field)))

CONTAINING_RECORD - returns a pointer to the structure from one of it's elements.

Definition at line 196 of file Base.h.

#define ALIGN_VALUE ( Value,
Alignment   )     ((Value) + (((Alignment) - (Value)) & ((Alignment) - 1)))

ALIGN_VALUE - aligns a value up to the next boundary of the given alignment.

Definition at line 201 of file Base.h.

#define ALIGN_POINTER ( Pointer,
Alignment   )     ((VOID *) (ALIGN_VALUE ((UINTN)(Pointer), (Alignment))))

ALIGN_POINTER - aligns a pointer to the lowest boundry.

Definition at line 206 of file Base.h.

#define ALIGN_VARIABLE ( Value   )     ALIGN_VALUE ((Value), sizeof (UINTN))

ALIGN_VARIABLE - aligns a variable up to the next natural boundry for int size of a processor.

Definition at line 211 of file Base.h.

#define MAX ( a,
 )     (((a) > (b)) ? (a) : (b))

Definition at line 219 of file Base.h.

#define MIN ( a,
 )     (((a) < (b)) ? (a) : (b))

Definition at line 228 of file Base.h.

#define ENCODE_ERROR (  )     (MAX_BIT | (a))

Set the upper bit to indicate EFI Error.

Definition at line 241 of file Base.h.

#define ENCODE_WARNING (  )     (a)

Definition at line 243 of file Base.h.

#define RETURN_ERROR (  )     ((INTN) (a) < 0)

Definition at line 244 of file Base.h.

#define RETURN_SUCCESS   0

Definition at line 246 of file Base.h.

#define RETURN_LOAD_ERROR   ENCODE_ERROR (1)

Definition at line 247 of file Base.h.

#define RETURN_INVALID_PARAMETER   ENCODE_ERROR (2)

Definition at line 248 of file Base.h.

#define RETURN_UNSUPPORTED   ENCODE_ERROR (3)

Definition at line 249 of file Base.h.

#define RETURN_BAD_BUFFER_SIZE   ENCODE_ERROR (4)

Definition at line 250 of file Base.h.

#define RETURN_BUFFER_TOO_SMALL   ENCODE_ERROR (5)

Definition at line 251 of file Base.h.

#define RETURN_NOT_READY   ENCODE_ERROR (6)

Definition at line 252 of file Base.h.

#define RETURN_DEVICE_ERROR   ENCODE_ERROR (7)

Definition at line 253 of file Base.h.

#define RETURN_WRITE_PROTECTED   ENCODE_ERROR (8)

Definition at line 254 of file Base.h.

#define RETURN_OUT_OF_RESOURCES   ENCODE_ERROR (9)

Definition at line 255 of file Base.h.

#define RETURN_VOLUME_CORRUPTED   ENCODE_ERROR (10)

Definition at line 256 of file Base.h.

#define RETURN_VOLUME_FULL   ENCODE_ERROR (11)

Definition at line 257 of file Base.h.

#define RETURN_NO_MEDIA   ENCODE_ERROR (12)

Definition at line 258 of file Base.h.

#define RETURN_MEDIA_CHANGED   ENCODE_ERROR (13)

Definition at line 259 of file Base.h.

#define RETURN_NOT_FOUND   ENCODE_ERROR (14)

Definition at line 260 of file Base.h.

#define RETURN_ACCESS_DENIED   ENCODE_ERROR (15)

Definition at line 261 of file Base.h.

#define RETURN_NO_RESPONSE   ENCODE_ERROR (16)

Definition at line 262 of file Base.h.

#define RETURN_NO_MAPPING   ENCODE_ERROR (17)

Definition at line 263 of file Base.h.

#define RETURN_TIMEOUT   ENCODE_ERROR (18)

Definition at line 264 of file Base.h.

#define RETURN_NOT_STARTED   ENCODE_ERROR (19)

Definition at line 265 of file Base.h.

#define RETURN_ALREADY_STARTED   ENCODE_ERROR (20)

Definition at line 266 of file Base.h.

#define RETURN_ABORTED   ENCODE_ERROR (21)

Definition at line 267 of file Base.h.

#define RETURN_ICMP_ERROR   ENCODE_ERROR (22)

Definition at line 268 of file Base.h.

#define RETURN_TFTP_ERROR   ENCODE_ERROR (23)

Definition at line 269 of file Base.h.

#define RETURN_PROTOCOL_ERROR   ENCODE_ERROR (24)

Definition at line 270 of file Base.h.

#define RETURN_INCOMPATIBLE_VERSION   ENCODE_ERROR (25)

Definition at line 271 of file Base.h.

#define RETURN_SECURITY_VIOLATION   ENCODE_ERROR (26)

Definition at line 272 of file Base.h.

#define RETURN_CRC_ERROR   ENCODE_ERROR (27)

Definition at line 273 of file Base.h.

#define RETURN_END_OF_MEDIA   ENCODE_ERROR (28)

Definition at line 274 of file Base.h.

#define RETURN_END_OF_FILE   ENCODE_ERROR (31)

Definition at line 275 of file Base.h.

#define RETURN_INVALID_LANGUAGE   ENCODE_ERROR (32)

Definition at line 276 of file Base.h.

#define RETURN_WARN_UNKNOWN_GLYPH   ENCODE_WARNING (1)

Definition at line 279 of file Base.h.

#define RETURN_WARN_DELETE_FAILURE   ENCODE_WARNING (2)

Definition at line 280 of file Base.h.

#define RETURN_WARN_WRITE_FAILURE   ENCODE_WARNING (3)

Definition at line 281 of file Base.h.

#define RETURN_WARN_BUFFER_TOO_SMALL   ENCODE_WARNING (4)

Definition at line 282 of file Base.h.

#define SIGNATURE_16 ( A,
 )     ((A) | (B << 8))

Returns a 16-bit signature built from 2 ASCII characters.

Parameters:
A The first ASCII character.
B The second ASCII character.
Returns:
A 16-bit value built from the two ASCII characters specified by A and B.

Definition at line 293 of file Base.h.

#define SIGNATURE_32 ( A,
B,
C,
 )     (SIGNATURE_16 (A, B) | (SIGNATURE_16 (C, D) << 16))

Returns a 32-bit signature built from 4 ASCII characters.

Parameters:
A The first ASCII character.
B The second ASCII character.
C The third ASCII character.
D The fourth ASCII character.
Returns:
A 32-bit value built from the two ASCII characters specified by A, B, C and D.

Definition at line 307 of file Base.h.

#define SIGNATURE_64 ( A,
B,
C,
D,
E,
F,
G,
 )     (SIGNATURE_32 (A, B, C, D) | ((UINT64) (SIGNATURE_32 (E, F, G, H)) << 32))

Returns a 64-bit signature built from 8 ASCII characters.

Parameters:
A The first ASCII character.
B The second ASCII character.
C The third ASCII character.
D The fourth ASCII character.
E The fifth ASCII character.
F The sixth ASCII character.
G The seventh ASCII character.
H The eighth ASCII character.
Returns:
A 64-bit value built from the two ASCII characters specified by A, B, C, D, E, F, G and H.

Definition at line 325 of file Base.h.


Typedef Documentation

Definition at line 36 of file Base.h.

typedef struct _LIST_ENTRY LIST_ENTRY

LIST_ENTRY definition.

Definition at line 41 of file Base.h.

typedef CHAR8* VA_LIST

Definition at line 182 of file Base.h.

Definition at line 236 of file Base.h.


Generated on Tue Apr 6 20:01:48 2010 for gPXE by  doxygen 1.5.7.1