Flash images on Renesas R-Car S4¶
To flash AutoSD onto your R-Car S4 board, install the Renesas boot firmware and the Arm Embedded Base Boot Requirements (EBBR)-compliant U-Boot firmware, then flash an AutoSD EBBR image onto the board.
Install the boot firmware¶
To install the boot firmware for the R-Car S4, download and install the Renesas boot firmware files and the CentOS Stream Automotive Special Interest Group (SIG) board support U-Boot firmware from COPR.
Get the Renesas firmware¶
To install the boot firmware for the R-Car S4, download the latest startup guide, Tera Term macros, and boot firmware files from the R-Car S4 support page. These files are on the Software and Tools tab and require login credentials from Renesas.
Prerequisites
- Access to the Renesas R-Car S4 support page
- A serial console connection to the R-Car S4 board (see the Renesas Startup Guide for serial port setup)
- A workstation PC configured with a TFTP server
- A network connection between the PC and the R-Car S4 board
Procedure
-
From the Software and Tools tab on the R-Car S4 support page, download and extract the latest R-Car S4 SDK Start-Up Guide archive. The archive contains the startup guide PDF and the
teratermmacrofolder. -
Download and extract the latest R-Car S4 SDK Linux PKG with GCC compiler archive.
-
Extract the outer archive to find the inner
rcar-xos_sdk1-gateway_*_release.tar.gzfile. -
Extract the inner archive. The boot firmware is in the
rcar-xos/<version>/os/bootloader/s4directory.
-
-
To install the firmware, follow the instructions in “How to flash images” in the startup guide PDF.
Install the EBBR-compliant U-Boot firmware¶
Install the EBBR-compliant U-Boot firmware from the
uboot-tools board support package.
This U-Boot version includes EFI boot support, which you configure during installation
to boot AutoSD from the EFI System Partition.
Procedure
-
Navigate to the latest
uboot-toolsbuild directory for your aarch64 system version, and download the latestuboot-images-armv8-<version>.noarch.rpmfile from the from the board support package builds. -
Extract the
u-boot.binfile from the RPM file:The R-Car S4 Spider binary is at
./usr/share/uboot/r8a779f0_spider/u-boot.bin. -
Place the
u-boot.binfile on the TFTP server.
¶
-
Connect port 1 of the three ports on the Ethernet subboard.
Note
Identify port 1 from the printed circuit board (PCB) label (silkscreen) next to the connector. Of the three connectors labeled CN101, CN201, and CN301, port 1 is CN101. When you examine the RJ45 connector side of the board, port 1 is located further from the other two ports and on the right.
-
Turn on the board and press any key during the U-Boot autoboot countdown to enter the U-Boot command line. If the board has an existing U-Boot, configure a temporary network configuration:
setenv ethaddr <xx:xx:xx:xx:xx:xx> setenv ipaddr <board_ip_address> setenv serverip <tftp_server_ip_address>Where:
<xx:xx:xx:xx:xx:xx>is the MAC address from the sticker attached to the Ethernet connector.<board_ip_address>is the IP address of the S4 board.<tftp_server_ip_address>is the IP address of the PC hosting the TFTP server.
-
Load the
u-boot.binfile and write it to flash memory:mmc dev 0 1 mw.b 0x48000000 0 40000 tftp 0x48000000 u-boot.bin mmc write 0x48000000 7C00 <block_count>Where:
mmc dev 0 1selects eMMC device 0, boot hardware partition 1.mw.b 0x48000000 0 40000clears 256 KiB of memory at the load address to ensure no residual data interferes with the firmware binary.tftp 0x48000000 u-boot.bindownloads the U-Boot binary from the TFTP server into memory.mmc write 0x48000000 7C00 <block_count>writes the binary from memory to the eMMC boot partition at the required offset.
Important
Calculate the
<block_count>from the file size reported by thetftpcommand. Divide the file size in bytes by 512 and round up to get the number of blocks. For example, iftftpreports a file size of0xC8430bytes (820,272 bytes), the block count is0x643(1603 blocks). -
Configure U-Boot to boot AutoSD from the EFI System Partition:
setenv boot_uki 'fatload mmc 0:1 ${loadaddr} /EFI/BOOT/BOOTAA64.EFI && bootefi ${loadaddr} ${fdt_addr}' setenv bootcmd 'run boot_uki' saveenvWhere:
boot_ukidefines a command that loads the Unified Kernel Image (UKI) from the EFI System Partition and boots it by using the UEFI boot stub.bootcmdsets the default boot command that U-Boot runs automatically after the countdown.saveenvpersists the environment variables to eMMC so they survive reboots.
-
Reboot the board by using the
resetcommand. -
Verify that the U-Boot
versioncommand returns a version matching the RPM release (for example,U-Boot 2025.07-2.fc43).
Install the AutoSD image¶
To flash AutoSD onto your R-Car S4 board, download a prebuilt EBBR image or build a custom image.
The R-Car S4 uses the generic ebbr Automotive Image Builder target, which produces a standardized, hardware-agnostic image that boots on any
EBBR-compliant board.
Prerequisites
- Installed and functional boot firmware, including the EBBR-compliant U-Boot
- A workstation PC configured with a TFTP server
- A network connection between the PC and the R-Car S4 board
Download a prebuilt AutoSD image¶
Download the latest prebuilt AutoSD 10 EBBR image from the AutoSD nightly image repository. These images comply with the Arm Embedded Base Boot Requirements (EBBR) specification and are updated nightly.
-
Identify the latest nightly EBBR image:
-
Download the image and its checksum file from the Automotive SIG nightly builds repository:
-
Verify the download integrity:
-
Recompress the
.raw.xzarchive in the gzip format that the U-Bootgzwritecommand requires:
Next steps
Build a custom image¶
To build custom AutoSD images, use the automotive-image-builder tool. See
Installing Automotive Image Builder
for installation instructions.
Prerequisites
- A Fedora, CentOS, or RHEL system running on an AArch64 architecture
- Podman
- Automotive Image Builder installed as an RPM or run as a container
- A custom manifest in the
.aib.ymlformat
Procedure
-
Build a disk image for R-Car S4 using the
ebbrtarget, replacing<manifest>with your custom Automotive Image Builder manifest file:$ aib-dev build \ --distro autosd10 \ --target ebbr \ <manifest>.aib.yml \ autosd10-ebbr-rcar-s4.aarch64.imgNote
If you do not have your own manifest file, you can build an AutoSD image by using the example manifest file from
sample-images. -
Compress the image in the gzip format that the U-Boot
gzwritecommand requires for transfer to the board.
Next steps
Additional resources
Flash the image¶
To flash the AutoSD image onto your R-Car S4, transfer the gzip-compressed image to the board over TFTP and write it to the eMMC storage through the U-Boot command line.
The U-Boot gzwrite command decompresses a gzip stream and writes the raw image data
directly to the eMMC device. Because the raw image is larger than the board’s available RAM,
gzip compression is required for transfer.
Prerequisites
- A gzip-compressed prebuilt or custom AutoSD EBBR image (
.gz) - A workstation PC configured with a TFTP server
- A network connection between the PC and the R-Car S4 board
Procedure
- Place the
.gzimage file onto your TFTP server.
¶
-
Connect port 1 of the three ports on the Ethernet subboard.
Note
Identify port 1 from the printed circuit board (PCB) label (silkscreen) next to the connector. Of the three connectors labeled CN101, CN201, and CN301, port 1 is CN101. When you examine the RJ45 connector side of the board, port 1 is located further from the other two ports and on the right.
-
Turn on the board and press any key during the U-Boot autoboot countdown to enter the U-Boot command line.
-
Verify that the board acquires a network address from the DHCP server. The EBBR-compliant U-Boot automatically configures networking by using DHCP.
If your network does not provide DHCP, configure a static IP address:
Note
The EBBR-compliant U-Boot reads the MAC address (
ethaddr) from the board hardware automatically. Unlike the firmware installation procedure, you do not need to setethaddrmanually. -
Download the compressed image file to memory:
Note
The load address
0x480000000is the start of the upper DDR memory bank on the R-Car S4, which provides a contiguous 2 GiB buffer for the compressed image. This is a different address from0x48000000used for the smaller U-Boot binary. -
Write the image to the MMC device:
Where:
mmc 0is the eMMC device.0x480000000is the memory address where the compressed image was loaded bytftp.${filesize}is the size of the compressed data, set automatically by thetftpcommand.1000000is the write buffer size (16 MiB in hex).0is the start offset on the MMC device.
-
Verify that the image was written successfully:
The output should show an EFI System Partition and a root partition.
Boot the image¶
After flashing the image, the U-Boot boot_uki environment variable that you configured during the firmware installation
boots AutoSD from the EFI System Partition on the MMC device.
Procedure
-
After flashing, reset the board by using the
resetcommand. U-Boot runs theboot_ukicommand and boots into AutoSD. -
Log in with the user name
rootand the passwordpassword.
Warning
The default credentials are for initial access to development images only. Change the root password immediately after first login, especially if the board has network connectivity.
Additional resources