From eLinux.org
< R-Car
Revision as of 08:23, 7 December 2017 by Marex (talk | contribs)
Jump to: navigation, search


This is the Wiki for the U-Boot on Renesas R-Car Gen3 SoCs and boards . Refer to the R-Car page for information about Renesas' R-Car SoC family.

Supported boards

As of U-Boot 2018.01-rc1, the following boards are supported:

Supported boards in U-Boot 2018.01-rc1
Board U-Boot defconfig Update procedure
R8A7795 H3 ULCB r8a7795_ulcb_defconfig Flashing firmware
R8A7796 M3 ULCB r8a7796_ulcb_defconfig Flashing firmware
R8A7795 H3 Salvator-X ES2.0+ r8a7795_salvator-x_defconfig N/A
R8A7796 M3 Salvator-X r8a7796_salvator-x_defconfig N/A


  • RCar R8A7795 H3 ES1.x is NOT supported!
  • Running mainline U-Boot is only supported with IPL/ATF/BL revision 2.23 and newer.
  • ARM cross-compiler is mandatory to build U-Boot (OpenEmbedded generates this for you).

ARM cross-compiler

If you intend to build both IPL/ATF/BL and U-Boot using OpenEmbedded with meta-renesas layer, you can skip this step.

Debian and Ubuntu includes an ARM cross-compiler in its standard package feed. You can install it as follows:

apt-get install gcc-aarch64-linux-gnu

Other distributions likely also provide ARM cross-compilers. Consult distro-specific documentation for details.

Obtain U-Boot sources

The preferred method of obtaining U-Boot sources is through git VCS, using git protocol:

git clone git://git.denx.de/u-boot.git

or via HTTP:

git clone http://git.denx.de/u-boot.git

Finally, check out the version of U-Boot that will be used for the build:

cd u-boot
git checkout -b my_working_branch v2018.01-rc1

git hosting also provides snapshots.

Prepare build environment

Before building U-Boot for RCar Gen3 system, the following environment variables need to be configured:

export ARCH=arm64
export CROSS_COMPILE=aarch64-linux-gnu-

The later variable must match the prefix of the Aarch64 cross-toolchain installed on your system, the example above is valid for Debian and Ubuntu,

Build U-Boot

To produce u-boot-elf.srec file during U-Boot build, a patch [1] must first be applied:

git am 0001-Makefile-add-u-boot-elf.srec-if-CONFIG_REMAKE_ELF-is.patch

or in case U-Boot snapshot was used:

patch -Np1 -i 0001-Makefile-add-u-boot-elf.srec-if-CONFIG_REMAKE_ELF-is.patch

Then the U-Boot sources must be configured for a particular platform