1# Introduction
2
3This document provides the guideline to build UEFI firmware for Ampere Computing's Arm64 reference platforms.
4
5Platform code is located under Platform/Ampere/{Platform Name}Pkg.
6
7Silicon code is located under Silicon/Ampere/Ampere{SoC Name}Pkg.
8
9# Build machines
10
11- x86 Linux host machines running latest Ubuntu or CentOS releases.
12- Arm64 Linux host machines if native compiling. This has been tested on Ampere's eMAG and Altra hardware platforms with latest AArch64 CentOS or Ubuntu releases.
13
14# How to build (Linux Environment)
15
16Please follow top-level Readme.md for build instructions.
17
18## Additional build tools
19
20Ampere provides additional tools and documentation for automating the manual process described as described in the top-level README.md,
21and for building a final Tianocore UEFI image that can be flashed onto the target system.
22
23To use these tools, clone the following to the **WORKSPACE** location:
24
25```bash
26$ git clone https://github.com/AmpereComputing/edk2-ampere-tools.git
27```
28
29## Notes
30
31If you run into any build issue with the Intel ASL+ Optimizing Compiler/Disassembler (IASL) that comes with your Linux distro,
32download and install the IASL compiler from https://acpica.org/. At the time of this write-up, we have tested with version 20200110.
33
34```bash
35$ wget https://acpica.org/sites/acpica/files/acpica-unix2-20200110.tar.gz
36$ tar xzf acpica-unix2-20200110.tar.gz
37$ cd acpica-unix2-20200110
38$ make HOST=_CYGWIN && sudo make install
39```
40