linux/drivers/usb/core
Sarah Sharp c6515272b8 USB: Support for addressing a USB device under xHCI
Add host controller driver API and a slot_id variable to struct
usb_device.  This allows the xHCI host controller driver to ask the
hardware to allocate a slot for the device when a struct usb_device is
allocated.  The slot needs to be allocated at that point because the
hardware can run out of internal resources, and we want to know that very
early in the device connection process.  Don't call this new API for root
hubs, since they aren't real devices.

Add HCD API to let the host controller choose the device address.  This is
especially important for xHCI hardware running in a virtualized
environment.  The guests running under the VM don't need to know which
addresses on the bus are taken, because the hardware picks the address for
them.  Announce SuperSpeed USB devices after the address has been assigned
by the hardware.

Don't use the new get descriptor/set address scheme with xHCI.  Unless
special handling is done in the host controller driver, the xHC can't
issue control transfers before you set the device address.  Support for
the older addressing scheme will be added when the xHCI driver supports
the Block Set Address Request (BSR) flag in the Address Device command.

Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-06-15 21:44:49 -07:00
..
buffer.c USB: pass mem_flags to dma_alloc_coherent 2009-04-23 14:15:28 -07:00
config.c USB: Add SuperSpeed to the list of USB device speeds. 2009-06-15 21:44:48 -07:00
devices.c USB: drivers: use USB API functions rather than constants 2009-03-24 16:20:28 -07:00
devio.c USB: add reset endpoint operations 2009-04-17 10:50:27 -07:00
driver.c USB: Avoid PM error messages during resume if a device was disconnected 2009-06-15 21:44:47 -07:00
endpoint.c usb: convert endpoint devices to bus-less childs of the usb interface 2009-06-15 21:44:45 -07:00
file.c USB: remove err() macro from usb core code 2008-10-17 14:41:11 -07:00
generic.c USB: Enhance usage of pm_message_t 2009-01-07 10:00:03 -08:00
hcd-pci.c USB: new flag for resume-from-hibernation 2009-06-15 21:44:44 -07:00
hcd.c USB: Add USB 3.0 roothub support to USB core. 2009-06-15 21:44:48 -07:00
hcd.h USB: Support for addressing a USB device under xHCI 2009-06-15 21:44:49 -07:00
hub.c USB: Support for addressing a USB device under xHCI 2009-06-15 21:44:49 -07:00
hub.h USB: Add USB 3.0 roothub support to USB core. 2009-06-15 21:44:48 -07:00
inode.c Push BKL down into ->remount_fs() 2009-06-11 21:36:11 -04:00
Kconfig USB: usbfs: deprecate and hide option for !embedded 2009-06-15 21:44:41 -07:00
Makefile USB: add the usbfs devices file to debugfs 2009-06-15 21:44:43 -07:00
message.c NLS: update handling of Unicode 2009-06-15 21:44:43 -07:00
notify.c USB : correct comments in usb/core/notify.c 2008-02-01 14:34:44 -08:00
otg_whitelist.h USB: fix codingstyle issues in drivers/usb/core/*.h 2008-02-01 14:35:07 -08:00
quirks.c USB: add quirk to avoid config and interface strings 2009-03-24 16:20:25 -07:00
sysfs.c USB: core/sysfs: fix sparse warnings 2009-06-15 21:44:41 -07:00
urb.c USB: Add SuperSpeed to the list of USB device speeds. 2009-06-15 21:44:48 -07:00
usb.c USB: Support for addressing a USB device under xHCI 2009-06-15 21:44:49 -07:00
usb.h usb: convert endpoint devices to bus-less childs of the usb interface 2009-06-15 21:44:45 -07:00