openSUSE:Imx usb loader

Jump to: navigation, search

Introduction: iMX USB loader

The iMX USB loader is a utility that allows to download and execute code on Freescale i.MX5/i.MX6 and Vybrid SoCs through the Serial Download Protocol (SDP). Depending on the board, there is usually some kind of recovery button to bring the SoC into serial download boot mode, check documentation of your hardware.

The utility support USB and UART as serial link. It is available here: http://software.opensuse.org/package/imx-usb-loader?search_term=imx-usb-loader


Usage

This tool is mainly used to load u-boot in RAM and then perform a first flash (or a 2nd flash if you brick your board).

USB

Firstly, connect your host PC to your device. Then, boot on USB mode (depending on your board). Finally, load your u-boot image to the device RAM and boot on it:

 imx_usb u-boot.imx

Then, you should see somthing like:

 config file </etc/imx-loader.d/imx_usb.conf>
 vid=0x066f pid=0x3780 file_name=mx23_usb_work.conf
 vid=0x15a2 pid=0x004f file_name=mx28_usb_work.conf
 vid=0x15a2 pid=0x0052 file_name=mx50_usb_work.conf
 vid=0x15a2 pid=0x0054 file_name=mx6_usb_work.conf
 vid=0x15a2 pid=0x0061 file_name=mx6_usb_work.conf
 vid=0x15a2 pid=0x0063 file_name=mx6_usb_work.conf
 vid=0x15a2 pid=0x0041 file_name=mx51_usb_work.conf
 vid=0x15a2 pid=0x004e file_name=mx53_usb_work.conf
 vid=0x15a2 pid=0x006a file_name=vybrid_usb_work.conf
 vid=0x066f pid=0x37ff file_name=linux_gadget.conf
 config file </etc/imx-loader.d/mx6_usb_work.conf>
 parse /etc/imx-loader.d/mx6_usb_work.conf
 15a2:0054(mx6_qsb) bConfigurationValue =1
 Interface 0 claimed
 HAB security state: development mode (0x56787856)
 == work item
 filename /tmp/boot/u-boot.imx
 load_size 0 bytes
 load_addr 0x00000000
 dcd 1
 clear_dcd 0
 plug 1
 jump_mode 2
 jump_addr 0x00000000
 == end work item
 main dcd length 310
 sub dcd length 30c
 
 loading binary file(/tmp/boot/u-boot.imx) to 177ff400, skip=0, fsize=62c00 type=aa
 
 <<<404480, 404480 bytes>>>
 succeeded (status 0x88888888)
 jumping to 0x177ff400

U-Boot is now loaded and you should have access to it on your serial port as usual. Use U-Boot to (re)flash your board.

UART

Firstly, connect your host PC to your device. Then, boot on UART mode (depending on your board). Finally, load your u-boot image to the device RAM and boot on it:

 imx_uart /dev/ttyUSB0 vybrid_usb_work.conf u-boot.imx


See also

openSUSE:Fastboot_tool