V5: rebased on a non-stale version of u-boot-usb/master V4: Fixed build failures in fsl and mxs ehci code. Also rebased on the latest usb/master and did MAKEALL -a powerpc in addition to MAKEALL -a arm.
V3: Stephen ran into some problems applying this, as it seems my tree wasn't as clean as it should have been. Sorry for the inconvenience. This should now be fixed. Hi all, this is a follow up on the patch "USB: EHCI: Initialize multiple USB controllers at once" from Jim Lin. It takes some of the code but has undergone some heavy reworking. When we remove the ifdef horror from the above mentioned patch it's mostly a big interface change to the usb subsystem. As this creates a lot of churn I've split this up into a series. Every patch is self contained so it doesn't break compiles and *should* not regress any functionality on it's own. At least the series is bisectable in case anything goes wrong. I've compile tested all the ARM configs. Both the lowlevel usb and ehci interface change are backward compatible, so implementations that only use one controller can choose to ignore the new interface. All implementations are updated to work with the new function prototypes. For Tegra I've included a patch to actually use the new ehci interface. Tom, Stephen, can I get an ACK from you for this, so Marek can take this through his USB tree? All patches now rebased onto u-boot-usb/master. Patch 3 also includes some cosmetic changes, to make the output of the usb commands more readable. On my Colibri T20, with a total of 3 usb controllers of which 2 are enabled in the device tree, output now looks like this: Tegra20 (Colibri) # usb start (Re)start USB... USB0: USB EHCI 1.00 scanning bus 0 for devices... 2 USB Device(s) found USB1: USB EHCI 1.00 scanning bus 1 for devices... 2 USB Device(s) found USB2: lowlevel init failed scanning usb for storage devices... 1 Storage Device(s) found scanning usb for ethernet devices... 1 Ethernet Device(s) found Tegra20 (Colibri) # usb tree USB device tree: 1 Hub (480 Mb/s, 0mA) | u-boot EHCI Host Controller | +-2 Mass Storage (480 Mb/s, 200mA) SanDisk U3 Titanium 2845221DC342AE8F 3 Hub (480 Mb/s, 0mA) | u-boot EHCI Host Controller | +-4 Vendor specific (480 Mb/s, 4mA) ASIX Elec. Corp. AX88772B 000001 Lucas Stach (4): usb: lowlevel interface change to support multiple controllers usb: ehci: rework to take advantage of new lowlevel interface usb: add support for multiple usb controllers tegra20: port to new ehci interface arch/arm/cpu/arm920t/s3c24x0/usb_ohci.c | 4 +- arch/arm/cpu/armv7/tegra20/usb.c | 15 +--- arch/arm/include/asm/arch-tegra20/usb.h | 4 +- arch/arm/include/asm/ehci-omap.h | 10 ++- arch/mips/cpu/mips32/au1x00/au1x00_usb_ohci.c | 4 +- arch/powerpc/cpu/mpc5xxx/usb_ohci.c | 4 +- arch/powerpc/cpu/ppc4xx/usb_ohci.c | 4 +- arch/sparc/cpu/leon3/usb_uhci.c | 4 +- arch/sparc/lib/bootm.c | 2 +- board/htkw/mcx/mcx.c | 6 +- board/mpl/common/usb_uhci.c | 4 +- board/technexion/twister/twister.c | 6 +- board/teejet/mt_ventoux/mt_ventoux.c | 6 +- board/ti/beagle/beagle.c | 6 +- board/ti/panda/panda.c | 6 +- common/cmd_usb.c | 16 +++- common/usb.c | 108 +++++++++++----------- common/usb_hub.c | 2 +- common/usb_storage.c | 2 +- drivers/usb/eth/usb_ether.c | 2 +- drivers/usb/host/ehci-armada100.c | 15 ++-- drivers/usb/host/ehci-atmel.c | 11 ++- drivers/usb/host/ehci-core.h | 29 ------ drivers/usb/host/ehci-exynos.c | 15 ++-- drivers/usb/host/ehci-fsl.c | 15 ++-- drivers/usb/host/ehci-hcd.c | 124 ++++++++++++++------------ drivers/usb/host/ehci-ixp4xx.c | 15 ++-- drivers/usb/host/ehci-marvell.c | 15 ++-- drivers/usb/host/ehci-mpc512x.c | 25 ++---- drivers/usb/host/ehci-mx5.c | 11 ++- drivers/usb/host/ehci-mx6.c | 11 ++- drivers/usb/host/ehci-mxc.c | 11 ++- drivers/usb/host/ehci-mxs.c | 20 +++-- drivers/usb/host/ehci-omap.c | 10 ++- drivers/usb/host/ehci-pci.c | 15 ++-- drivers/usb/host/ehci-ppc4xx.c | 11 ++- drivers/usb/host/ehci-tegra.c | 14 ++- drivers/usb/host/ehci-vct.c | 9 +- drivers/usb/host/ehci.h | 4 +- drivers/usb/host/isp116x-hcd.c | 4 +- drivers/usb/host/ohci-hcd.c | 4 +- drivers/usb/host/r8a66597-hcd.c | 4 +- drivers/usb/host/sl811-hcd.c | 4 +- drivers/usb/musb/musb_hcd.c | 4 +- include/usb.h | 10 ++- include/usb/mv_udc.h | 2 +- 46 Dateien geändert, 309 Zeilen hinzugefügt(+), 318 Zeilen entfernt(-) delete mode 100644 drivers/usb/host/ehci-core.h -- 1.7.11.4 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot