Commit ba3d3378 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
Neoverse Reference Design 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 1eb1f456
WinPE boot on Neoverse RD platforms
===================================
.. contents::
WinPE boot
----------
Neoverse Reference Design (RD) platform software stack supports the boot of
Windows Preinstallation Environment (WinPE) on RD platforms. A pre-built WinPE
disk image is connected as a SATA disk to the fixed virtual platform (FVP).
During boot, the platform firmware detects the connected WinPE disk image
and boots from it.
Platform Names
--------------
Arm's Neoverse reference design platforms are assigned names in order to allow
the build and execute scripts to recognize the platform for which the software
has to be built 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 |
+--------------------------+-------------------------+
Download the platform software
------------------------------
Skip this section if the required sources have been downloaded.
To obtain the required sources for the platform, follow the steps listed on the
`Download sources`_ 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.
Build the platform software
---------------------------
This section describes the procedure to build the platform firmware required to
boot WinPE on Neoverse RD platforms.
To build the 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 required for
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
Obtain the WinPE disk image
---------------------------
Obtain a pre-built WinPE disk image to use it as the disk image to boot from.
Refer to `this page <https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/winpe-intro>`_
for more information. *Note:* WinPE version should be ``20262`` or higher.
Boot WinPE
----------
To boot from the WinPE disk image, the commands to be used are:
- 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
- Launch the FVP to boot WinPE:
::
./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> (optional)
- 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 commands to boot WinPE are as listed below.
- Command to begin the WinPE boot on the RD-Daniel platform using a
``WinPE_arm64.iso`` pre-built 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.*
.. _Download sources: docs/infra/common/download-sources.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