[U-Boot] DFU on OMAP4?

Michael Cashwell mboards at prograde.net
Tue Feb 19 18:03:32 CET 2013


Greetings,

I've been trying to do some feasibility (performance / features) testing of DFU to see if it might work on a project I'm involved with. Due to architecture similarities I'm trying to do this using a custom-built u-boot from Denx mainline on a OMAP4460 ES1.1 Pandaboard. But I've been having problems.

I'm not sure I have the right set of CONFIG options. The DFU-relevant ones (I think) are:

#define CONFIG_CMD_DFU
#define CONFIG_DFU_FUNCTION
#define CONFIG_DFU_MMC
#define CONFIG_USBDOWNLOAD_GADGET
#define CONFIG_USB_GADGET
#define CONFIG_USB_GADGET_OMAP
#define CONFIG_USB_GADGET_VBUS_DRAW	500

#define CONFIG_G_DNL_MANUFACTURER	"TI"	// just
#define CONFIG_G_DNL_VENDOR_NUM		0x0451	// for
#define CONFIG_G_DNL_PRODUCT_NUM	0xd022	// evaluation

#define CONFIG_DFU_ALT \
	"ipl mmc 100 100;" \
	"u-boot mmc 200 200\0" \
…
#define CONFIG_EXTRA_ENV_SETTINGS \
	"dfu_alt_info=" CONFIG_DFU_ALT \
…

With this I get unresolved symbols at link time:

/home/cashwell/eval/u-boot/common/cmd_dfu.c:64: undefined reference to `usb_gadget_handle_interrupts'
drivers/usb/gadget/libusb_gadget.o: In function `usb_composite_unregister':
/home/cashwell/eval/u-boot/drivers/usb/gadget/composite.c:1081: undefined reference to `usb_gadget_unregister_driver'
drivers/usb/gadget/libusb_gadget.o: In function `usb_composite_register':
/home/cashwell/eval/u-boot/drivers/usb/gadget/composite.c:1067: undefined reference to `usb_gadget_register_driver'

The only possibilities I can find that might resolve those missing functions are in the files:

./drivers/usb/musb-new/musb_uboot.c
./drivers/usb/gadget/s3c_udc_otg.c
./drivers/usb/gadget/pxa25x_udc.c
./drivers/usb/gadget/mv_udc.c

But I'm confused by the relationship between musb, musb-new, and the UDC gadget drivers. I also can't find UDC code for OMAP4 that would work for DFU.

Am I trying to do something that's impossible on OMAP4 using its built-in OTG controller and PHY or am I just doing something dumb?

Has anyone used u-boot DFU on a Pandaboard?

Sorry for the n00b question but I've been banging my head on this for several days and I just can't sort out which part is the horse and which the cart.

Best regards,
-Michael Cashwell



More information about the U-Boot mailing list