This is the third try for this patch series to add alternate interface settings support to the xHCI driver by adding a bus bandwidth mutex. This set refactors out the code to find the alternate setting from the configuration's interface cache, so that the bandwidth checking method can share code with usb_reset_and_verify_device(). This patchset also corrects a bug in usb_reset_and_verify_device() pointed out by Alan: it sets the current alternate interface setting to 0 after a device re-enumeration, so that the old alternate setting can be re-installed. Tested against NEC and Fresco Logic host controller prototypes, with various webcams and multi-TT hubs. The first two patches are unchanged. The updated patch series is on my xhci-alt-settings branch. Sarah Sharp (4): xhci: Make reverting an alt setting "unfailable". xhci: Fix command completion after a drop endpoint. USB: Refactor code to find alternate interface settings. USB: Check bandwidth when switching alt settings. drivers/usb/core/hcd.c | 66 +++++++++++++++++++++++++----------- drivers/usb/core/hcd.h | 19 +++++++++- drivers/usb/core/hub.c | 27 ++++++++++++++- drivers/usb/core/message.c | 69 ++++++++++++++++++++++++++++++++++---- drivers/usb/core/usb.c | 29 ++++++++++++++++ drivers/usb/host/xhci-hcd.c | 32 +++++++++++++++--- drivers/usb/host/xhci-mem.c | 76 ++++++++++++++++++++++++++++++++++------- drivers/usb/host/xhci-ring.c | 36 +++++++++++--------- drivers/usb/host/xhci.h | 4 ++ include/linux/usb.h | 4 ++ 10 files changed, 297 insertions(+), 65 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html