Personal tools

Difference between revisions of "How to write image to VisionSOM-6ULL NAND/eMMC using UUU tool on Windows"

From SomLabs Wiki

Jump to: navigation, search
(Information)
(Blanked the page)
 
(13 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{PageHeader|How to write image to VisionSOM-6ULL NAND/eMMC using UUU tool on Windows}}
 
== Prerequisites ==
 
  
* PC with Microsoft Windows 10 64-bit OS
 
* A complete package with NXP UUU application
 
* u-boot-dtb.imx/vsom-6ull-fb.bin - u-boot binary file to be programmed into traget
 
* rootfs.ubi - root file system image
 
 
== Information ==
 
* SOMLABS solution is based on NXP UUU tool, with some extensions added on top of it to easly handle SOMLABS boards.
 
* You can use different file names than default (u-boot-dtb.imx,rootfs.ubi) - this is just an example.
 
* Please note also, that file can be located in any directory - you need to specify complete file path then.
 
* If you are using VisionSOM module with i.MX6UL processor, please change in commands given below '6ull' to '6ul'
 
* Default NAND paritions layout for 4M boot variant (remaining NAND area is used for root file system by default):
 
[[File:VCB_UUU_flasher_NAND_map.png|center|200px]]
 
 
 
*
 
 
== Preparing ==
 
For programming a memory of VisionSOM-6ULL, switch boot selector to mode: SERIAL.
 
