Install and Boot a Linux distribution
Important
This feature might not be applicable to all Platforms. Please check individual Platform pages, section Supported Features to confirm if this feature is listed as supported.
Note
This section assumes the user has completed the chapter Getting Started and has a functional working environment.
Linux distribution boot
Neoverse Reference Design (RD) platform software stack supports the installation and boot of various linux distributions such as Debian, Ubuntu or Fedora. The distribution is installed on a SATA disk and the installed image can be used for multiple boots.
Build the platform software
This section describes the procedure to build the platform firmware required to install and boot a linux distribution on Neoverse RD platforms.
To build the RD software stack, the command to be used is
./build-scripts/build-test-uefi.sh -p <platform name> <command>
Supported command line options are listed below
<platform name>
Lookup for a platform name 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 the distro installation/boot test on the 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-V1 quad-chip platform:
./build-scripts/build-test-uefi.sh -p rdv1mc build
Note
This command should be followed by the package
command to complete the
preparation of the fip image.
Command to package the previously built software stack and prepares the fip image:
./build-scripts/build-test-uefi.sh -p rdv1mc package
Installing a linux distribution
After the build of the platform software stack for the distro install/boot is complete, a distribution can be installed into a SATA disk image. Before beginning the installation process, download the CD iso image of the required distribution version.
Latest version of distro installation images can be downloaded from the following locations (select an image built for aarch64 architecture):
The commands used to begin the distro installation 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 installation:
./distro.sh -p <platform name> -i <abs_iso_image_path> -s <disk size> -a <additional_params> -n [true|false]
Supported command line options are listed below
-p <platform name>
Lookup for a platform name in Platform Names.
-i <abs_iso_image_path>
Absolute path to the downloaded distribution installer disk image.
-s <disk_size>
Size of the SATA disk image (in GB) to be created. 12GB and above is good enough for most use cases.
-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.
An example of a command to install the debian distribution is listed below.
./distro.sh -p rdv1 -i /absolute/path/to/debian-10.6.0-arm64-xfce-CD-1.iso -s 16
This command creates a 16GB SATA disk image, boots the RD-V1 single-chip software stack and starts the installation of debian distribution.
From here on, follow the instructions of the choosen distribution installer. For more information about the installation procedure, refer online installation manuals of the choosen distribution.
After the installation is completed, the disk image with a random name “<number>.satadisk” will be created in model-scripts/rdinfra/ folder. Use this disk image for booting the installed distribution.
Additional distribution specific instructions (if any)
Debian Distribution installation:
During installation, the installer will prompt the user with the message ‘Load CD-ROM drivers from removable media’ and display two options - Yes/No. Select the option ‘No’. This is followed by another prompt ‘Manually select a CD-ROM module and device?’ and displays two options - Yes/No. Select the option ‘Yes’. This brings up the module list required for accessing CD-ROM and lists two options - ‘none’ and ‘cdrom’. Select the option ‘none’ and enter
/dev/vda
. The installation media on the virtio disk will be detected and installation continues.
Ubuntu Distribution installation:
During installation, the installer will display options for additional packages that may require internet connection, such as ‘openssh-server’. It is important that these options are not selected. Choosing to install additional packages may cause failure to boot after the satadisk image is created.
Booting a linux distribution
To boot the installed distro, use the following commands:
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
Start the distro boot:
./distro.sh -p <platform name> -d <satadisk_path> -a <additional_params> -n [true|false]
Supported command line options are listed below
-p <platform name>
Lookup for a platform name in Platform Names.
-d <satadisk_path>
Absolute path to the installed distro disk image created using the instructions listed in 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 a linux distribution are listed below.
Command to look for the available .satadisk image in the
model-scripts/rdinfra
folder and boots with that image. If multiple.satadisk
images are found, it will list them all but won’t boot:./distro.sh -p rdv1
Command to begin the distro boot from the
fedora.satadisk
image:./distro.sh -p rdv1 -d /absolute/path/to/fedora.satadisk