Commit e1441599 authored by Thomas Abraham's avatar Thomas Abraham
Browse files

infra/common: document WinPE boot



Add a new document that explains the procedure to boot WinPE on the SGI/RD
platforms.
Signed-off-by: Thomas Abraham's avatarThomas Abraham <thomas.abraham@arm.com>
Signed-off-by: Vijayenthiran Subramaniam's avatarVijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com>
Change-Id: Ic0a0a03a660fece2f38a1cb38f6b6da932c353e6
parent 423d6689
How to boot WinPE
=================
.. contents::
WinPE boot support
------------------
RD software stack supports the boot of Windows Preinstallation Environment
(WinPE). A pre-built WinPE disk image is provided as a SATA disk to the FVP
which then is used to boot WinPE.
Platform Names
--------------
Arm's Infra reference platforms are assigned names in order to allow the build
and execute scripts to recognize the platform that has to be buit and executed.
The names for the reference platforms are listed below. Please make a note
of the name of the platform of your choice. This name is required to start the
build and execute procedure. The names under 'Platform Name' column has to be
used in place of the placeholder ``<platform>`` as mentioned in the commands
listed below.
+--------------------------+-------------------------+
| Reference Platform | Platform Name |
+==========================+=========================+
| SGI-575 | sgi575 |
+--------------------------+-------------------------+
| RD-N1-Edge (Single Chip) | rdn1edge |
+--------------------------+-------------------------+
| RD-N1-Edge (Dual Chip) | rdn1edgex2 |
+--------------------------+-------------------------+
| RD-E1-Edge | rde1edge |
+--------------------------+-------------------------+
| RD-Daniel Config-M | rddaniel |
+--------------------------+-------------------------+
| RD-Daniel Config-XLR | rddanielxlr |
+--------------------------+-------------------------+
| RD-N2 | rdn2 |
+--------------------------+-------------------------+
Sync the required platform software
-----------------------------------
To obtain the required sources for the platform, follow the steps listed on the
`Obtaining the platform software`_ page. Ensure that the
platform software is downloaded before proceeding with the steps listed below.
Also, note the host machine requirements listed on that page which is essential
to build and execute the platform software stack.
Procedure to build SGI/RD software stack for WinPE boot
-------------------------------------------------------
The SGI/RD platform software stack has to be first built to prepare for the
WinPE boot. The procedure to build the RD-Daniel platform stack is listed below.
To build the SGI/RD software stack, the command to be used is
::
./build-scripts/build-test-uefi.sh -p <platform> <command>
Supported command line options are listed below
* <platform>
- Supported platforms are listed in `Platform Names`_.
* <command>
- ``clean``
- ``build``
- ``package``
- ``all`` (all of the three above)
Examples of the build command are
- Command to clean, build and package the RD-N2 software stack needed for the
WinPE boot on the RD-N2 platform:
::
./build-scripts/build-test-uefi.sh -p rdn2 all
- Command to remove the generated outputs (binaries) of the software stack for
the RD-N2 platform:
::
./build-scripts/build-test-uefi.sh -p rdn2 clean
- Command to perform an incremental build of the software components included in
the software stack for the RD-Daniel Config-M platform:
*Note:* this command should be followed by the ``package`` command to
complete the preparation of the fip image.
::
./build-scripts/build-test-uefi.sh -p rddaniel build
- Command to package the previously built software stack and prepares the fip
image:
::
./build-scripts/build-test-uefi.sh -p rddaniel package
Procedure for preparing a WinPE disk image
------------------------------------------
To prepare a WinPE disk image, follow the instructions listed on this page:
`Boot to WinPE
<https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/boot-to-winpe>`_
In addition to the above, to allow the text console to be used as the boot
message console, mount the WinPE disk image. Note: The instructions to
mount the WinPE image is outside of the scope of this document. Use the following
commands to enable the use of text console for boot messages.
::
cd <mount-path>\media\EFI\Microsoft\Boot
bcdedit /store BCD /set {default} EMS ON
Continue to unmount the WinPE image and package it (instructions for these are
outside of the scope of this document).
Procedure for booting WinPE on SGI/RD platform
----------------------------------------------
To boot from the WinPE disk image, use the following command:
- Set ``MODEL`` path before launching the model:
::
export MODEL=<absolute path to the platform FVP binary>
- If platform is SGI-575:
::
cd model-scripts/sgi
- If platform is an RD:
::
cd model-scripts/rdinfra
- Begin WinPE boot:
::
./distro.sh -p <platform> -d <satadisk_path> -a <additional_params> -n [true|false]
Supported command line options are listed below
* -p <platform>
- Supported platforms are listed in `Platform Names`_.
* -d <satadisk_path>
- Absolute path to the WinPE disk image created using the previous section.
* -n [true|false] (optional)
- Controls the use of network ports by the model. If network ports have
to be enabled, use 'true' as the option. Default value is set to
'false'.
* -a <additional_params>
- Specify any additional model parameters to be passed. The model
parameters and the data to be passed to those parameters can be found
in the FVP documentation.
Example command functionality are as listed below.
- Command to begin the WinPE boot on the RD-Daniel platform using the ``WinPE_arm64.iso``
disk image. Follow the instructions on console to complete the WinPE boot.
::
./distro.sh -p rddaniel -d /absolute/path/to/WinPE_arm64.iso
--------------
*Copyright (c) 2020, Arm Limited. All rights reserved.*
.. _Obtaining the platform software:
docs/infra/common/obtain-platform-software-stack.rst
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment