
On Wed, Aug 31, 2011 at 9:28 AM, Gary Thomas gary@mlbassoc.com wrote:
I'm using v2011.06 on the TI OMAP3 platform (internal, similar to BeagleBoard)
I'd like my board to support both EHCI and MUSB in host mode. However, when I define both of these, I get compile errors: drivers/usb/musb/libusb_musb.o: In function `usb_lowlevel_stop': /local/DM3730/u-boot/drivers/usb/musb/musb_hcd.c:1149: multiple definition of `usb_lowlevel_stop' drivers/usb/host/libusb_host.o:/local/DM3730/u-boot/drivers/usb/host/ehci-hcd.c:795: first defined here drivers/usb/musb/libusb_musb.o: In function `submit_int_msg': /local/DM3730/u-boot/drivers/usb/musb/musb_hcd.c:1162: multiple definition of `submit_int_msg' drivers/usb/host/libusb_host.o:/local/DM3730/u-boot/drivers/usb/host/ehci-hcd.c:900: first defined here drivers/usb/musb/libusb_musb.o: In function `submit_bulk_msg': /local/DM3730/u-boot/drivers/usb/musb/musb_hcd.c:949: multiple definition of `submit_bulk_msg' drivers/usb/host/libusb_host.o:/local/DM3730/u-boot/drivers/usb/host/ehci-hcd.c:865: first defined here drivers/usb/musb/libusb_musb.o: In function `submit_control_msg': /local/DM3730/u-boot/drivers/usb/musb/musb_hcd.c:849: multiple definition of `submit_control_msg' drivers/usb/host/libusb_host.o:/local/DM3730/u-boot/drivers/usb/host/ehci-hcd.c:877: first defined here drivers/usb/musb/libusb_musb.o: In function `usb_lowlevel_init': /local/DM3730/u-boot/drivers/usb/musb/musb_hcd.c:1097: multiple definition of `usb_lowlevel_init' drivers/usb/host/libusb_host.o:/local/DM3730/u-boot/drivers/usb/host/ehci-hcd.c:799: first defined here
Is this expected to work? If not, any pointers on how I might make both controllers play nice?
I think the answer there is no the musb* and ehci* apis both expect to be
the only usb host code enabled at any one time. I suspect to fix this you would have to add some abstration to u-boot to deal with multiple host controlllers at runtime.
--john