usb: enable simultaneous functionality of XHCI & EHCI stacks
Compilation:
- Renamed all conflicted elements between stacks (added "ehci_/xhci_" prefix)
routines: submit_int_msg, submit_bulk_msg, submit_control_msg
usb_lowlevel_init, usb_lowlevel_stop, usb_alloc_device
- A38x, ALP, A375: Enabled both EHCI and XHCI support for Marvell SoCs (include/configs/..)
Functionality:
- mv_usb.c: Added new replacement-layer of the above usb routines,
to navigate between currently selected stack (EHCI/XHCI)
- Stack selection is done according to new env variable 'usbType' (Added to mv_main_soc.c)
** usbType = 2 --> USB2.0/eHCI, usbType = 3 --> USB3.0/xHCI **
- Relocated usbActive usage to an earlier state in usb init
(before usb_lowlevel_init, instead of in hci_hcd_init)
- usb_storage.c: Updated USB_MAX_XFER_BLK value to be adapted to XHCI and EHCI usage
USB_MAX_XFER_BLK <= 4000: both EHCI and XHCI functional (acheived 63MiB/s with XHCI)
Change-Id: Ibde5658bdb6b94dab04048073323920ac4bd93a0
Signed-off-by: Omri Itach <omrii@marvell.com>
Reviewed-on: http://vgitil04.il.marvell.com:8080/5448
Reviewed-by: Hanna Hawa <hannah@marvell.com>
Tested-by: Star_Automation <star@marvell.com>
Reviewed-by: Eli Nidam <elini@marvell.com>
13 files changed