-
Notifications
You must be signed in to change notification settings - Fork 20
USB Bring up
ckuethe edited this page Jan 8, 2015
·
8 revisions
Bringing up a fresh USB armory should require nothing more than the USB Armory itself, and an SD card. Here's one attempt to do that.
- Insulate the top of the microsd holder or the back of the board with tape; this is to prevent unwanted contact when opening the holder after the device is powered on
- Ensure that there is no microsd in the Armory.
- Connect the Armory to the host - a short USB extension cable will make this easier
- Wait for the LED to dim, and the host to detect the Armory. It should show up as "SE Blank RITA"
[320196.125577] usb 1-1.2: new high-speed USB device number 68 using ehci-pci
[320196.219456] usb 1-1.2: New USB device found, idVendor=15a2, idProduct=004e
[320196.219466] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[320196.219471] usb 1-1.2: Product: SE Blank RITA
[320196.219476] usb 1-1.2: Manufacturer: Freescale SemiConductor Inc
- Carefully install the the microsd card
- use
imx_usb_loader u-boot.imx
to inject uBoot into the Armory
$ ./imx_usb ../uboot/u-boot.imx
config file <./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 <./mx53_usb_work.conf>
parse ./mx53_usb_work.conf
15a2:004e(mx53) bConfigurationValue =1
Interface 0 claimed
HAB security state: development mode (0xf0f0f0f0)
== work item
filename ../uboot/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 1a0
sub dcd length 19c
loading binary file(../uboot/u-boot.imx) to 777ff400, skip=0, fsize=3ac00 type=aa
<<<240640, 240640 bytes>>>
HAB security state: development mode (0x88888888)
- uBoot is now running, connect to its console
- A [Bus Pirate](../Bus Pirate) will work for the hardware console
- uBoot's usb console
Commits d67b0d97b1 and e6607cffef may serve as an example of how to enable UMS.
Various references on the use of usbtty.
U-Boot 2014.07 (Nov 29 2014 - 16:07:25)
Board: USB armory
I2C: ready
DRAM: 512 MiB
MMC: FSL_SDHC: 0, FSL_SDHC: 1
Card did not respond to voltage select!
MMC init failed
Using default environment
In: serial
Out: serial
Err: serial
Net: CPU Net Initialization Failed
No ethernet found.
Hit any key to stop autoboot: 0
Card did not respond to voltage select!
** Bad device mmc 0 **
Card did not respond to voltage select!
** Bad device mmc 0 **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
=> mmc info
=> mmc info
Device: FSL_SDHC
Manufacturer ID: 3
OEM: 5344
Name: SU04G
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 3.7 GiB
Bus Width: 4-bit
=> boot
** No partition table - mmc 0 **
** No partition table - mmc 0 **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
- uboot usb gadgets
- usbtty
- mass storage
- ethernet
- installer uboot
- fastboot
- mass storage
- tftp over usbnet
- lockdown script (sign kernel, uboot, program keys into OTP, switch to verified boot)