In the course of porting ArmVirtPkg to the MdeModulePkg BDS, commit1f73aef50c
ArmVirtPkg/PlatformBootManagerLib: add EnableQuietBoot & DisableQuietBoot open-coded the EnableQuietBoot() function (and its dependencies / friends) from IntelFrameworkModulePkg BDS. This code duplication can be avoided; the functionality is available from the following three libraries in MdeModulePkg: - BootLogoLib: provides the BootLogoEnableLogo() function. It does not provide the internal ConvertBmpToGopBlt() function -- that one is delegated to ImageDecoderLib (function DecodeImage()). - ImageDecoderLib: a general library that registers decoder plugins for specific image formats, and provides the generic DecodeImage() on top. - BmpImageDecoderLib: one of said decoder plugins, for handling BMP images (which is the format of our logo). In this patch, we revert1f73aef50c
, and atomically incorporate the above libraries. This is inspired by Nt32Pkg commit859e75c4fc
: Nt32Pkg: Use BootLogoLib for logo and progress bar drawing. Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Leif Lindholm <leif.lindholm@linaro.org> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
52 lines
1.7 KiB
C
52 lines
1.7 KiB
C
/** @file
|
|
Head file for BDS Platform specific code
|
|
|
|
Copyright (C) 2015-2016, Red Hat, Inc.
|
|
Copyright (c) 2004 - 2008, Intel Corporation. All rights reserved.<BR>
|
|
|
|
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.
|
|
|
|
**/
|
|
|
|
#ifndef _PLATFORM_BM_H_
|
|
#define _PLATFORM_BM_H_
|
|
|
|
#include <Library/BaseLib.h>
|
|
#include <Library/BaseMemoryLib.h>
|
|
#include <Library/DebugLib.h>
|
|
#include <Library/DevicePathLib.h>
|
|
#include <Library/MemoryAllocationLib.h>
|
|
#include <Library/UefiBootServicesTableLib.h>
|
|
#include <Library/UefiLib.h>
|
|
#include <Library/UefiRuntimeServicesTableLib.h>
|
|
|
|
/**
|
|
Download the kernel, the initial ramdisk, and the kernel command line from
|
|
QEMU's fw_cfg. Construct a minimal SimpleFileSystem that contains the two
|
|
image files, and load and start the kernel from it.
|
|
|
|
The kernel will be instructed via its command line to load the initrd from
|
|
the same Simple FileSystem.
|
|
|
|
@retval EFI_NOT_FOUND Kernel image was not found.
|
|
@retval EFI_OUT_OF_RESOURCES Memory allocation failed.
|
|
@retval EFI_PROTOCOL_ERROR Unterminated kernel command line.
|
|
|
|
@return Error codes from any of the underlying
|
|
functions. On success, the function doesn't
|
|
return.
|
|
**/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
TryRunningQemuKernel (
|
|
VOID
|
|
);
|
|
|
|
#endif // _PLATFORM_BM_H_
|