[U-Boot] [PATCH 0/4] USB multi controller
Lucas Stach
dev at lynxeye.de
Thu Aug 30 18:03:20 CEST 2012
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. Patches are based on a Tegra tree with some relevant
changes from u-boot-usb picked over, so they should apply to
u-boot-usb/master.
Patch 4 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
tegra20: port to new ehci interface
usb: add support for multiple usb controllers
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 | 106 +++++++++++-----------
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 | 11 ++-
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 | 28 +++---
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(+), 320 Zeilen entfernt(-)
delete mode 100644 drivers/usb/host/ehci-core.h
--
1.7.11.4
More information about the U-Boot
mailing list