Personal tools

Writing VisionSOM-x2L system image to eMMC memory

From SomLabs Wiki

Revision as of 11:06, 13 October 2023 by KrzysztofChojnowski (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Writing system image to VisionSOM-x2L eMMC memory


Prerequisites

  • Extracted wic system image (somlabs-image-visionsom-x2l-cb.wic) - to flash Linux system image
  • First stage loader binary (bl2_bp-visionsom-x2l-cb.bin) - to flash u-boot bootloader
  • U-boot bootloader binary (fip-visionsom-x2l-cb.bin) - to flash first stage loader

All of these files can be found in the Yocto build subdirectory tmp/deploy/images/visionsom-x2l-cb/. The x2l suffix in all names should be changed to g2l of v2l depending on used module variant.

The files should be located on a USB flash drive formatted as a single FAT32 partition.

The programming process may include only one of the mentioned files. In this case only the corresponding file - image, u-boot or loader should be present on the USB flash storage.

Programming eMMC

  • Power-on the board with serial console connected to PC (Console uUSB port on VisionCB-G2L/V2L-STD): bitrate 115200, 8N1, no parity.
  • Stop u-boot booting during counting by pressing any key in the terminal.
  • Connect the flash USB drive to USB0 port on VisionCB-G2L/V2L-STD board.
  • Execute run usbflash command.

The programming procedure will look for one or more of the files to update (image, u-boot, loader) and flash its content to the eMMC memory.

Recovering u-boot or loader

In case u-boot could not be loaded there exists a recovery solution to write the first stage loader and u-boot using the processor ROM firmware. The recovery process may be done using two different methods - using SoMLabs or Renesas tools.

Recovery with SoMLabs tools

Required files

Recovery process

Before starting boot partition programming, the VisionCB-G2L/V2L-STD board should be connected to host PC using Console port and the RECOVERY pins should be connected together with a jumper.

The rzx2l-loader repository contains scripts that help with programming the boot partition on the eMMC memory of VisionSOM-x2L modules. After downloading the sources from github page (https://github.com/SoMLabs/rzx2l-loader) the programming script can be called:

./rzx2l-loader.py -p <serial port> -l <loader>  --image <boot image>

After he script finishes writing the whole boot partition the RECOVERY jumper pins should be disconnected and the board can be reset.

Recovery with Renesas tools

Required files

  • Flash loader application: Renesas_recovery_flash_writer.zip
  • Loader S-record file: bl2_bp-visionsom-x2l-cb.srec (change the x2l name to g2l or v2l)
  • U-boot S-record file: fip-visionsom-x2l-cb.srec (change the x2l name to g2l or v2l)

Recovery process

  • Open the serial terminal application that allows for file transmission in ascii format.
  • Power-on the board with connected RECOVERY jumper and serial console connected to PC (Console uUSB port on VisionCB-G2L/V2L-STD): bitrate 115200, 8N1, no parity.
  • Send the Flash_Writer_SCIF_VSOM_x2L_1GB_DDR4_1GB_1PCS.mot file (change the x2L name to G2L or V2L).
  • Use EM_W command to send bl2_bp-visionsom-x2l-cb.srec file
    • Area: 1, Start Address: 1, Program Start Address: 11E00
  • Use EM_W command to send fip-visionsom-x2l-cb.srec file
    • Area: 1, Start Address: 100, Program Start Address: 0