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