EM100pro: Difference between revisions

From coreboot
Jump to navigation Jump to search
(Created page with "= Linux Utility = We are working on a Linux utility to drive the EM100Pro. Get the sources with $ git clone http://review.coreboot.org/em100 Browse the source code here: ht...")
 
No edit summary
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
= Linux Utility =
= Linux Utility =


We are working on a Linux utility to drive the EM100Pro. Get the sources with
We have developed a Linux utility to drive the EM100Pro. Get the sources with
  $ git clone http://review.coreboot.org/em100
  $ git clone http://review.coreboot.org/em100


Line 8: Line 8:
Here's how to use the utility:
Here's how to use the utility:


em100: EM100pro command line utility
em100: EM100pro command line utility
Example:
  ./em100 --stop --set M25P80 -d file.bin -v --start
Usage:
  -c|--set CHIP:      select chip emulation
  -d|--download FILE: upload FILE into EM100pro
  -r|--start:        em100 shall run
  -s|--stop:          em100 shall stop
  -v|--verify:        verify EM100 content matches the file
  -t|--trace:        trace mode
  -F|--firmware-update FILE: update firmware in EM100pro (dangerous)
  -f|--firmware-dump FILE:  export firmware in EM100pro to file
  -S|--set-serialno NUM:    set serial number to NUM
  -p|--holdpin [LOW|FLOAT|INPUT]: set the hold pin state
  -x|--device BUS:DEV use EM100pro on USB bus/device
  -l|--list-devices  list all connected EM100pro devices
  -D|--debug:        print debug information.
  -h|--help:          this help text


Example:
  ./em100 --stop --set M25P80 -d file.bin -v --start -t -O 0xfff00000
Usage:
  -c|--set CHIP:                  select chip emulation
  -d|--download FILE:            download FILE into EM100pro
  -u|--upload FILE:              upload from EM100pro into FILE
  -r|--start:                    em100 shall run
  -s|--stop:                      em100 shall stop
  -v|--verify:                    verify EM100 content matches the file
  -t|--trace:                    trace mode
  -O|--offset HEX_VAL:            address offset for trace mode
  -T|--terminal:                  terminal mode
  -F|--firmware-update FILE:      update EM100pro firmware (dangerous)
  -f|--firmware-dump FILE:        export raw EM100pro firmware to file
  -g|--firmware-write FILE:      export EM100pro firmware to DPFW file
  -S|--set-serialno NUM:          set serial number to NUM
  -p|--holdpin [LOW|FLOAT|INPUT]: set the hold pin state
  -x|--device BUS:DEV            use EM100pro on USB bus/device
  -x|--device DPxxxxxx            use EM100pro with serial no DPxxxxxx
  -l|--list-devices              list all connected EM100pro devices
  -D|--debug:                    print debug information.
  -h|--help:                      this help text
= Chip Voltage =
EM100 uses different firmware for 1.8V and 3.3V chips. Furthermore, the firmware update function only accepts combined MCU and FPGA images.
TODO: Update tool to automatically select appropriate firmware.


= USB Tracing =
= USB Tracing =


When using VMware player to run the Windows utilities, the EM100pro will get confused by Windows trying to set the device up after Linux already did. To avoid that, add the following line to your .vmx file:
When using VMware to run the Windows utilities, the EM100pro will get confused by Windows trying to set the device up after Linux already did. To avoid that, add the following line to your .vmx file:


  usb.quirks.device0 = "0x04b4:0x1235 skip-reset, skip-refresh, skip-setconfig"
  usb.quirks.device0 = "0x04b4:0x1235 skip-reset, skip-refresh, skip-setconfig"

Latest revision as of 02:11, 10 May 2018

Linux Utility

We have developed a Linux utility to drive the EM100Pro. Get the sources with

$ git clone http://review.coreboot.org/em100

Browse the source code here: http://review.coreboot.org/gitweb?p=em100.git;a=summary

Here's how to use the utility:

em100: EM100pro command line utility

Example:

 ./em100 --stop --set M25P80 -d file.bin -v --start -t -O 0xfff00000

Usage:

 -c|--set CHIP:                  select chip emulation
 -d|--download FILE:             download FILE into EM100pro
 -u|--upload FILE:               upload from EM100pro into FILE
 -r|--start:                     em100 shall run
 -s|--stop:                      em100 shall stop
 -v|--verify:                    verify EM100 content matches the file
 -t|--trace:                     trace mode
 -O|--offset HEX_VAL:            address offset for trace mode
 -T|--terminal:                  terminal mode
 -F|--firmware-update FILE:      update EM100pro firmware (dangerous)
 -f|--firmware-dump FILE:        export raw EM100pro firmware to file
 -g|--firmware-write FILE:       export EM100pro firmware to DPFW file
 -S|--set-serialno NUM:          set serial number to NUM
 -p|--holdpin [LOW|FLOAT|INPUT]: set the hold pin state
 -x|--device BUS:DEV             use EM100pro on USB bus/device
 -x|--device DPxxxxxx            use EM100pro with serial no DPxxxxxx
 -l|--list-devices               list all connected EM100pro devices
 -D|--debug:                     print debug information.
 -h|--help:                      this help text

Chip Voltage

EM100 uses different firmware for 1.8V and 3.3V chips. Furthermore, the firmware update function only accepts combined MCU and FPGA images.

TODO: Update tool to automatically select appropriate firmware.

USB Tracing

When using VMware to run the Windows utilities, the EM100pro will get confused by Windows trying to set the device up after Linux already did. To avoid that, add the following line to your .vmx file:

usb.quirks.device0 = "0x04b4:0x1235 skip-reset, skip-refresh, skip-setconfig"