3 * Copyright (c) 2011, ARM Limited. All rights reserved.
5 * This program and the accompanying materials
6 * are licensed and made available under the terms and conditions of the BSD License
7 * which accompanies this distribution. The full text of the license may be found at
8 * http://opensource.org/licenses/bsd-license.php
10 * THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
15 #ifndef __LOADER_INTERNAL_H
16 #define __LOADER_INTERNAL_H
19 #include <Library/BaseMemoryLib.h>
20 #include <Library/BdsLib.h>
21 #include <Library/DebugLib.h>
22 #include <Library/DevicePathLib.h>
23 #include <Library/MemoryAllocationLib.h>
24 #include <Library/UefiBootServicesTableLib.h>
25 #include <Library/UefiLib.h>
27 #include <Protocol/LoadedImage.h>
29 #define LINUX_KERNEL_NAME L"zImage"
30 #define FDT_NAME L"platform.dtb"
32 #define LINUX_LOADER_SIGNATURE SIGNATURE_32('l', 'i', 'l', 'o')
37 UINT16 InitrdPathListLength
;
39 // These following fields have variable length:
42 } LINUX_LOADER_OPTIONAL_DATA
;
46 IN EFI_LOADED_IMAGE_PROTOCOL
*LoadedImage