[U-Boot] [PATCH v3 0/7] dfu:usb: DFU support via USB Download gadget

Lukasz Majewski
2012-07-31T06:36:56Z

Those patches add support for composite USB download gadget.
This gadget (at least for now) is equipped with DFU download function.

A separate DFU back-end and front-end have been added.
Back-end is placed at ./drivers/dfu directory. The front-end is implemented
as USB function.

The back-end is written in a generic manner with storage device specific
code separated (eMMC).

DFU specification can be found at:
http://wiki.openmoko.org/wiki/USB_DFU_-_The_USB_Device_Firmware_Upgrade_standard

Example usage:

u-boot side: dfu mmc 0
PC: dfu-util -U IMAGE.bin -a uImage (for upload)
dfu-util -D uImage -a uImage (download)

To list the alt settings:
dfu mmc 0 list

Test HW:
Exynos4210 Trats board

Lukasz Majewski (7):
dfu:usb: Support for g_dnl composite download gadget.
dfu:usb: DFU USB function (f_dfu) support for g_dnl composite gadget
dfu: DFU backend implementation
dfu: MMC specific routines for DFU operation
dfu:cmd: Support for DFU u-boot command
arm:trats: Support for USB UDC driver at TRATS board.
arm:trats: Enable g_dnl composite USB gadget with embedded DFU
function on TRATS

Makefile | 1 +
board/samsung/trats/trats.c | 8 +
common/Makefile | 1 +
common/cmd_dfu.c | 81 +++++
drivers/dfu/Makefile | 44 +++
drivers/dfu/dfu.c | 237 ++++++++++++++
drivers/dfu/dfu_mmc.c | 165 ++++++++++
drivers/usb/gadget/Makefile | 2 +
drivers/usb/gadget/f_dfu.c | 751 +++++++++++++++++++++++++++++++++++++++++++
drivers/usb/gadget/f_dfu.h | 100 ++++++
drivers/usb/gadget/g_dnl.c | 218 +++++++++++++
include/configs/trats.h | 24 ++-
include/dfu.h | 103 ++++++
include/g_dnl.h | 33 ++
14 files changed, 1767 insertions(+), 1 deletions(-)
create mode 100644 common/cmd_dfu.c
create mode 100644 drivers/dfu/Makefile
create mode 100644 drivers/dfu/dfu.c
create mode 100644 drivers/dfu/dfu_mmc.c
create mode 100644 drivers/usb/gadget/f_dfu.c
create mode 100644 drivers/usb/gadget/f_dfu.h
create mode 100644 drivers/usb/gadget/g_dnl.c
create mode 100644 include/dfu.h
create mode 100644 include/g_dnl.h

--
1.7.2.3