mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-17 00:33:06 +00:00
77 lines
2.3 KiB
ReStructuredText
77 lines
2.3 KiB
ReStructuredText
|
.. SPDX-License-Identifier: GPL-2.0+
|
||
|
|
||
|
Renesas RZ/N1
|
||
|
=============
|
||
|
|
||
|
Building
|
||
|
--------
|
||
|
|
||
|
This document describes how to build and flash U-Boot for the RZ/N1.
|
||
|
|
||
|
U-Boot
|
||
|
^^^^^^
|
||
|
|
||
|
Clone the U-Boot repository and build it as follows:
|
||
|
|
||
|
.. code-block:: bash
|
||
|
|
||
|
git clone --depth 1 https://source.denx.de/u-boot/u-boot.git
|
||
|
cd u-boot
|
||
|
make rzn1_snarc_defconfig
|
||
|
make CROSS_COMPILE=arm-linux-gnu-
|
||
|
|
||
|
This produces `u-boot` which is an ELF executable, suitable for use with `gdb`
|
||
|
and JTAG debugging tools.
|
||
|
|
||
|
It also produceds `u-boot.bin` which is a raw binary.
|
||
|
|
||
|
Binman
|
||
|
^^^^^^
|
||
|
|
||
|
The BootROM in the RZ/N1 SoC expects to find the boot image in SPKG format.
|
||
|
This format is documented in Chapter 7.4 of the RZ/N1 User Manual.
|
||
|
|
||
|
The `binman` tool may be used to generate the SPKG format for booting.
|
||
|
See tools/binman/binman.rst for details on this tool and its pre-requisites.
|
||
|
|
||
|
.. code-block:: bash
|
||
|
|
||
|
binman -d arch/arm/dts/r9a06g032-rzn1-snarc.dtb -o <OUT>
|
||
|
|
||
|
This will produce `u-boot.bin.spkg` in the specified <OUT> directory. It can
|
||
|
then be flashed into QSPI, NAND, or loaded via USB-DFU mode.
|
||
|
|
||
|
SPKG image
|
||
|
^^^^^^^^^^
|
||
|
|
||
|
Alternatively, the same SPKG image can be built by calling `mkimage` as follows:
|
||
|
|
||
|
.. code-block:: bash
|
||
|
|
||
|
tools/mkimage -n board/schneider/rzn1-snarc/spkgimage.cfg \
|
||
|
-T spkgimage -a 0x20040000 -e 0x20040000 \
|
||
|
-d u-boot.bin u-boot.bin.spkg
|
||
|
|
||
|
This produces `u-boot.bin.spkg` which can be flashed into QSPI, NAND, or loaded
|
||
|
via USB-DFU mode.
|
||
|
|
||
|
Take note of the load and execution address, which are encoded into the SPKG
|
||
|
headers. For development convenience, mkimage computes the execution offset
|
||
|
(part of the SPKG header) by subtracting the supplied load address from the
|
||
|
supplied execution address.
|
||
|
|
||
|
Also note there are other parameters, notably ECC configuration in the case of
|
||
|
boot from NAND, specified in the `spkgimage.cfg` configuration file.
|
||
|
|
||
|
Flashing
|
||
|
--------
|
||
|
|
||
|
The RZ/N1 is able to boot from QSPI, NAND, or via USB (DFU). In all cases the
|
||
|
on-board BootROM expects for the binary to be wrapped with a "SPKG" header.
|
||
|
|
||
|
It is possible to recover a bricked unit by using the USB (DFU) boot mode. This
|
||
|
allows uploading U-Boot into the internal RAM. Thereafter U-Boot can be used to
|
||
|
program the QSPI and/or NAND, making use of U-Boot dfu mode.
|
||
|
|
||
|
Otherwise the only other option for recovery is via JTAG.
|