1 /** @file 2 Head file for BDS Platform specific code 3 4 Copyright (c) 2004 - 2008, Intel Corporation. All rights reserved.<BR> 5 Copyright (c) 2015, Hisilicon Limited. All rights reserved.<BR> 6 Copyright (c) 2015, Linaro Limited. All rights reserved.<BR> 7 8 This program and the accompanying materials are licensed and made available 9 under the terms and conditions of the BSD License which accompanies this 10 distribution. The full text of the license may be found at 11 http://opensource.org/licenses/bsd-license.php 12 13 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT 14 WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 15 16 Based on the files under ArmVirtPkg/Library/PlatformIntelBdsLib/ 17 18 **/ 19 20 #ifndef _INTEL_BDS_PLATFORM_H_ 21 #define _INTEL_BDS_PLATFORM_H_ 22 23 #include <Library/BaseLib.h> 24 #include <Library/BaseMemoryLib.h> 25 #include <Library/DebugLib.h> 26 #include <Library/DevicePathLib.h> 27 #include <Library/MemoryAllocationLib.h> 28 #include <Library/UefiBootServicesTableLib.h> 29 #include <Library/UefiRuntimeServicesTableLib.h> 30 31 #include "IntelBdsPlatformCommon.h" 32 33 VOID 34 PlatformBdsEnterFrontPage ( 35 IN UINT16 TimeoutDefault, 36 IN BOOLEAN ConnectAllHappened 37 ); 38 39 /** 40 Download the kernel, the initial ramdisk, and the kernel command line from 41 QEMU's fw_cfg. Construct a minimal SimpleFileSystem that contains the two 42 image files, and load and start the kernel from it. 43 44 The kernel will be instructed via its command line to load the initrd from 45 the same Simple FileSystem. 46 47 @retval EFI_NOT_FOUND Kernel image was not found. 48 @retval EFI_OUT_OF_RESOURCES Memory allocation failed. 49 @retval EFI_PROTOCOL_ERROR Unterminated kernel command line. 50 51 @return Error codes from any of the underlying 52 functions. On success, the function doesn't 53 return. 54 **/ 55 EFI_STATUS 56 EFIAPI 57 TryRunningQemuKernel ( 58 VOID 59 ); 60 61 #endif // _INTEL_BDS_PLATFORM_H 62