From Fedora Project Wiki
Line 1: Line 1:
=Aarch64 Quickstart Guide=
=Aarch64 Quickstart Guide=
This page will help those new to aarch64(armv8) get started the foundation model provided by ARM. The are a number of option 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 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.  


==Download The Required Software==
==Download The Required Software==
The first step will be to download the Foundation model from ARM, a stage4 root filesystem (image or tarball), the kernel package. In order to download the Foundation model you will need to create a free account with ARM.   
The first step will be to download the Foundation model from ARM, a stage4 root filesystem (image or tarball), and the kernel package. In order to download the Foundation model you will need to create a free account with ARM.   


* [http://www.arm.com/products/tools/models/fast-models/foundation-model.php The Foundation Model]
* [http://www.arm.com/products/tools/models/fast-models/foundation-model.php The Foundation Model]
Line 11: Line 11:
==Set up the Environment==
==Set up the Environment==


Once you have downloaded the model, you will need to set up your environment. The model can extracted to a path of your choosing.  
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.  
Unpack the model
Unpack the model:
 
  mkdir ~/aarch64
  mkdir ~/aarch64
  cd ~/aarch64
  cd ~/aarch64
Line 22: Line 23:
== Using the Model with an Image ==
== Using the Model with an Image ==


After downloading the rootfs extract it to your '~/armv8' directory:
After downloading the rootfs Image extract it to your '~/aarch64' directory:
  cd ~/aarch64
  cd ~/aarch64
  wget
  tar xvjf stage4-root-20130411.img.tar.bz2
  tar xvjf f19-stage4-rootfs.tar.bz2
 
Extract the kernel package:
  tar xvjf stage4-root-20130411.img.tar.bz2


With the kernels, rootfs in your working directory.  
With the kernels, rootfs in your working directory.  
Line 33: Line 36:
  fv8 --image busybox-3.7-image-foundation.axf --block-device stage4-root-20130411.img --network=bridged
  fv8 --image busybox-3.7-image-foundation.axf --block-device stage4-root-20130411.img --network=bridged


The model will take a few moments to start.
The model will take a few moments to start. The root password is 'fedora', there is also another account called 'builder' password 'builder'.


== Using the model with an NFS root ==
== Using the model with an NFS root ==
Line 39: Line 42:
Using the model through an NFS is recommended as it will allow the most flexibility when working with the system. It is important to use the paths provided as the kernel will expect the root file system to be mounted through NFS from the given path.
Using the model through an NFS is recommended as it will allow the most flexibility when working with the system. It is important to use the paths provided as the kernel will expect the root file system to be mounted through NFS from the given path.


== Extract the Root Filesystem ==
== Setting up an NFS Root Filesystem ==
First you will need to create a directory for the root filesystem. It is important you use the same path in the example as the kernel expects the rootfs to be at the path noted.
First you will need to create a directory for the root filesystem. It is important you use the same path in the example as the kernel expects the rootfs to be at the path used below:


  mkdir -p /var/exports/aarch64/stage4-nfs-root
  mkdir -p /var/exports/aarch64/stage4-nfs-root
Line 51: Line 54:


* Now create an NFS share for the rootfs, edit /etc/exports
* Now create an NFS share for the rootfs, edit /etc/exports
  vi /etc/exports
  sudo vi /etc/exports
  /var/exports/aarch64/stage4-nfs-root *(rw,no_root_squash,no_all_squash,async)
  /var/exports/aarch64/stage4-nfs-root *(rw,no_root_squash,no_all_squash,async)


Line 60: Line 63:


You need to setup the network for use with the aarch64 model and the addressing used in the kernel arguments.  
You need to setup the network for use with the aarch64 model and the addressing used in the kernel arguments.  
Start the model using one of the following depending on if you would like to use systemd or busybox.  
Start the model using one of the following depending on if you would like to use systemd or busybox as your init process (Busybox is currently recommended).  
*Systemd:
*Systemd:
  fv8 --image systemd-3.7-nfs-foundation.axf --network=bridged
  fv8 --image systemd-3.7-nfs-foundation.axf --network=bridged
Line 69: Line 72:


Once this adapter is assigned an IP address, the system should boot to either a login prompt or boot with busybox as the init process.
Once this adapter is assigned an IP address, the system should boot to either a login prompt or boot with busybox as the init process.
You may need to adjust your firewall to allow connections to the NFS server (Port 2049).


= Getting Started with the Aarch64 Bootstrap =
= Getting Started with the Aarch64 Bootstrap =

Revision as of 17:39, 15 April 2013

Aarch64 Quickstart Guide

This page will help those new to aarch64(armv8) get started with the Foundation Model provided by ARM. The 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.

Download The Required Software

The first step will be to download the Foundation model from ARM, a stage4 root filesystem (image or tarball), and the kernel package. In order to download the Foundation model you will need to create a free account with ARM.

Set up the Environment

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. Unpack the model:

mkdir ~/aarch64
cd ~/aarch64
tar xvzf FM000-KT-00035-r0p8-44rel23.tgz

Rather than using the full path, create an alias for running the Foundation model

alias fv8="~/aarch64/Foundation_v8pkg/Foundation_v8"

Using the Model with an Image

After downloading the rootfs Image extract it to your '~/aarch64' directory:

cd ~/aarch64
tar xvjf stage4-root-20130411.img.tar.bz2

Extract the kernel package:

tar xvjf stage4-root-20130411.img.tar.bz2

With the kernels, rootfs in your working directory.

Systemd:
fv8 --image systemd-3.7-image-foundation.axf --block-device stage4-root-20130411.img --network=bridged
Busybox:
fv8 --image busybox-3.7-image-foundation.axf --block-device stage4-root-20130411.img --network=bridged

The model will take a few moments to start. 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 is recommended as it will allow the most flexibility when working with the system. It is important to use the paths provided as the kernel will expect the root file system to be mounted through NFS from the given path.

Setting up an NFS Root Filesystem

First you will need to create a directory for the root filesystem. It is important you use the same path in the example as the kernel expects the rootfs to be at the path used below:

mkdir -p /var/exports/aarch64/stage4-nfs-root
cd /var/exports/aarch64/
wget http://fedorapeople.org/groups/armv8/stage4-root-20130411.tar.xz
cd stage4-nfs-root
sudo tar xvJf ../stage4-root-20130411.tar.xz
sudo mv stage4-root-20130411/* .
sudo rm -rf stage4-root-20130411
  • Now create an NFS share for the rootfs, edit /etc/exports
sudo vi /etc/exports
/var/exports/aarch64/stage4-nfs-root *(rw,no_root_squash,no_all_squash,async)
  • Start the service
sudo systemctl start nfs.service

Using the Model with an NFS root

You need to setup the network for use with the aarch64 model and the addressing used in the kernel arguments. Start the model using one of the following depending on if you would like to use systemd or busybox as your init process (Busybox is currently recommended).

  • Systemd:
fv8 --image systemd-3.7-nfs-foundation.axf --network=bridged
  • Busybox:
fv8 --image busybox-3.7-nfs-foundation.axf --network=bridged

After starting the model you will see a new device created on your host system named 'ARM0', use the following to assign an IP address for use with the model:

sudo ifconfig ARM0 10.0.0.1 netmask 255.255.255.0

Once this adapter is assigned an IP address, the system should boot to either a login prompt or boot with busybox as the init process.

You may need to adjust your firewall to allow connections to the NFS server (Port 2049).

Getting Started with the Aarch64 Bootstrap