2016-05-05 15:12:09 +02:00
|
|
|
/** @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
|
|
|
|
);
|
|
|
|
|
2016-05-05 18:44:25 +02:00
|
|
|
/**
|
|
|
|
Use SystemTable Conout to stop video based Simple Text Out consoles from
|
|
|
|
going to the video device. Put up LogoFile on every video device that is a
|
|
|
|
console.
|
|
|
|
|
|
|
|
@param[in] LogoFile File name of logo to display on the center of the
|
|
|
|
screen.
|
|
|
|
|
|
|
|
@retval EFI_SUCCESS ConsoleControl has been flipped to graphics and logo
|
|
|
|
displayed.
|
|
|
|
@retval EFI_UNSUPPORTED Logo not found
|
|
|
|
**/
|
|
|
|
EFI_STATUS
|
|
|
|
EnableQuietBoot (
|
|
|
|
IN EFI_GUID *LogoFile
|
|
|
|
);
|
|
|
|
|
|
|
|
/**
|
|
|
|
Use SystemTable Conout to turn on video based Simple Text Out consoles. The
|
|
|
|
Simple Text Out screens will now be synced up with all non video output
|
|
|
|
devices
|
|
|
|
|
|
|
|
@retval EFI_SUCCESS UGA devices are back in text mode and synced up.
|
|
|
|
**/
|
|
|
|
EFI_STATUS
|
|
|
|
DisableQuietBoot (
|
|
|
|
VOID
|
|
|
|
);
|
|
|
|
|
2016-05-05 15:12:09 +02:00
|
|
|
#endif // _PLATFORM_BM_H_
|