summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorAndre Przywara <andre.przywara@arm.com>2016-11-03 01:01:50 +0000
committerTom Rini <trini@konsulko.com>2016-11-05 07:27:44 -0400
commit8add67911d786c5b98fa20179eb4371d18e769ec (patch)
treebdfefa3decac356d7b80b4588c856c5dbeb0f537 /doc
parent2a380cccc27e3964621f74f935cdcafbc21bbe35 (diff)
doc: update README.arm64
This file apparently hasn't seen an update in a while, so just sync it with reality. Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Diffstat (limited to 'doc')
-rw-r--r--doc/README.arm6427
1 files changed, 17 insertions, 10 deletions
diff --git a/doc/README.arm64 b/doc/README.arm64
index f658fa2c63..b0bba0fc65 100644
--- a/doc/README.arm64
+++ b/doc/README.arm64
@@ -2,23 +2,31 @@ U-Boot for arm64
Summary
=======
-No hardware platform of arm64 is available now. The U-Boot is
-simulated on Foundation Model and Fast Model for ARMv8.
+The initial arm64 U-Boot port was developed before hardware was available,
+so the first supported platforms were the Foundation and Fast Model for ARMv8.
+These days U-Boot runs on a variety of 64-bit capable ARM hardware, from
+embedded development boards to servers.
Notes
=====
-1. Currenly, U-Boot run at the highest exception level processor
- supported and jump to EL2 or optionally EL1 before enter OS.
+1. U-Boot can run at any exception level it is entered in, it is
+ recommened to enter it in EL3 if U-Boot takes some responsibilities of a
+ classical firmware (like initial hardware setup, CPU errata workarounds
+ or SMP bringup). U-Boot can be entered in EL2 when its main purpose is
+ that of a boot loader. It can drop to lower exception levels before
+ entering the OS.
2. U-Boot for arm64 is compiled with AArch64-gcc. AArch64-gcc
use rela relocation format, a tool(tools/relocate-rela) by Scott Wood
is used to encode the initial addend of rela to u-boot.bin. After running,
the U-Boot will be relocated to destination again.
-3. Fdt should be placed at a 2-megabyte boundary and within the first 512
- megabytes from the start of the kernel image. So, fdt_high should be
- defined specially.
+3. Earlier Linux kernel versions required the FDT to be placed at a
+ 2 MB boundary and within the same 512 MB section as the kernel image,
+ resulting in fdt_high to be defined specially.
+ Since kernel version 4.2 Linux is more relaxed about the DT location, so it
+ can be placed anywhere in memory.
Please reference linux/Documentation/arm64/booting.txt for detail.
4. Spin-table is used to wake up secondary processors. One location
@@ -37,9 +45,8 @@ Notes
aarch32 specific codes.
-
-Contributor
-===========
+Contributors
+============
Tom Rini <trini@ti.com>
Scott Wood <scottwood@freescale.com>
York Sun <yorksun@freescale.com>