mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-11 15:37:23 +00:00
doc: boards: amlogic: Add documentation on pre-generated FIP files
It add documentation on licencing & provides links to the amlogic-boot-fip pre-built files collections. Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
This commit is contained in:
parent
23f20ef77c
commit
4c60512ad9
25 changed files with 147 additions and 0 deletions
|
@ -44,6 +44,8 @@ https://github.com/LibreELEC/amlogic-boot-fip/tree/master/beelink-s922x
|
|||
NB: Beelink use a common board config for GT-King, GT-King Pro and the
|
||||
GS-King-X model, hence the "beelink-s922x" name.
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `beelink-s922x`
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ wget https://github.com/LibreELEC/amlogic-boot-fip/archive/master.zip
|
||||
|
|
|
@ -45,6 +45,8 @@ https://github.com/LibreELEC/amlogic-boot-fip/tree/master/beelink-s922x
|
|||
NB: Beelink use a common board config for GT-King, GT-King Pro and the
|
||||
GS-King-X model, hence the "beelink-s922x" name.
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `beelink-s922x`
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ wget https://github.com/LibreELEC/amlogic-boot-fip/archive/master.zip
|
||||
|
|
|
@ -74,6 +74,14 @@ This matrix concerns the actual source code version.
|
|||
| PCIe (+NVMe) | *N/A* | *N/A* | *N/A* | **Yes** | **Yes** | **Yes** | **Yes** |
|
||||
+-------------------------------+-----------+-----------------+--------------+-------------+------------+-------------+--------------+
|
||||
|
||||
Boot Documentation
|
||||
------------------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
pre-generated-fip
|
||||
|
||||
Board Documentation
|
||||
-------------------
|
||||
|
||||
|
|
|
@ -37,6 +37,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `jethub-j100`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain binaries
|
||||
from the git tree published by the board vendor:
|
||||
|
|
|
@ -33,6 +33,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `jethub-j80`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain binaries
|
||||
from the git tree published by the board vendor:
|
||||
|
|
|
@ -30,6 +30,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `khadas-vim`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -31,6 +31,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `khadas-vim2`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -57,6 +57,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `khadas-vim3`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -57,6 +57,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `khadas-vim3l`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -30,6 +30,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `lafrite`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -54,6 +54,8 @@ These binaries and the tools required below have been collected and prebuilt
|
|||
for convenience at <https://github.com/BayLibre/u-boot/releases/>. These
|
||||
apply to both v1 and v2.
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `lepotato`
|
||||
|
||||
Download and extract the libretech-cc release from there, and set FIPDIR to
|
||||
point to the `fip` subdirectory.
|
||||
|
||||
|
|
|
@ -30,6 +30,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `nanopi-k2`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -30,6 +30,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `odroid-c2`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -34,6 +34,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `odroid-c4` or `odroid-hc4`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -29,6 +29,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `odroid-n2` or `odroid-n2-plus`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -31,6 +31,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `p200`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -31,6 +31,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `p201`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -31,6 +31,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `p212`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
93
doc/board/amlogic/pre-generated-fip.rst
Normal file
93
doc/board/amlogic/pre-generated-fip.rst
Normal file
|
@ -0,0 +1,93 @@
|
|||
.. SPDX-License-Identifier: GPL-2.0+
|
||||
|
||||
Pre-Generated FIP file set
|
||||
==========================
|
||||
|
||||
The Amlogic ARMv8 based SoCs uses a vendor variant of the Trusted Firmware-A
|
||||
boot architecture.
|
||||
|
||||
You can find documentation on the Trusted Firmware-A architecture on: https://www.trustedfirmware.org/projects/tf-a/
|
||||
|
||||
The Trusted Firmware-A uses the following boot elements (simplified):
|
||||
|
||||
- BL1: First boot step, implemented in ROM on Amlogic SoCs
|
||||
- BL2: Second boot step, used to initialize the SoC main clocks & DDR interface. The BL21 and ACS board-specific binaries are "inserted" in the BL32 binary before signing/packaging in order to be flashed on the platform.
|
||||
- BL30: Amlogic Secure Co-Processor (SCP) firmware used to handle all the system management operations (DVFS, suspend/resume, ...)
|
||||
- BL301: Amlogic Secure Co-Processor (SCP) board-specific firmware "plug-in" to handle custom DVFS & suspend-resume parameters
|
||||
- BL31: Initializes the interrupt controller and the system management interface (PSCI)
|
||||
- BL32 (Optional): Is the Trusted Environment Execution (TEE) Operating System to run secure Trusted Apps, e.g. OP-TEE
|
||||
- BL33: Is the last non-secure step, usually U-Boot which loads Linux
|
||||
|
||||
Amlogic provides in binary form:
|
||||
|
||||
- bl2.bin
|
||||
- bl30.bin
|
||||
- bl30.bin
|
||||
- bl31.img
|
||||
- bl32.bin
|
||||
|
||||
And for lastest SoCs, Amlogic also provides the DDR drivers used by the BL2 binary.
|
||||
|
||||
The licence of these files wasn't clear until recently, the currently Amlogic distribution licence
|
||||
is the following:
|
||||
|
||||
.. code-block:: C
|
||||
|
||||
// Copyright (C) 2018 Amlogic, Inc. All rights reserved.
|
||||
//
|
||||
// All information contained herein is Amlogic confidential.
|
||||
//
|
||||
// This software is provided to you pursuant to Software License
|
||||
// Agreement (SLA) with Amlogic Inc ("Amlogic"). This software may be
|
||||
// used only in accordance with the terms of this agreement.
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification is strictly prohibited without prior written permission
|
||||
// from Amlogic.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
The following files are generated from the Amlogic U-Boot fork:
|
||||
|
||||
- acs.bin: contains the PLL & DDR parameters for the board
|
||||
- bl301.bin: contains the DVFS & suspend-resume handling code for the board
|
||||
- bl33.bin: U-boot binary image
|
||||
|
||||
The acs.bin & bl301.bin uses the U-Boot GPL-2.0+ headers & build systems, thus those
|
||||
are considered issued from GPL-2.0+ source code.
|
||||
|
||||
The tools used to sign & package those binary files are delivered in binary format
|
||||
for Intel x86-64 and Python 2.x only.
|
||||
|
||||
A collection of pre-built with the corresponding Amlogic binaries for the common
|
||||
commercially available boards were collected in the https://github.com/LibreELEC/amlogic-boot-fip
|
||||
repository.
|
||||
|
||||
Using this collection for a commercially available board is very easy.
|
||||
|
||||
Here considering the Libre Computer AML-S905X-CC, which codename is `lepotato`:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ git clone https://github.com/LibreELEC/amlogic-boot-fip --depth=1
|
||||
$ cd amlogic-boot-fip
|
||||
$ mkdir my-output-dir
|
||||
$ ./build-fip.sh lepotato /path/to/u-boot/u-boot.bin my-output-dir
|
||||
|
||||
and then write the image to SD with:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ DEV=/dev/your_sd_device
|
||||
$ dd if=my-output-dir/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
|
||||
$ dd if=my-output-dir/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
|
|
@ -34,6 +34,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `radxa-zero`
|
||||
|
||||
Amlogic does not provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
git trees published by the board vendor:
|
||||
|
|
|
@ -31,6 +31,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `s400`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -27,6 +27,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `sei510`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -29,6 +29,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `sei610`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -32,6 +32,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `u200`
|
||||
|
||||
Amlogic doesn't provide sources for the firmware and for tools needed
|
||||
to create the bootloader image, so it is necessary to obtain them from
|
||||
the git tree published by the board vendor:
|
||||
|
|
|
@ -29,6 +29,8 @@ U-Boot compilation
|
|||
Image creation
|
||||
--------------
|
||||
|
||||
For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `wetek-core2`
|
||||
|
||||
Amlogic does not provide sources for the firmware or the tools needed
|
||||
to create the bootloader image, and WeTek has not publicly shared the
|
||||
precompiled FIP binaries. However the public Khadas VIM2 sources also
|
||||
|
|
Loading…
Reference in a new issue