{{admon/warning|IMPORTANT |<b>This is pre-release software and not intended for general use.</b>}}

=Aarch64 Quickstart Guide=

=Aarch64 Quickstart Guide=

−

This page will help those new to aarch64(armv8) get started with the Foundation Model provided by ARM. There are a number of options available when using the model, including use of a disk image file or NFS root filesystem, as well as a choice of kernel if you would like to use Systemd or Busybox as the init process.

+

This page will help those new to aarch64 (ARMv8) get started with the Foundation Model provided by ARM. The F21-20140628-foundation-v8 Remix tarball provides an F21-based disk image, which boots the kernel from the image using UEFI(Tianocore) and Grub2, and a sample script for starting the model. This Fedora Remix uses a look aside repository for the kernel package, which includes patches that are headed upstream, but not yet added to Fedora.

== Download the Foundation Model ==

== Download the Foundation Model ==

−

The first step will be to download the Foundation model from ARM. The model is not redistributable and will therefor require you to create a free account with ARM. Once completed you will be able to download the Foundation Model and begin.

+

The first step is to download the Foundation model from ARM. The model is not re-distributable and will therefore require you to create a free account with ARM. Once completed, you will be able to download the Foundation Model and begin.

+

{{admon/note|Note: It is important to use the latest Foundation Model, if you encounter any issues check to see that you have the most recent version. }}

+

{{admon/warning|IMPORTANT: The Fast Models are not currently supported. }}

Once you have downloaded the model, you will need to set up your environment. The model can extracted to a path of your choosing, in this example we will use your home directory.

+

Once you have downloaded the model, you will need to set up your environment. The model can be extracted to a path of your choosing. Your home directory will be used in this example.

+

Unpack the model:

Unpack the model:

mkdir ~/aarch64

mkdir ~/aarch64

cd ~/aarch64

cd ~/aarch64

−

tar xvzf FM000-KT-00035-r0p8-44rel23.tgz

+

tar xvzf FM000-KT-00035-r0p8-52rel06.tgz

== Using the Model with an Image ==

== Using the Model with an Image ==

−

Using the commands below, download and extract the Aarch64 root filesystem disk image. The disk image will extract to roughly 12GB in size and may take several minutes to unpack depending on your hardware.

+

Using the commands below, download and extract the Aarch64 root filesystem tarball.

{{admon/note|Note: The extracted disk image requires approximately 12GB disk space. Please ensure you have adequate free space. This may take several minutes to unpack, depending on your hardware.}}

−

The Foundation model seems to have some performance issues when using a serial console, there are two kernel packages to choose from - one that includes the console, the other does not and is intended for use by connecting through ssh. The kernels use the wrapper to set the hostname and networking. For example 'systemd-3.9-image-2G-1.axf' will set a hostname of 'model-1' with and IP address of 10.0.1.2, the default gw should be set to 10.0.1.1. The last number in the kernel name indicates which network, hostname will be used when it boots.

You should now be able to ssh to the model once it has fully booted. If you're using the console enabled kernels you can use telnet to connect to the serial console using the provided ports as it boots, this will also close the xterm popup window.

+

=== Allowing the Model to Connect to the Internet ===

−

* For console:

+

−

telnet 10.0.1.1 5003 # note this is the IP of the gateway and not the model

+

−

The port number seems to be inconsistent and can vary depending on how quickly you attempt to connect, but is usually the last listed port.

+

−

* No console (also works on console)

+

−

ssh root@10.0.1.2 # note this is the IP address of the model

+

−

The '''root password is 'fedora', there is also another account called 'builder' password 'builder''''.

+

−

+

−

== Using the model with an NFS root ==

+

−

+

−

Using the model through an NFS root is no longer recommended or supported here.

+

−

+

−

== Allowing the Model to Connect to the Internet ==

+

On the host:

On the host:

* Enable IP forwarding (as root)

* Enable IP forwarding (as root)

Line 92:

Line 51:

The model uses Google's Public DNS server (8.8.8.8) for name resolution (/etc/resolv.conf).

The model uses Google's Public DNS server (8.8.8.8) for name resolution (/etc/resolv.conf).

+

+

=== Starting the Model ===

+

+

The kernel supports virtio, so the kernel image and initramfs included on the image will be used in the boot process. This image boots using UEFI (tianocore) and Grub2.

+

+

An example script for starting the model has been included in the tarball. This script performs the following steps to start the model:

+

+

<pre>

+

sudo ../Foundation_v8pkg/models/Linux64_GCC-4.1/Foundation_v8 \

+

--cores=1 \

+

--visualization \

+

--image=linux-system-el3-foundation.axf \

+

--data=RTSM_VE_FOUNDATIONV8_EFI.fd@0xA0000000 \

+

--block-device `pwd`/${IMAGE} \

+

--network=bridged \

+

--network-bridge=ARM1 &

+

sleep 5

+

sudo ifconfig ARM1 192.168.1.1 netmask 255.255.255.0

+

</pre>

+

{{admon/note|Note: | Depending on your environment you may need to change the IP addressing used.}}

+

+

To start the model, change to the image subdirectory and run the script:

+

+

cd ~/F21-20140628-foundation-v8

+

./efi-aarch64.sh

+

+

{{admon/note|Note: | You must have 'sudo' access in order to run this script. The script assumes the foundation model is in:

+

~/aarch64/Foundation_v8pkg

+

Adjust as necessary for your environment.}}

+

+

To connect to the serial console, telnet to the provided ports as it boots, for example:

+

+

telnet 192.168.1.1 5000 # note this is the IP of the model gateway and not the model

+

+

{{admon/note|Note: | Connecting using telnet will also close the xterm popup window. | If your connection is not successful using port 5000, try 5001, 5002, or 5003.}}

+

+

This is an example log of the model starting, and using telnet to access the console:

+

+

<pre>

+

terminal_0: Listening for serial connection on port 5000

+

terminal_1: Listening for serial connection on port 5001

+

terminal_2: Listening for serial connection on port 5002

+

terminal_3: Listening for serial connection on port 5003

+

Visualization web server started on port 2001

+

Simulation is started

+

sh: xterm: command not found

+

+

telnet 192.168.1.1 5000

+

+

+

$ telnet 192.168.1.1 5000

+

Trying 192.168.1.1...

+

Connected to 192.168.1.1.

+

Escape character is '^]'.

+

</pre>

+

+

The model will then start the first stage bootloader (tianocore), which will launch grub2, which will in turn boot the selected kernel, for example:

+

{{admon/note|Note: | To navigate the menu use '<ctrl>n' - next and '<ctrl>p' - previous.}}

Aarch64 Quickstart Guide

This page will help those new to aarch64 (ARMv8) get started with the Foundation Model provided by ARM. The F21-20140628-foundation-v8 Remix tarball provides an F21-based disk image, which boots the kernel from the image using UEFI(Tianocore) and Grub2, and a sample script for starting the model. This Fedora Remix uses a look aside repository for the kernel package, which includes patches that are headed upstream, but not yet added to Fedora.

Download the Foundation Model

The first step is to download the Foundation model from ARM. The model is not re-distributable and will therefore require you to create a free account with ARM. Once completed, you will be able to download the Foundation Model and begin.

Note: It is important to use the latest Foundation Model, if you encounter any issues check to see that you have the most recent version.