RNX-RZV2N-SMARC Programming Images: Difference between revisions

From Ronetix's Wiki
Jump to navigation Jump to search
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-rzg2ul-osm/core-image-bsp-rnx-rzg2ul-osm.wic.gz /dev/sdX
  $ 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