xenial (1) dfu-util.1.gz

Provided by: dfu-util_0.8-1_amd64 bug

NAME

       dfu-util - Device firmware update (DFU) USB programmer

SYNOPSIS

       dfu-util  -l  [-v]  [-d  vid:pid[,vid:pid]] [-p path] [-c configuration] [-i interface] [-a alt-intf] [-S
              serial[,serial]]

       dfu-util [-v] [-d vid:pid[,vid:pid]] [-p path]  [-c  configuration]  [-i  interface]  [-a  alt-intf]  [-S
              serial[,serial]] [-t size] [-Z size] [-s address] [-R] [-D|-U file]

       dfu-util [-hV]

DESCRIPTION

       dfu-util  is  a  program  that  implements  the host (computer) side of the USB DFU (Universal Serial Bus
       Device Firmware Upgrade) protocol.

       dfu-util communicates with devices that implement the device side of the USB DFU protocol, and  is  often
       used to upgrade the firmware of such devices.

OPTIONS

       -l, --list
              List the currently attached DFU capable USB devices.

       -d, --device [Run-Time VENDOR]:[Run-Time PRODUCT][,[DFU Mode VENDOR]:[DFU Mode PRODUCT]]
              Specify  run-time and/or DFU mode vendor and/or product IDs of the DFU device to work with. VENDOR
              and PRODUCT are hexadecimal numbers (no prefix needed), "*" (match any), or "-"  (match  nothing).
              By default, any DFU capable device in either run-time or DFU mode will be considered.

              If  you  only have one standards-compliant DFU device attached to your computer, this parameter is
              optional. However, as soon as you have multiple DFU devices connected, dfu-util will  detect  this
              and abort, asking you to specify which device to use.

              If  only run-time IDs are specified (e.g. "--device 1457:51ab"), then in addition to the specified
              run-time IDs, any DFU mode devices will also be considered. This is  beneficial  to  allow  a  DFU
              capable device to be found again after a switch to DFU mode, since the vendor and/or product ID of
              a device usually changes in DFU mode.

              If only DFU mode IDs are specified (e.g. "--device ,951:26"), then all run-time  devices  will  be
              ignored, making it easy to target a specific device in DFU mode.

              If both run-time and DFU mode IDs are specified (e.g. "--device 1457:51ab,:2bc"), then unspecified
              DFU mode components will use the run-time value specified.

              Examples:

              --device 1457:51ab,951:26
                     Work with a device in run-time mode with vendor ID 0x1457 and product ID 0x51ab, or in  DFU
                     mode with vendor ID 0x0951 and product ID 0x0026

              --device 1457:51ab,:2bc
                     Work  with a device in run-time mode with vendor ID 0x1457 and product ID 0x51ab, or in DFU
                     mode with vendor ID 0x1457 and product ID 0x02bc

              --device 1457:51ab
                     Work with a device in run-time mode with vendor ID 0x1457 and product ID 0x51ab, or in  DFU
                     mode with any vendor and product ID

              --device ,951:26
                     Work with a device in DFU mode with vendor ID 0x0951 and product ID 0x0026

              --device *,-
                     Work with any device in run-time mode, and ignore any device in DFU mode

              --device ,
                     Ignore any device in run-time mode, and Work with any device in DFU mode

       -p, --path BUS-PORT. ... .PORT
              Specify the path to the DFU device.

       -c, --cfg CONFIG-NR
              Specify  the  configuration  of  the  DFU  device.  Note  that this is only used for matching, the
              configuration is not set by dfu-util.

       -i, --intf INTF-NR
              Specify the DFU interface number.

       -a, --alt ALT
              Specify the altsetting of the DFU interface by name or by number.

       -S, --serial [Run-Time SERIAL][,[DFU Mode SERIAL]]
              Specify the run-time and DFU mode serial numbers used to  further  restrict  device  matches.   If
              multiple,  identical  DFU devices are simultaneously connected to a system then vendor and product
              ID will be insufficient for targeting a single device.  In this situation, it may be  possible  to
              use this parameter to specify a serial number which also must match.

              If  only a single serial number is specified, then the same serial number is used in both run-time
              and DFU mode. An empty serial number will match any serial number in the corresponding mode.

       -t, --transfer-size  SIZE
              Specify  the  number  of  bytes  per  USB  transfer.  The  optimal  value  is  usually  determined
              automatically so this option is rarely useful. If you need to use this option for a device, please
              report it as a bug.

       -Z, --upload-size  SIZE
              Specify the expected upload size, in bytes.

       -U, --upload FILE
              Read firmware from device into FILE.

       -D, --download FILE
              Write firmware from FILE into device.

       -R, --reset
              Issue USB reset signalling after upload or download has finished.

       -s, --dfuse-address address
              Specify target address for raw binary download/upload on  DfuSe  devices.  Do  not  use  this  for
              downloading  DfuSe  (.dfu)  files. Modifiers can be added to the address, separated by a colon, to
              perform special DfuSE commands such as  "leave"  DFU  mode,  "unprotect"  and  "mass-erase"  flash
              memory.

       -v, --verbose
              Print more information about dfu-util's operation. A second -v will turn on verbose logging of USB
              requests. Repeat this option to further increase verbosity.

       -h, --help
              Show a help text and exit.

       -V, --version
              Show version information and exit.

EXAMPLES

   Using dfu-util in the OpenMoko project
       (with the Neo1973 hardware)

       Flashing the rootfs:
         $ dfu-util -a rootfs -R -D /path/to/openmoko-devel-image.jffs2

       Flashing the kernel:
         $ dfu-util -a kernel -R -D /path/to/uImage

       Flashing the bootloader:
         $ dfu-util -a u-boot -R -D /path/to/u-boot.bin

       Copying a kernel into RAM:
         $ dfu-util -a 0 -R -D /path/to/uImage

       Once this has finished, the kernel will be available at the default load address of 0x32000000 in Neo1973
       RAM.  Note: You cannot transfer more than 2MB of data into RAM using this method.

   Using dfu-util with a DfuSe device
       Flashing a .dfu (special DfuSe format) file to the device:
         $ dfu-util -a 0 -D /path/to/dfuse-image.dfu

       Reading out 1 KB of flash starting at address 0x8000000:
         $ dfu-util -a 0 -s 0x08000000:1024 -U newfile.bin

       Flashing a binary file to address 0x8004000 of device memory and ask the device to leave DFU mode:
         $ dfu-util -a 0 -s 0x08004000:leave -D /path/to/image.bin

BUGS

       Please  report  any  bugs  to  the  dfu-util mailing list at dfu-util@lists.gnumonks.org.  Please use the
       --verbose option (repeated as necessary) to provide more information in your bug report.

SEE ALSO

       The dfu-util home page is http://dfu-util.gnumonks.org

HISTORY

       dfu-util was originally written for the OpenMoko project by Weston Schmidt <weston_schmidt@yahoo.com> and
       Harald Welte <hwelte@hmw-consulting.de>. Over time, nearly complete support of DFU 1.0, DFU 1.1 and DfuSe
       ("1.1a") has been added.

LICENCE

       dfu-util is covered by the GNU General Public License (GPL), version 2 or later.

       This manual page was originally written by Uwe Hermann <uwe@hermann-uwe.de>, and is now part of the  dfu-
       util project.

                                               September 23, 2012                                    DFU-UTIL(1)