u-boot-brain/drivers
Hans de Goede fcdd8aaa48 dm: usb: Fix finding of first upstream usb-2 hub in the ehci dm code
The ehci driver model code for finding the first upstream usb-2 hub before
this commit has a number of issues:

1) "if (!ttdev->speed != USB_SPEED_HIGH)" does not work because the '!'
   takes presedence over the '!=' this should simply be
   "if (ttdev->speed == USB_SPEED_HIGH)"
2) It makes ttdev point to the first upstream usb-2 hub, but ttdev should
   point to the last usb-1 device before the first usb-2 hub (when going
   upstream from the device), as ttdev is used to find the port of the
   first usb-2 hub to which the the last usb-1 device is connected.
3) parent_devnum however should be set to the devnum of the first usb-2
   hub, so we need to keep pointers around to both usb_device structs.

To complicate things further during enumeration usb_device.dev will point
to the parent udevice, where as during normal use it will point to
the actual udevice, we must handle both cases correctly.

This commit fixes all this making usb-1 devices attached to usb-2 hubs,
including usb-1 devices attached to usb-1 hubs attached to usb-2 hubs, work.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Simon Glass <sjg@chromium.org>
2015-05-05 20:58:42 -06:00
..
bios_emulator biosemu: Do not free vga_info->BIOSImage when it is 0xc0000 2015-04-29 18:51:49 -06:00
block ahci: mmio_base is a virtual address 2015-04-18 16:54:29 -04:00
bootcount qe: move immap_qe.h from arch directory into common directory 2014-07-22 16:25:54 -07:00
core dm: core: Add a function to bind a driver for a device tree node 2015-04-29 21:02:32 -06:00
cpu dm: Implement a CPU uclass 2015-04-29 21:02:33 -06:00
crypto Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx 2015-03-05 20:50:30 -05:00
ddr arm: mvebu: db-mv784mp-gp: Fix ECC I2C address 2015-05-05 14:32:05 +02:00
demo common: Make sure arch-specific map_sysmem() is defined 2015-04-18 11:11:09 -06:00
dfu dfu: nand: Verify writes 2015-03-30 23:24:38 -05:00
dma dma: keystone_nav: remove spurious qm_cfg verification 2014-11-06 11:04:39 -05:00
fpga fpga: xilinx: Show fpga info if defined 2015-01-21 10:25:43 +01:00
gpio sunxi: axp: Remove non driver-model support from the axp gpio code 2015-05-04 16:51:54 +02:00
hwmon dtt: add ds620 support 2015-04-10 14:23:23 +02:00
i2c dm: i2c-gpio: Remove redundant dm_gpio_set_value() call 2015-05-05 20:58:41 -06:00
input i8042: Add keyboard enable logic in kbd_reset() 2015-04-18 11:11:16 -06:00
memory ARM: keystone: aemif: move aemif driver to drivers/memory/ti-aemif.c 2014-06-19 17:53:58 -04:00
misc cros_ec: Handle the single duplex requirement in cros_ec 2015-05-05 20:58:19 -06:00
mmc Merge git://git.denx.de/u-boot-mpc85xx 2015-05-05 14:57:23 -04:00
mtd Merge branch 'master' of git://git.denx.de/u-boot-spi 2015-04-28 07:28:43 -04:00
net sandbox: eth: Add a function to skip ping timeouts 2015-05-05 20:58:18 -06:00
pci Merge git://git.denx.de/u-boot-mpc85xx 2015-05-05 14:57:23 -04:00
pcmcia powerpc: mpc824x: remove MPC824X cpu support 2015-01-05 12:08:55 -05:00
power sunxi: axp: Move axp gpio code to a separate axpi-gpio driver 2015-05-04 16:51:53 +02:00
pwm pwm, imx6: add support for pwm modul on imx6 2014-07-23 12:25:42 +02:00
qe QE/DeepSleep: add QE deepsleep support for mpc85xx 2015-04-21 10:19:19 -07:00
rtc dm: rtc: sandbox: Enable real-time clock support 2015-05-05 20:58:40 -06:00
serial Merge branch 'u-boot/master' into 'u-boot-arm/master' 2015-05-05 10:09:06 +02:00
soc soc: keystone_serdes: generalize configuration mechanism 2014-10-23 11:27:28 -04:00
sound sandbox: exynos: Move CONFIG_SOUND_SANDBOX to Kconfig 2015-04-18 11:11:39 -06:00
spi dm: spi: Avoid setting the speed with every transfer 2015-05-05 20:58:18 -06:00
thermal dm: Expand and complete Kconfig in drivers/ 2015-02-12 10:35:33 -07:00
tpm sandbox: Move CONFIG_TPM_TIS_SANDBOX to Kconfig 2015-04-18 11:11:38 -06:00
twserial drivers: convert makefiles to Kbuild style 2013-10-31 13:26:01 -04:00
usb dm: usb: Fix finding of first upstream usb-2 hub in the ehci dm code 2015-05-05 20:58:42 -06:00
video sunxi: display: Fix gpio handling to work with the driver-model 2015-05-04 16:51:52 +02:00
watchdog watchdog/imx_watchdog: do not set WCR_WDW 2015-03-25 16:52:16 +01:00
Kconfig dm: Implement a CPU uclass 2015-04-29 21:02:33 -06:00
Makefile dm: Implement a CPU uclass 2015-04-29 21:02:33 -06:00