{| class="wikitable"
 
! colspan="2" style="text-align: center; font-weight: bold;" | BOOTx
 
! rowspan="2" style="text-align: center; font-weight: bold;" | Boot Mode
 
|-
 
| BOOT1
 
| BOOT0
 
|-
 
| 1
 
| 1
 
|Reserved
 
|-
 
| 1
 
| 0
 
|Internal
 
|-
 
|'''0
 
|'''1
 
|'''Serial
 
|-
 
| 0
 
| 0
 
|Fuses
 
|}
 
 
Connect the VisionCB-STD board to the host PC using microUSB cable connected to the USB-OTG connector. To observe progress/error reports during programming, please use serial console. If you are using standard VisionSOM carrier board, this can be done by using build in serial/usb converter.
 
 
== Programming board with eMMC/uSD card ==
 
Flasher does not assume any specific partitions layout. It simply takes raw image of eMMC/SD card and writes it into the storage.
 
 
For image programing, use command:
 
<pre>uuu.exe -b vsom_6ull_emmc_flasher sdcard.img</pre>
 
while: sdcard.img - raw image of SD card or eMMC memory
 
 
At the command prompt, a progress bar will appear:
 
[[File:VCB_UUU_flashing_progress_bar.png|center|700px]]
 
 
The serial terminal output will look like this:
 
<pre>U-Boot 2018.03-00022-g23f402fe9c-dirty (May 27 2019 - 23:52:18 +0200)
 
 
CPU:  Freescale i.MX6ULL rev1.0 792 MHz (running at 396 MHz)
 
CPU:  Industrial temperature grade (-40C to 105C) at 50C
 
Reset cause: POR
 
Model: SoMLabs VisionSOM-6ULL
 
Board: SomLabs VisionSOM-6ULL
 
DRAM:  512 MiB
 
board_fix_fdt(): boot device: 7, fdt@8789ed8c
 
fdt_enable_by_ofname(): enabling node [/soc/aips-bus@02100000/qspi@021e0000] @00                                                                                                                                00641C...result: 0
 
fdt_enable_by_ofname(): enabling node [/soc/aips-bus@02100000/usdhc@02194000] @0                                                                                                                                0005950...result: 0
 
board_fix_fdt(): configuring USDHC2 for SD mode
 
board_fix_fdt(): offset: 00005950, status 0
 
NAND:  MXS NAND: clock is disabled!
 
0 MiB
 
MMC:  FSL_SDHC: 0
 
No panel detected: default to SL-TFT7-TP
 
Display: SL-TFT7-TP (800x480)
 
Video: 800x480x24
 
Error (-2): cannot determine file size
 
In:    serial
 
Out:  serial
 
Err:  serial
 
board_late_init()
 
flash target is MMC:0
 
Fastboot: Normal
 
Boot from USB for uuu
 
Hit any key to stop autoboot:  0
 
switch to partitions #0, OK
 
mmc0 is current device
 
Starting download of 16776232 bytes
 
..........................................................................
 
.....................................................
 
downloading of 16776232 bytes finished
 
writing to partition 'all'
 
sparse flash target is mmc:0
 
writing to partition 'all' for sparse, buffer size 16776232
 
Flashing sparse image at offset 0
 
Flashing Sparse Image
 
........ wrote 16776192 bytes to 'all'
 
Starting download of 16776244 bytes
 
..........................................................................
 
.....................................................
 
downloading of 16776244 bytes finished
 
writing to partition 'all'
 
sparse flash target is mmc:0
 
writing to partition 'all' for sparse, buffer size 16776244
 
Flashing sparse image at offset 0
 
Flashing Sparse Image
 
........ wrote 16776192 bytes to 'all'
 
 
 
(...)
 
 
 
downloading of 16776244 bytes finished
 
writing to partition 'all'
 
sparse flash target is mmc:0
 
writing to partition 'all' for sparse, buffer size 16776244
 
Flashing sparse image at offset 0
 
Flashing Sparse Image
 
........ wrote 16776192 bytes to 'all'
 
Starting download of 8396852 bytes
 
................................................................
 
downloading of 8396852 bytes finished
 
writing to partition 'all'
 
sparse flash target is mmc:0
 
writing to partition 'all' for sparse, buffer size 8396852
 
Flashing sparse image at offset 0
 
Flashing Sparse Image
 
........ wrote 8396800 bytes to 'all'
 
resetting ...
 
</pre>
 
 
If the process ends with success, a property information will show on the command prompt:
 
[[File:VCB_UUU_flashing_done.png|center|600px]]
 
 
The SoM will not boot due to present boot selector setup. Revert the boot selector back to: INTERNAL and press RESET. The board should start booting.
 
 
== Programming board with NAND Flash ==
 
 
For memory programing, use command:
 
<pre>uuu.exe -b vsom_6ull_nand_flasher vsom-6ull-fb.bin rootfs.ubi</pre>
 
while: vsom-6ull-fb.bin - u-boot binaries; rootfs.ubi - user root filesystem
 
 
At the command prompt, a progress bar will appear:
 
[[File:VCB_UUU_flashing_progress_bar_NAND.png|center|900px]]
 
 
The serial terminal output will look like this:
 
<pre>U-Boot 2018.03-00022-g23f402fe9c-dirty (May 27 2019 - 23:52:18 +0200)
 
 
CPU:  Freescale i.MX6ULL rev1.0 792 MHz (running at 396 MHz)
 
CPU:  Industrial temperature grade (-40C to 105C) at 49C
 
Reset cause: POR
 
Model: SoMLabs VisionSOM-6ULL
 
Board: SomLabs VisionSOM-6ULL
 
DRAM:  512 MiB
 
board_fix_fdt(): boot device: 14, fdt@8789ed8c
 
fdt_enable_by_ofname(): enabling node [/soc/gpmi-nand@01806000] @00001080...result: 0
 
SomLabs VisionSOM-6ULL - configuring NAND interface...
 
NAND:  512 MiB
 
MMC:
 
No panel detected: default to SL-TFT7-TP
 
Display: SL-TFT7-TP (800x480)
 
Video: 800x480x24
 
Attempt to read outside the flash area
 
In:    serial
 
Out:  serial
 
Err:  serial
 
board_late_init()
 
Fastboot: Normal
 
Boot from USB for uuu
 
Hit any key to stop autoboot:  0
 
Starting download of 687104 bytes
 
.....
 
downloading of 687104 bytes finished
 
imxkobs: Image header:
 
    header: 402000D1
 
boot_data: 877FF420
 
  dcd_addr: 877FF42C
 
      self: 877FF400
 
      csf: 00000000
 
boot_data@ 80800020
 
    start: 877FF000
 
    length: 000A8000
 
do_imxkobs(): max_boot_stream_size_in_bytes = 1048576, boot_stream_size_in_bytes = 688128, boot_stream_size_in_pages = 168
 
do_imxkobs(): fw#1 0x00100000 - 0x00200000 (0x001a8000)
 
do_imxkobs(): fw#2 0x00200000 - 0x00300000 (0x002a8000)
 
do_imxkobs(): fcb checksum: FFFFFA7E
 
do_imxkobs(): erasing boot area...
 
do_imxkobs(): writing firmware image copy 1...
 
do_imxkobs(): writing firmware image copy 2...
 
do_imxkobs(): writing DBBT header...
 
do_imxkobs(): writing DBBT data...
 
do_imxkobs(): writing FCB...
 
  writing fcb[0] @ 00000000
 
  writing fcb[1] @ 00080000
 
do_imxkobs(): done
 
Starting download of 47185920 bytes
 
..........................................................................
 
..........................................................................
 
..........................................................................
 
..........................................................................
 
................................................................
 
downloading of 47185920 bytes finished
 
 
NAND erase.part: device 0 offset 0x400000, size 0x1fc00000
 
Skipping bad block at  0x1ff00000
 
Skipping bad block at  0x1ff40000
 
Skipping bad block at  0x1ff80000
 
Skipping bad block at  0x1ffc0000
 
 
OK
 
 
NAND write: device 0 offset 0x400000, size 0x2d00000
 
47185920 bytes written: OK
 
resetting ...
 
 
</pre>
 
 
If the process ends with success, a property information will show on the command prompt:
 
[[File:VCB_UUU_flashing_done_NAND.png|center|800px]]
 
 
The SoM will not boot due to present boot selector setup. Revert the boot selector back to: INTERNAL and press RESET. The board should start booting.
 
 
== Splash screen ==
 
Prepare spalsh image - maximum size is 800x480px (equal to screen resolution), bpp shall be 24bit or 8-bit with pallete.
 
Image shall be stored as .bmp file. Please ensure that file size is smaller than 1MB.
 
=== Flashing splash screen to eMMC ===
 
There is no need to perform any additional step to program custom splash image - for applying a splash screen, simply put prepared 'splash.bmp' file into '/boot' directory of the root file system. Please ensure if u-boot on your SD card image supports splash screen displaying.
 
 
=== Flashing splash screen to NAND ===
 
Run command:
 
<pre>uuu.exe -b vsom_6ull_nand_splash splash.bmp</pre>
 
 
Be aware if any of erase blocks in 'splash' partiton are bad, then max. size of splash screen will be smaller. To meet size limit, it is possible to compress bitmap file with gzip and write compressed file to NAND.
 

Latest revision as of 01:38, 1 July 2019

NXP Partner ST Partner Renesas Partner