mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-20 19:44:23 +00:00
rpi3: Concatenate BL1 and FIP automatically
Add a new default makefile target to concatenate BL1 and the FIP and generate armstub8.bin. This way it isn't needed to do it manually. Documentation updated to reflect the changes. Change-Id: Id5b5b1b7b9f87767db63fd01180ddfea855a7207 Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
This commit is contained in:
parent
b19269a63c
commit
64fe343c03
2 changed files with 26 additions and 16 deletions
|
@ -196,29 +196,19 @@ Then compile TF-A. For a AArch32 kernel, use the following command line:
|
|||
|
||||
CROSS_COMPILE=aarch64-linux-gnu- make PLAT=rpi3 \
|
||||
RPI3_BL33_IN_AARCH32=1 \
|
||||
BL33=../rpi3-arm-tf-bootstrap/aarch32/el2-bootstrap.bin \
|
||||
all fip
|
||||
BL33=../rpi3-arm-tf-bootstrap/aarch32/el2-bootstrap.bin
|
||||
|
||||
For a AArch64 kernel, use this other command line:
|
||||
|
||||
.. code:: shell
|
||||
|
||||
CROSS_COMPILE=aarch64-linux-gnu- make PLAT=rpi3 \
|
||||
BL33=../rpi3-arm-tf-bootstrap/aarch64/el2-bootstrap.bin \
|
||||
all fip
|
||||
BL33=../rpi3-arm-tf-bootstrap/aarch64/el2-bootstrap.bin
|
||||
|
||||
Then, join BL1 and the FIP with the following instructions (replace ``release``
|
||||
by ``debug`` if you set the build option ``DEBUG=1``):
|
||||
|
||||
.. code:: shell
|
||||
|
||||
cp build/rpi3/release/bl1.bin bl1.pad.bin
|
||||
truncate --size=131072 bl1.pad.bin
|
||||
cat bl1.pad.bin build/rpi3/release/fip.bin > armstub8.bin
|
||||
|
||||
The resulting file, ``armstub8.bin``, contains BL1 and the FIP in the place they
|
||||
need to be for TF-A to boot correctly. Now, follow the instructions in
|
||||
`Setup SD card`_.
|
||||
The build system concatenates BL1 and the FIP so that the addresses match the
|
||||
ones in the memory map. The resulting file is ``armstub8.bin``, located in the
|
||||
build folder (e.g. ``build/rpi3/debug/armstub8.bin``). Now, follow the
|
||||
instructions in `Setup SD card`_.
|
||||
|
||||
The following build options are supported:
|
||||
|
||||
|
|
|
@ -54,6 +54,26 @@ else
|
|||
TF_CFLAGS_aarch64 += -mtune=cortex-a53
|
||||
endif
|
||||
|
||||
# Platform Makefile target
|
||||
# ------------------------
|
||||
|
||||
RPI3_BL1_PAD_BIN := ${BUILD_PLAT}/bl1_pad.bin
|
||||
RPI3_ARMSTUB8_BIN := ${BUILD_PLAT}/armstub8.bin
|
||||
|
||||
# Add new default target when compiling this platform
|
||||
all: armstub
|
||||
|
||||
# This target concatenates BL1 and the FIP so that the base addresses match the
|
||||
# ones defined in the memory map
|
||||
armstub: bl1 fip
|
||||
@echo " CAT $@"
|
||||
${Q}cp ${BUILD_PLAT}/bl1.bin ${RPI3_BL1_PAD_BIN}
|
||||
${Q}truncate --size=131072 ${RPI3_BL1_PAD_BIN}
|
||||
${Q}cat ${RPI3_BL1_PAD_BIN} ${BUILD_PLAT}/fip.bin > ${RPI3_ARMSTUB8_BIN}
|
||||
@${ECHO_BLANK_LINE}
|
||||
@echo "Built $@ successfully"
|
||||
@${ECHO_BLANK_LINE}
|
||||
|
||||
# Build config flags
|
||||
# ------------------
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue