| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414 |
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <HTML><HEAD><TITLE>Man page of DFU-UTIL</TITLE>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
- </HEAD><BODY>
- <H1>DFU-UTIL(1)</H1>
- <A NAME="lbAB"> </A>
- <H2>NAME</H2>
- dfu-util - Device firmware update (DFU) USB programmer
- <A NAME="lbAC"> </A>
- <H2>SYNOPSIS</H2>
- <DL COMPACT>
- <DT>
- <B>dfu-util</B>
- <B>-l </B>
- [<B>-v</B>]
- [<B>-d</B>
- <I>vid:pid</I>[,<I>vid:pid</I>]]
- [<B>-p</B>
- <I>path</I>]
- [<B>-c</B>
- <I>configuration</I>]
- [<B>-i</B>
- <I>interface</I>]
- [<B>-a</B>
- <I>alt-intf</I>]
- [<B>-S</B>
- <I>serial</I>[,<I>serial</I>]]
- <DT>
- <B>dfu-util</B>
- [<B>-v</B>]
- [<B>-d</B>
- <I>vid:pid</I>[,<I>vid:pid</I>]]
- [<B>-p</B>
- <I>path</I>]
- [<B>-c</B>
- <I>configuration</I>]
- [<B>-i</B>
- <I>interface</I>]
- [<B>-a</B>
- <I>alt-intf</I>]
- [<B>-S</B>
- <I>serial</I>[,<I>serial</I>]]
- [<B>-t</B>
- <I>size</I>]
- [<B>-Z</B>
- <I>size</I>]
- [<B>-s</B>
- <I>address</I>]
- [<B>-R</B>]
- [<B>-D</B>|<B>-U</B>
- <I>file</I>]
- <DT>
- <B>dfu-util</B>
- [<B>-hV</B>]
- </DL>
- <A NAME="lbAD"> </A>
- <H2>DESCRIPTION</H2>
- <B>dfu-util</B>
- is a program that implements the host (computer) side of the USB DFU
- (Universal Serial Bus Device Firmware Upgrade) protocol.
- <P>
- 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.
- <A NAME="lbAE"> </A>
- <H2>OPTIONS</H2>
- <DL COMPACT>
- <DT><B>-l, --list</B>
- <DD>
- List the currently attached DFU capable USB devices.
- <DT><B>-d, --device</B> [<I>Run-Time VENDOR</I>]:[<I>Run-Time PRODUCT</I>][,[<I>DFU Mode VENDOR</I>]:[<I>DFU Mode PRODUCT</I>]]
- <DD>
- <DL COMPACT><DT><DD>
- Specify run-time and/or DFU mode vendor and/or product IDs of the DFU device
- to work with. <B>VENDOR</B> and <B>PRODUCT</B> 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.
- <P>
- 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.
- <P>
- If only run-time IDs are specified (e.g. "<B>--device 1457:51ab</B>"), 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.
- <P>
- If only DFU mode IDs are specified (e.g. "<B>--device ,951:26</B>"), then all
- run-time devices will be ignored, making it easy to target a specific device in
- DFU mode.
- <P>
- If both run-time and DFU mode IDs are specified (e.g. "<B>--device
- 1457:51ab,:2bc</B>"), then unspecified DFU mode components will use the run-time
- value specified.
- <P>
- Examples:
- <DL COMPACT>
- <DT><B>--device 1457:51ab,951:26</B>
- <DD>
- <BR>
- 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
- <P>
- <DT><B>--device 1457:51ab,:2bc</B>
- <DD>
- <BR>
- 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
- <P>
- <DT><B>--device 1457:51ab</B>
- <DD>
- <BR>
- 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
- <P>
- <DT><B>--device ,951:26</B>
- <DD>
- <BR>
- Work with a device in DFU mode with vendor ID 0x0951 and product ID 0x0026
- <P>
- <DT><B>--device *,-</B>
- <DD>
- <BR>
- Work with any device in run-time mode, and ignore any device in DFU mode
- <P>
- <DT><B>--device ,</B>
- <DD>
- <BR>
- Ignore any device in run-time mode, and Work with any device in DFU mode
- </DL>
- </DL>
- <DT><B>-p, --path</B> BUS-PORT. ... .PORT
- <DD>
- Specify the path to the DFU device.
- <DT><B>-c, --cfg</B> CONFIG-NR
- <DD>
- Specify the configuration of the DFU device. Note that this is only used for matching, the configuration is not set by dfu-util.
- <DT><B>-i, --intf</B> INTF-NR
- <DD>
- Specify the DFU interface number.
- <DT><B>-a, --alt</B> ALT
- <DD>
- Specify the altsetting of the DFU interface by name or by number.
- <DT><B>-S, --serial</B> [<I>Run-Time SERIAL</I>][,[<I>DFU Mode SERIAL</I>]]
- <DD>
- 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.
- <P>
- 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.
- <DT><B>-t, --transfer-size SIZE</B>
- <DD>
- 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.
- <DT><B>-Z, --upload-size SIZE</B>
- <DD>
- Specify the expected upload size, in bytes.
- <DT><B>-U, --upload</B> FILE
- <DD>
- Read firmware from device into
- <B>FILE</B>.
- <DT><B>-D, --download</B> FILE
- <DD>
- Write firmware from
- <B>FILE</B>
- into device. When
- <B>FILE</B>
- is -, the firmware is read from stdin.
- <DT><B>-R, --reset</B>
- <DD>
- Issue USB reset signalling after upload or download has finished.
- <DT><B>-s, --dfuse-address</B> address
- <DD>
- Specify target address for raw binary download/upload on DfuSe devices. Do
- <B>not</B>
- 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.
- <DT><B>-v, --verbose</B>
- <DD>
- Print more information about dfu-util's operation. A second
- <B>-v</B>
- will turn on verbose logging of USB requests. Repeat this option to further
- increase verbosity.
- <DT><B>-h, --help</B>
- <DD>
- Show a help text and exit.
- <DT><B>-V, --version</B>
- <DD>
- Show version information and exit.
- </DL>
- <A NAME="lbAF"> </A>
- <H2>EXAMPLES</H2>
- <A NAME="lbAG"> </A>
- <H3>Using dfu-util in the OpenMoko project</H3>
- (with the Neo1973 hardware)
- <P>
- Flashing the rootfs:
- <BR>
- <B> $ dfu-util -a rootfs -R -D /path/to/openmoko-devel-image.jffs2</B>
- <P>
- Flashing the kernel:
- <BR>
- <B> $ dfu-util -a kernel -R -D /path/to/uImage</B>
- <P>
- Flashing the bootloader:
- <BR>
- <B> $ dfu-util -a u-boot -R -D /path/to/u-boot.bin</B>
- <P>
- Copying a kernel into RAM:
- <BR>
- <B> $ dfu-util -a 0 -R -D /path/to/uImage</B>
- <P>
- Once this has finished, the kernel will be available at the default load
- address of 0x32000000 in Neo1973 RAM.
- <B>Note:</B>
- You cannot transfer more than 2MB of data into RAM using this method.
- <P>
- <A NAME="lbAH"> </A>
- <H3>Using dfu-util with a DfuSe device</H3>
- <P>
- Flashing a
- <B>.dfu</B>
- (special DfuSe format) file to the device:
- <BR>
- <B> $ dfu-util -a 0 -D /path/to/dfuse-image.dfu</B>
- <P>
- Reading out 1 KB of flash starting at address 0x8000000:
- <BR>
- <B> $ dfu-util -a 0 -s 0x08000000:1024 -U newfile.bin</B>
- <P>
- Flashing a binary file to address 0x8004000 of device memory and
- ask the device to leave DFU mode:
- <BR>
- <B> $ dfu-util -a 0 -s 0x08004000:leave -D /path/to/image.bin</B>
- <A NAME="lbAI"> </A>
- <H2>BUGS</H2>
- Please report any bugs to the dfu-util bug tracker at
- <B><A HREF="http://sourceforge.net/p/dfu-util/tickets/">http://sourceforge.net/p/dfu-util/tickets/</A></B>.
- Please use the
- <I>--verbose</I> option (repeated as necessary) to provide more
- information in your bug report.
- <A NAME="lbAJ"> </A>
- <H2>SEE ALSO</H2>
- The dfu-util home page is
- <B><A HREF="http://dfu-util.sourceforge.net">http://dfu-util.sourceforge.net</A></B>
- <A NAME="lbAK"> </A>
- <H2>HISTORY</H2>
- dfu-util was originally written for the OpenMoko project by
- Weston Schmidt <<A HREF="mailto:weston_schmidt@yahoo.com">weston_schmidt@yahoo.com</A>> and
- Harald Welte <<A HREF="mailto:hwelte@hmw-consulting.de">hwelte@hmw-consulting.de</A>>. Over time, nearly complete
- support of DFU 1.0, DFU 1.1 and DfuSe ("1.1a") has been added.
- <A NAME="lbAL"> </A>
- <H2>LICENCE</H2>
- <B>dfu-util</B>
- is covered by the GNU General Public License (GPL), version 2 or later.
- <A NAME="lbAM"> </A>
- <H2>COPYRIGHT</H2>
- This manual page was originally written by Uwe Hermann <<A HREF="mailto:uwe@hermann-uwe.de">uwe@hermann-uwe.de</A>>,
- and is now part of the dfu-util project.
- <P>
- <HR>
- <A NAME="index"> </A><H2>Index</H2>
- <DL>
- <DT><A HREF="#lbAB">NAME</A><DD>
- <DT><A HREF="#lbAC">SYNOPSIS</A><DD>
- <DT><A HREF="#lbAD">DESCRIPTION</A><DD>
- <DT><A HREF="#lbAE">OPTIONS</A><DD>
- <DT><A HREF="#lbAF">EXAMPLES</A><DD>
- <DL>
- <DT><A HREF="#lbAG">Using dfu-util in the OpenMoko project</A><DD>
- <DT><A HREF="#lbAH">Using dfu-util with a DfuSe device</A><DD>
- </DL>
- <DT><A HREF="#lbAI">BUGS</A><DD>
- <DT><A HREF="#lbAJ">SEE ALSO</A><DD>
- <DT><A HREF="#lbAK">HISTORY</A><DD>
- <DT><A HREF="#lbAL">LICENCE</A><DD>
- <DT><A HREF="#lbAM">COPYRIGHT</A><DD>
- </DL>
- <HR>
- This document was created by man2html,
- using the doc/dfu-util.1 manual page from dfu-util 0.8.<BR>
- Time: 14:40:57 GMT, September 13, 2014
- </BODY>
- </HTML>
|