On 16/05/16 12:26, Roger Quadros wrote: > On 16/05/16 12:06, Roger Quadros wrote: >> On 13/05/16 15:45, Marek Vasut wrote: >>> On 05/13/2016 02:36 PM, Roger Quadros wrote: >>>> Currently CONFIG_USB_DWC3 is not selected so doing a usb start >>>> command results in a serious error [1]. >>> >>> Why does this error happen ? That is what should be fixed. Selecting >>> some random options seems like papering over a bug. >> >> Agreed. I was lazy :P. > > OK. The issue is like this. > > CONFIG_CMD_USB and CONFIG_USB_XHCI is defined, so usb_init() calls > usb_lowlevel_init() in xhci.c which calls xhci_hcd_init in xhci-omap.c which > calls > board_usb_init(). > > But board_usb_init() in am57xx/board.c is defined only if CONFIG_USB_DWC3 is > defined > and that is missing in am57xx_evm.h leading to the serious error. We're > trying to > access the IP without turning on the necessary clocks. > > So it looks like we need to define it based on CONFIG_USB_XHCI_OMAP or > something else. > > But then again looking into the future, what if we want only gadget operation? > That would not define XHCI, but we still need board_usb_init(). So > board_usb_init() > should be defined based on CONFIG_CMD_USB=y? > > What do you suggest?
But board_usb_init() calls ti_usb_phy_uboot_init(&usb_phy1_device); dwc3_omap_uboot_init(&usb_otg_ss1_glue); dwc3_uboot_init(&usb_otg_ss1); which depend on CONFIG_USB_DWC3_PHY_OMAP, CONFIG_USB_DWC3_OMAP and CONFIG_USB_DWC3 respectively. So I really don't know how to fix all this. -- cheers, -roger >> >>> >>>> Fix that by enabling CONFIG_USB_DWC3 and other related options >>>> CONFIG_USB_DWC3_PHY_OMAP and CONFIG_USB_DWC3_OMAP. >>>> >>>> [1] >>>> => usb start >>>> starting USB... >>>> USB0: data abort >>>> pc : [<fff7ed10>] lr : [<fff7ebbf>] >>>> reloc pc : [<8081dd10>] lr : [<8081dbbf>] >>>> sp : fef3d260 ip : 00000000 fp : fef3d2a8 >>>> r10: fffa4610 r9 : fef50ed0 r8 : 00000000 >>>> r7 : fef3d280 r6 : fef3d284 r5 : fffbc380 r4 : 00000000 >>>> r3 : 48880000 r2 : 00000000 r1 : 00000000 r0 : fffbc380 >>>> Flags: nzcv IRQs off FIQs off Mode SVC_32 >>>> Resetting CPU ... >>>> >>>> Signed-off-by: Roger Quadros <rog...@ti.com> >>>> --- >>>> include/configs/am57xx_evm.h | 3 +++ >>>> 1 file changed, 3 insertions(+) >>> >>> Changelog is missing ;-) >>> >>>> diff --git a/include/configs/am57xx_evm.h b/include/configs/am57xx_evm.h >>>> index 32d7d4d..939057c 100644 >>>> --- a/include/configs/am57xx_evm.h >>>> +++ b/include/configs/am57xx_evm.h >>>> @@ -63,6 +63,7 @@ >>>> #define CONFIG_SUPPORT_EMMC_BOOT >>>> >>>> /* USB xHCI HOST */ >>>> +#define CONFIG_USB_DWC3 >>>> #define CONFIG_USB_HOST >>>> #define CONFIG_USB_XHCI_DWC3 >>>> #define CONFIG_USB_XHCI >>>> @@ -72,6 +73,8 @@ >>>> >>>> #define CONFIG_OMAP_USB_PHY >>>> #define CONFIG_OMAP_USB3PHY1_HOST >>>> +#define CONFIG_USB_DWC3_PHY_OMAP >>>> +#define CONFIG_USB_DWC3_OMAP >>>> >>>> /* SATA */ >>>> #define CONFIG_BOARD_LATE_INIT >>>> >>> >>> >> _______________________________________________ >> U-Boot mailing list >> U-Boot@lists.denx.de >> http://lists.denx.de/mailman/listinfo/u-boot >> > _______________________________________________ > U-Boot mailing list > U-Boot@lists.denx.de > http://lists.denx.de/mailman/listinfo/u-boot > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot