Home | History | Annotate | Line # | Download | only in lib
data.c revision 1.1.1.1
      1  1.1  jakllsch /*	$NetBSD: data.c,v 1.1.1.1 2014/04/01 16:16:06 jakllsch Exp $	*/
      2  1.1  jakllsch 
      3  1.1  jakllsch /*++
      4  1.1  jakllsch 
      5  1.1  jakllsch Copyright (c) 1998  Intel Corporation
      6  1.1  jakllsch 
      7  1.1  jakllsch Module Name:
      8  1.1  jakllsch 
      9  1.1  jakllsch     data.c
     10  1.1  jakllsch 
     11  1.1  jakllsch Abstract:
     12  1.1  jakllsch 
     13  1.1  jakllsch     EFI library global data
     14  1.1  jakllsch 
     15  1.1  jakllsch 
     16  1.1  jakllsch 
     17  1.1  jakllsch Revision History
     18  1.1  jakllsch 
     19  1.1  jakllsch --*/
     20  1.1  jakllsch 
     21  1.1  jakllsch #include "lib.h"
     22  1.1  jakllsch 
     23  1.1  jakllsch //
     24  1.1  jakllsch // LibInitialized - TRUE once InitializeLib() is called for the first time
     25  1.1  jakllsch //
     26  1.1  jakllsch 
     27  1.1  jakllsch BOOLEAN  LibInitialized = FALSE;
     28  1.1  jakllsch 
     29  1.1  jakllsch //
     30  1.1  jakllsch // ST - pointer to the EFI system table
     31  1.1  jakllsch //
     32  1.1  jakllsch 
     33  1.1  jakllsch EFI_SYSTEM_TABLE        *ST;
     34  1.1  jakllsch 
     35  1.1  jakllsch //
     36  1.1  jakllsch // BS - pointer to the boot services table
     37  1.1  jakllsch //
     38  1.1  jakllsch 
     39  1.1  jakllsch EFI_BOOT_SERVICES       *BS;
     40  1.1  jakllsch 
     41  1.1  jakllsch 
     42  1.1  jakllsch //
     43  1.1  jakllsch // Default pool allocation type
     44  1.1  jakllsch //
     45  1.1  jakllsch 
     46  1.1  jakllsch EFI_MEMORY_TYPE PoolAllocationType = EfiBootServicesData;
     47  1.1  jakllsch 
     48  1.1  jakllsch //
     49  1.1  jakllsch // Unicode collation functions that are in use
     50  1.1  jakllsch //
     51  1.1  jakllsch 
     52  1.1  jakllsch EFI_UNICODE_COLLATION_INTERFACE   LibStubUnicodeInterface = {
     53  1.1  jakllsch     LibStubStriCmp,
     54  1.1  jakllsch     LibStubMetaiMatch,
     55  1.1  jakllsch     LibStubStrLwrUpr,
     56  1.1  jakllsch     LibStubStrLwrUpr,
     57  1.1  jakllsch     NULL,   // FatToStr
     58  1.1  jakllsch     NULL,   // StrToFat
     59  1.1  jakllsch     NULL    // SupportedLanguages
     60  1.1  jakllsch };
     61  1.1  jakllsch 
     62  1.1  jakllsch EFI_UNICODE_COLLATION_INTERFACE   *UnicodeInterface = &LibStubUnicodeInterface;
     63  1.1  jakllsch 
     64  1.1  jakllsch //
     65  1.1  jakllsch // Root device path
     66  1.1  jakllsch //
     67  1.1  jakllsch 
     68  1.1  jakllsch EFI_DEVICE_PATH RootDevicePath[] = {
     69  1.1  jakllsch    {END_DEVICE_PATH_TYPE, END_ENTIRE_DEVICE_PATH_SUBTYPE, {END_DEVICE_PATH_LENGTH,0}}
     70  1.1  jakllsch };
     71  1.1  jakllsch 
     72  1.1  jakllsch EFI_DEVICE_PATH EndDevicePath[] = {
     73  1.1  jakllsch    {END_DEVICE_PATH_TYPE, END_ENTIRE_DEVICE_PATH_SUBTYPE, {END_DEVICE_PATH_LENGTH, 0}}
     74  1.1  jakllsch };
     75  1.1  jakllsch 
     76  1.1  jakllsch EFI_DEVICE_PATH EndInstanceDevicePath[] = {
     77  1.1  jakllsch    {END_DEVICE_PATH_TYPE, END_INSTANCE_DEVICE_PATH_SUBTYPE, {END_DEVICE_PATH_LENGTH, 0}}
     78  1.1  jakllsch };
     79  1.1  jakllsch 
     80  1.1  jakllsch 
     81  1.1  jakllsch //
     82  1.1  jakllsch // EFI IDs
     83  1.1  jakllsch //
     84  1.1  jakllsch 
     85  1.1  jakllsch EFI_GUID EfiGlobalVariable  = EFI_GLOBAL_VARIABLE;
     86  1.1  jakllsch EFI_GUID NullGuid = { 0,0,0,{0,0,0,0,0,0,0,0} };
     87  1.1  jakllsch 
     88  1.1  jakllsch //
     89  1.1  jakllsch // Protocol IDs
     90  1.1  jakllsch //
     91  1.1  jakllsch 
     92  1.1  jakllsch EFI_GUID DevicePathProtocol       = DEVICE_PATH_PROTOCOL;
     93  1.1  jakllsch EFI_GUID LoadedImageProtocol      = LOADED_IMAGE_PROTOCOL;
     94  1.1  jakllsch EFI_GUID TextInProtocol           = SIMPLE_TEXT_INPUT_PROTOCOL;
     95  1.1  jakllsch EFI_GUID TextOutProtocol          = SIMPLE_TEXT_OUTPUT_PROTOCOL;
     96  1.1  jakllsch EFI_GUID BlockIoProtocol          = BLOCK_IO_PROTOCOL;
     97  1.1  jakllsch EFI_GUID DiskIoProtocol           = DISK_IO_PROTOCOL;
     98  1.1  jakllsch EFI_GUID FileSystemProtocol       = SIMPLE_FILE_SYSTEM_PROTOCOL;
     99  1.1  jakllsch EFI_GUID LoadFileProtocol         = LOAD_FILE_PROTOCOL;
    100  1.1  jakllsch EFI_GUID DeviceIoProtocol         = DEVICE_IO_PROTOCOL;
    101  1.1  jakllsch EFI_GUID UnicodeCollationProtocol = UNICODE_COLLATION_PROTOCOL;
    102  1.1  jakllsch EFI_GUID SerialIoProtocol         = SERIAL_IO_PROTOCOL;
    103  1.1  jakllsch EFI_GUID SimpleNetworkProtocol    = EFI_SIMPLE_NETWORK_PROTOCOL;
    104  1.1  jakllsch EFI_GUID PxeBaseCodeProtocol      = EFI_PXE_BASE_CODE_PROTOCOL;
    105  1.1  jakllsch EFI_GUID PxeCallbackProtocol      = EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL;
    106  1.1  jakllsch EFI_GUID NetworkInterfaceIdentifierProtocol = EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL;
    107  1.1  jakllsch EFI_GUID UiProtocol               = EFI_UI_PROTOCOL;
    108  1.1  jakllsch EFI_GUID PciIoProtocol            = EFI_PCI_IO_PROTOCOL;
    109  1.1  jakllsch //
    110  1.1  jakllsch // File system information IDs
    111  1.1  jakllsch //
    112  1.1  jakllsch 
    113  1.1  jakllsch EFI_GUID GenericFileInfo           = EFI_FILE_INFO_ID;
    114  1.1  jakllsch EFI_GUID FileSystemInfo            = EFI_FILE_SYSTEM_INFO_ID;
    115  1.1  jakllsch EFI_GUID FileSystemVolumeLabelInfo = EFI_FILE_SYSTEM_VOLUME_LABEL_INFO_ID;
    116  1.1  jakllsch 
    117  1.1  jakllsch //
    118  1.1  jakllsch // Reference implementation public protocol IDs
    119  1.1  jakllsch //
    120  1.1  jakllsch 
    121  1.1  jakllsch EFI_GUID InternalShellProtocol = INTERNAL_SHELL_GUID;
    122  1.1  jakllsch EFI_GUID VariableStoreProtocol = VARIABLE_STORE_PROTOCOL;
    123  1.1  jakllsch EFI_GUID LegacyBootProtocol = LEGACY_BOOT_PROTOCOL;
    124  1.1  jakllsch EFI_GUID VgaClassProtocol = VGA_CLASS_DRIVER_PROTOCOL;
    125  1.1  jakllsch 
    126  1.1  jakllsch EFI_GUID TextOutSpliterProtocol = TEXT_OUT_SPLITER_PROTOCOL;
    127  1.1  jakllsch EFI_GUID ErrorOutSpliterProtocol = ERROR_OUT_SPLITER_PROTOCOL;
    128  1.1  jakllsch EFI_GUID TextInSpliterProtocol = TEXT_IN_SPLITER_PROTOCOL;
    129  1.1  jakllsch /* Added for GOP support */
    130  1.1  jakllsch EFI_GUID GraphicsOutputProtocol = EFI_GRAPHICS_OUTPUT_PROTOCOL_GUID;
    131  1.1  jakllsch 
    132  1.1  jakllsch EFI_GUID AdapterDebugProtocol = ADAPTER_DEBUG_PROTOCOL;
    133  1.1  jakllsch 
    134  1.1  jakllsch //
    135  1.1  jakllsch // Device path media protocol IDs
    136  1.1  jakllsch //
    137  1.1  jakllsch EFI_GUID PcAnsiProtocol = DEVICE_PATH_MESSAGING_PC_ANSI;
    138  1.1  jakllsch EFI_GUID Vt100Protocol  = DEVICE_PATH_MESSAGING_VT_100;
    139  1.1  jakllsch 
    140  1.1  jakllsch //
    141  1.1  jakllsch // EFI GPT Partition Type GUIDs
    142  1.1  jakllsch //
    143  1.1  jakllsch EFI_GUID EfiPartTypeSystemPartitionGuid = EFI_PART_TYPE_EFI_SYSTEM_PART_GUID;
    144  1.1  jakllsch EFI_GUID EfiPartTypeLegacyMbrGuid = EFI_PART_TYPE_LEGACY_MBR_GUID;
    145  1.1  jakllsch 
    146  1.1  jakllsch 
    147  1.1  jakllsch //
    148  1.1  jakllsch // Reference implementation Vendor Device Path Guids
    149  1.1  jakllsch //
    150  1.1  jakllsch EFI_GUID UnknownDevice      = UNKNOWN_DEVICE_GUID;
    151  1.1  jakllsch 
    152  1.1  jakllsch //
    153  1.1  jakllsch // Configuration Table GUIDs
    154  1.1  jakllsch //
    155  1.1  jakllsch 
    156  1.1  jakllsch EFI_GUID MpsTableGuid             = MPS_TABLE_GUID;
    157  1.1  jakllsch EFI_GUID AcpiTableGuid            = ACPI_TABLE_GUID;
    158  1.1  jakllsch EFI_GUID SMBIOSTableGuid          = SMBIOS_TABLE_GUID;
    159  1.1  jakllsch EFI_GUID SalSystemTableGuid       = SAL_SYSTEM_TABLE_GUID;
    160  1.1  jakllsch 
    161  1.1  jakllsch //
    162  1.1  jakllsch // Network protocol GUIDs
    163  1.1  jakllsch //
    164  1.1  jakllsch EFI_GUID Ip4ServiceBindingProtocol = EFI_IP4_SERVICE_BINDING_PROTOCOL;
    165  1.1  jakllsch EFI_GUID Ip4Protocol = EFI_IP4_PROTOCOL;
    166  1.1  jakllsch EFI_GUID Udp4ServiceBindingProtocol = EFI_UDP4_SERVICE_BINDING_PROTOCOL;
    167  1.1  jakllsch EFI_GUID Udp4Protocol = EFI_UDP4_PROTOCOL;
    168  1.1  jakllsch EFI_GUID Tcp4ServiceBindingProtocol = EFI_TCP4_SERVICE_BINDING_PROTOCOL;
    169  1.1  jakllsch EFI_GUID Tcp4Protocol = EFI_TCP4_PROTOCOL;
    170