RNX-RZV2N-SMARC Programming Images: Difference between revisions
Initial creation |
Fix wrong image name in "bmaptool copy" |
||
| Line 224: | Line 224: | ||
== Write Linux Kernel and RootFS to a uSD card == | == Write Linux Kernel and RootFS to a uSD card == | ||
The simplest way to write Linux Kernel and RootFS to a SD card is using the bmaptool:<br> | The simplest way to write Linux Kernel and RootFS to a SD card is using the bmaptool:<br> | ||
$ sudo bmaptool copy tmp/deploy/images/rnx- | $ sudo bmaptool copy tmp/deploy/images/rnx-rzv2n-smarc/copy core-image-weston-rnx-rzv2n-smarc.rootfs.wic.gz /dev/sdX | ||
== Boot log == | == Boot log == | ||
Latest revision as of 16:01, 29 May 2026

Overview
For a complete Linux System, the CPU Module RNX-RZV2N-SMARC requires the following images:
- Boot Loader stage 2 (BL2) Trusted Boot Firmware with boot parameters block
- Boot Loader stage 3-1 (BL3-1) EL3 Runtime Firmware
- U-BOOT
- Linux Kernel with Device Tree Blob
- RootFS - root file system
The bootloaders (BL2, BL3 and U-BOOT) and the Linux Kernel can be programmed on the QSPI Flash or on the eMMC.
The RoorFS can be programmed on the eMMC or on a SD card (J14 on the carrier board).
After successful YOCTO building, all these images are available in tmp/deploy/images/rnx-rzv2n-smarc:
| Image | Description |
|---|---|
| bl2_bp_spi-rnx-rzv2n-smarc.bin bl2_bp_spi-rnx-rzv2n-smarc.srec |
Boot Loader stage 2 (BL2) + boot parameters block |
| fip-rnx-rzv2n-smarc.bin fip-rnx-rzv2n-smarc.srec |
Boot Loader stage 3-1 + U-BOOT |
| Image-rnx-rzv2n-smarc.bin | Linux Kernel |
| rnx-rzv2n-smarc.dtb | Linux Device Tree Blob |
| core-image-weston-rnx-rzv2n-smarc.rootfs.ext4 | Root File System |
| core-image-weston-rnx-rzv2n-smarc.rootfs.wic.gz | Partitioned Image containing everything |
Alternatively, for development purpose, the images can be built standalone:
The images can be programmed using the PEEDI JTAG Flash Programmer.
Setting Boot mode
On the carrier board, set the boot mode to "SCIF Download mode".
| J4, pin 1-2 | J4, pin 3-4 | |
|---|---|---|
| SCIF Download mode | open | open |
| QSPI Boot mode | close | open |
| eMMC Boot mode | open | close |
Programming BL2, BL31 and U-BOOT
Programming QSPI Flash using PEEDI JTAG Flash Programmer
PEEDI should be configured to use the rzv2n.cfg configuration file.
PEEDI - Powerful Embedded Ethernet Debug Interface Copyright (c) 2005-2025 www.ronetix.at - All rights reserved Hw:1.2, Fw:25.12.1071, SN: PD-0000-0B6B-301F ------------------------------------------------------------ peedi> ++ info: opening file 'tftp://192.168.3.5/rzv2n.cfg' ++ info: loading file 'tftp://192.168.3.5/rzv2n.cfg'... ++ info: done, loaded 2111 meaningful bytes. ++ info: opening file 'eep:license.txt' ++ info: loading file 'eep:license.txt'... ++ info: done, loaded 534 meaningful bytes. ++ info: Wakeup 20 ms ++ info: Target Vref = 1.72V ++ info: RESET and TRST asserted ++ info: TRST released ++ info: RESET released ++ info: wait 200 ms ++ info: BYPASS check passed, 1 TAP controller(s) detected ++ info: TAP: IDCODE = 0x6BA00477, Cortex-ARMv8 ++ info: TAP 0: requesting Debug and System power-up (CDBGPWRUPREQ, CSYSPWRUPREQ) ++ info: core 0: using APB port 0 ++ info: core 0: Found VFP and NEON features ++ info: core 0: stopped by user request, PC=0x0000000000005578, CPSR=0x400003CD ++ info: core 0: Cortex-A55, CPUID = 0x412FD050 ++ info: core 0: connected ++ info: core 0: initialized
- Check the QSPI Flash:
rzg2> flash info
++ info: Testing workspace at 0x08000000, size 33024 ... done.
FLASH configuration for core #0:
CPU: RENESAS_RZV
Device: AT25QL128 ID: 1F 42 18 1F
3-BYTE command set, Normal Read
Chip size: 16 MB
Write chunk size: 256 bytes
Erase chunk size: 64 KB
FLASH commands default parameters:
flash read 0x00000000 0x01000000
flash blank 0x00000000 0x01000000
flash erase 0x00000000 0x01000000
flash lock 0x00000000 0x01000000
flash unlock 0x00000000 0x01000000
flash query 0x00000000 0x01000000
flash program bl2_bp-rnx-rzv2n-smarc.bin bin 0x00000000
flash verify bl2_bp-rnx-rzv2n-smarc.bin bin 0x00000000
- Erase first two MBs of the QSPI Flash
rzg2> flash erase 0 1024*1024*2 erasing at 0x00000000 (block #0) erasing at 0x00010000 (block #1) erasing at 0x00020000 (block #2) erasing at 0x00030000 (block #3) erasing at 0x00040000 (block #4) erasing at 0x00050000 (block #5) erasing at 0x00060000 (block #6) erasing at 0x00070000 (block #7) erasing at 0x00080000 (block #8) erasing at 0x00090000 (block #9) erasing at 0x000A0000 (block #10) erasing at 0x000B0000 (block #11) erasing at 0x000C0000 (block #12) erasing at 0x000D0000 (block #13) erasing at 0x000E0000 (block #14) erasing at 0x000F0000 (block #15) erasing at 0x00100000 (block #16) erasing at 0x00110000 (block #17) erasing at 0x00120000 (block #18) erasing at 0x00130000 (block #19) erasing at 0x00140000 (block #20) erasing at 0x00150000 (block #21) erasing at 0x00160000 (block #22) erasing at 0x00170000 (block #23) erasing at 0x00180000 (block #24) erasing at 0x00190000 (block #25) erasing at 0x001A0000 (block #26) erasing at 0x001B0000 (block #27) erasing at 0x001C0000 (block #28) erasing at 0x001D0000 (block #29) erasing at 0x001E0000 (block #30) erasing at 0x001F0000 (block #31) ++ info: successfully erased 2 MB in 11.05 sec
- Program BL2
rzg2> flash program bl2_bp-rnx-rzv2n-smarc.bin 0
++ info: Testing workspace at 0x08000000, size 33024 ... done.
++ info: Programming image file: tftp://192.168.3.5/bl2_bp-rnx-rzv2n-smarc.bin
++ info: Programming using agent, buffer = 29952 bytes
++ info: At absolute address: 0x00000000
programming at 0x00000000
programming at 0x00007500
programming at 0x0000EA00
programming at 0x00015F00
programming at 0x0001D400
++ info: successfully programmed 122.03 KB in 1.81 sec
- Program BL31+U-BOOT
rzg2> flash program fip-rnx-rzv2n-smarc.bin 0x60000
++ info: Testing workspace at 0x08000000, size 33024 ... done.
++ info: Programming image file: tftp://192.168.3.5/fip-rnx-rzv2n-smarc.bin
++ info: Programming using agent, buffer = 29952 bytes
++ info: At absolute address: 0x00060000
programming at 0x00066600
programming at 0x0006DB00
programming at 0x00075000
programming at 0x0007C500
programming at 0x00083A00
programming at 0x0008AF00
programming at 0x00092400
programming at 0x00099900
programming at 0x000A0E00
programming at 0x000A8300
programming at 0x000AF800
programming at 0x000B6D00
programming at 0x000BE200
programming at 0x000C5700
programming at 0x000CCC00
programming at 0x000D4100
programming at 0x000DB600
programming at 0x000E2B00
programming at 0x000EA000
programming at 0x000F1500
programming at 0x000F8A00
programming at 0x000FFF00
programming at 0x00107400
programming at 0x0010E900
programming at 0x00115E00
programming at 0x00060000
programming at 0x0011D300
++ info: successfully programmed 770.93 KB in 10.72 sec
Write Linux Kernel and RootFS to a uSD card
The simplest way to write Linux Kernel and RootFS to a SD card is using the bmaptool:
$ sudo bmaptool copy tmp/deploy/images/rnx-rzv2n-smarc/copy core-image-weston-rnx-rzv2n-smarc.rootfs.wic.gz /dev/sdX
Boot log
- Select QSPI Boot mode and reset the board:
http://download.ronetix.at/boards/doc/RNX-RZV2N-SMARC/rnx-rzv2n-smarc_bootlog.txt
See also