summaryrefslogtreecommitdiffstats
path: root/src/VBox/Devices/EFI/Firmware/UefiPayloadPkg/BuildAndIntegrationInstructions.txt
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-11 08:17:27 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-11 08:17:27 +0000
commitf215e02bf85f68d3a6106c2a1f4f7f063f819064 (patch)
tree6bb5b92c046312c4e95ac2620b10ddf482d3fa8b /src/VBox/Devices/EFI/Firmware/UefiPayloadPkg/BuildAndIntegrationInstructions.txt
parentInitial commit. (diff)
downloadvirtualbox-f215e02bf85f68d3a6106c2a1f4f7f063f819064.tar.xz
virtualbox-f215e02bf85f68d3a6106c2a1f4f7f063f819064.zip
Adding upstream version 7.0.14-dfsg.upstream/7.0.14-dfsg
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/VBox/Devices/EFI/Firmware/UefiPayloadPkg/BuildAndIntegrationInstructions.txt')
-rw-r--r--src/VBox/Devices/EFI/Firmware/UefiPayloadPkg/BuildAndIntegrationInstructions.txt80
1 files changed, 80 insertions, 0 deletions
diff --git a/src/VBox/Devices/EFI/Firmware/UefiPayloadPkg/BuildAndIntegrationInstructions.txt b/src/VBox/Devices/EFI/Firmware/UefiPayloadPkg/BuildAndIntegrationInstructions.txt
new file mode 100644
index 00000000..5ed6f61e
--- /dev/null
+++ b/src/VBox/Devices/EFI/Firmware/UefiPayloadPkg/BuildAndIntegrationInstructions.txt
@@ -0,0 +1,80 @@
+================================================================================
+Build And Integration Instructions
+2020 Aug 1st
+================================================================================
+
+================================================================================
+DISCLAIMER
+================================================================================
+This release note as well as the software described in it is furnished under license
+and may only be used or copied in accordance with the terms of the license. The
+information in this manual is furnished for informational use only, is subject to
+change without notice, and should not be construed as a commitment by Intel Corporation.
+Intel Corporation assumes no responsibility or liability for any errors or inaccuracies
+that may appear in this document or any software that may be provided in association
+with this document.
+Except as permitted by such license, no part of this document may be reproduced,
+stored in a retrieval system, or transmitted in any form or by any means without
+the express written consent of Intel Corporation.
+
+================================================================================
+ INDEX
+================================================================================
+A. INTRODUCTION
+B. HOW TO BUILD
+C. HOW TO INTEGRATE INTO COREBOOT
+D. HOW TO INTEGRATE INTO SLIM BOOTLOADER
+
+================================================================================
+A. INTRODUCTION
+================================================================================
+This document provides instructions on how to build UEFI Payload and how to
+integrate it into coreboot or Slim Bootloader firmware.
+
+================================================================================
+B. HOW TO BUILD
+================================================================================
+1. Run the below two commands in windows command prompt window:
+ > edksetup.bat
+
+ For pure X64 build:
+ > build -a x64 -p UefiPayloadPkg\UefiPayloadPkg.dsc -b <BuildType> -t <ToolChain>
+ -D BOOTLOADER=<Bootloader>
+
+ For X64 build with IA32 entry point:
+ > build -a IA32 -a X64 -p UefiPayloadPkg\UefiPayloadPkg.dsc -b <BuildType> -t <ToolChain>
+ -D BOOTLOADER=<Bootloader>
+
+ <BuildType> support 'DEBUG', 'RELEASE' and 'NOOPT'.
+ <ToolChain> is the EDK II build environment on your host. Tested with VS2015x86 toolchain.
+ <Bootloader> could be "SBL" for Slim Bootloader and "COREBOOT" for coreboot.
+
+ Refer to https://github.com/tianocore/tianocore.github.io/wiki/UDK2018-How-to-Build for
+ details about EDK II build steps.
+
+ NOTE: Pure 32bit UEFI payload support could be added if required later.
+
+2. If build is successfully, the payload image (UEFIPAYLOAD.fd) will be generated inside the
+ folder of Build\UefiPayloadPkg.
+
+================================================================================
+C. HOW TO INTEGRATE INTO COREBOOT
+================================================================================
+1. Copy the payload image (UEFIPAYLOAD.fd) into the top-level directory of Coreboot source tree.
+2. Run "make menuconfig" in linux console to start Coreboot configuration surface.
+3. In the Payload section,
+ 1) Choose "Tianocore Payload" for the option of "Add a payload".
+ 2) Update the path of payload image for the option of "Tianocore binary".
+ 3) Choose "UEFIPayload" for the option of "Tianocore Payload".
+4. If the graphics console is required in UEFI payload, enable framebuffer initialization in coreboot.
+ This could be done by enabling native graphics or using VGA BIOS option rom.
+5. Build the coreboot firmware image.
+
+================================================================================
+D. HOW TO INTEGRATE INTO SLIM BOOTLOADER
+================================================================================
+Please refer https://slimbootloader.github.io/how-tos/integrate-multiple-payloads.html for below steps.
+1. Copy the payload image (UEFIPAYLOAD.fd) into Slim Bootloader source at PayloadPkg\PayloadBins\UefiPld.fd
+2. Update config data to make UEFI payload as default payload if required.
+3. Build Slim Bootloader with UEFI payload:
+ BuildLoader.py build <Platform> -p "OsLoader.efi:LLDR:Lz4;UefiPld.fd:UEFI:Lzma"