Sarah Sharp (380): USB: Export URB statistics for powertop USB: usb_serial_resume bug fix USB: Prepare serial core for autosuspend. USB: Add documentation for USB suspend statistics. USB: ehci shutdown refactored USB: Add the USB 2.0 extension descriptor. USB: ftdi-elan: Always pass usb_bulk_msg() a timeout in milliseconds. USB: Export if an interface driver supports autosuspend. USB: xhci: Support xHCI host controllers and USB 3.0 devices. USB: xhci: BIOS handoff and HW initialization. USB: xhci: Ring allocation and initialization. USB: xhci: Device context array allocation. USB: xhci: No-op command queueing and irq handler. USB: Add SuperSpeed to the list of USB device speeds. USB: Add USB 3.0 roothub support to USB core. USB: Don't reset USB 3.0 devices on port change detection. USB: Add route string to struct usb_device. USB: xhci: Root hub support. USB: Support for addressing a USB device under xHCI USB: xhci: Allocate and address USB devices USB: Support for submitting control URBs under xHCI. USB: xhci: Control transfer support. USB: Parse and store the SuperSpeed endpoint companion descriptors. USB: Support for bandwidth allocation. USB: xhci: Bandwidth allocation support USB: xhci: Bulk transfer support USB: Push scatter gather lists down to host controller drivers. USB: xhci: Scatter gather list support for bulk transfers. USB: xhci: URB cancellation support. USB: xhci: Fix register write order. USB: xhci: Fix Link TRB handoff bit twiddling. USB: xhci: Avoid global namespace pollution. USB: xhci: Clean up xhci_irq() function. USB: xhci: Avoid compiler reordering in Link TRB giveback. USB: Change names of SuperSpeed ep companion descriptor structs. USB: xhci: drop spinlock in xhci_urb_enqueue() error path. USB: xhci: Make xhci-mem.c include linux/dmapool.h usb; xhci: Fix TRB offset calculations. USB: xhci: Remove packed attribute from structures. USB: xHCI: Fix interrupt moderation. USB: xhci: Respect critical sections. USB: xhci: Add Makefile, MAINTAINERS, and Kconfig entries. USB: xhci: Set TD size in transfer TRB. USB: xhci: Deal with stalled endpoints. USB: xhci: Use GFP_ATOMIC while holding spinlocks. USB: xhci: Represent 64-bit addresses with one u64. USB: xhci: Handle short control packets correctly. USB: xhci: Correct Event Handler Busy flag usage. USB: xhci: Make debugging more verbose. USB: xhci: Don't oops if the host doesn't halt. USB: xhci: Check if the host controller died in IRQ handler. USB: xhci: Setup HW retries correctly. USB: xhci: Handle babble errors on transfers. USB: xhci: Fail gracefully if there's no SS ep companion descriptor. USB: Fix parsing of SuperSpeed Endpoint Companion descriptor. USB: xhci: Always align output device contexts to 64 bytes. USB: xhci: Stall handling bug fixes. USB: xhci: Work around for chain bit in link TRBs. USB: xhci: Fix slot and endpoint context debugging. USB: xhci: Configure endpoint code refactoring. USB: xhci: Set correct max packet size for HS/FS control endpoints. USB: xhci: Support full speed devices. USB: xhci: Handle stalled control endpoints. USB: xhci: Add quirk for Fresco Logic xHCI hardware. USB: xhci: Make TRB completion code comparison readable. USB: xhci: Handle babbling endpoints correctly. USB: xhci: Don't touch xhci_td after it's freed. USB: xhci: Check URB's actual transfer buffer size. USB: xhci: Check URB_SHORT_NOT_OK before setting short packet status. USB: xhci: Set -EREMOTEIO when xHC gives bad transfer length. USB: xhci: Support interrupt transfers. USB: Fix SS endpoint companion descriptor parsing. USB: xhci: Endpoint representation refactoring. USB: xhci: Refactor input device context setup. USB: xhci: Change how xHCI commands are handled. USB: xhci: Fix command wait list handling. USB: xhci: Set route string for all devices. USB: xhci: Set multi-TT field for LS/FS devices under hubs. USB: xhci: Support USB hubs. USB: Add hub descriptor update hook for xHCI USB: xhci: Stop debugging polling loop when HC dies. USB: xhci: Handle canceled URBs when HC dies. USB: xhci: Don't wait for a disable slot cmd when HC dies. USB: xhci: Fix dropping endpoints from the xHC schedule. USB: ehci: Fix isoc scheduling boundary checking. USB: ehci: Fix IST boundary checking interval math. USB: xhci: Fix bug memory free after failed initialization. USB: xhci: Fix TRB physical to virtual address translation. USB: xhci: Fix scratchpad deallocation. USB: xhci: Handle URB cancel, complete and resubmit race. USB: xhci: Re-purpose xhci_quiesce(). USB: xhci: Add watchdog timer for URB cancellation. USB: xhci: Remove unused HCD statistics code. USB: ehci: Minor constant fix for SCHEDULE_SLOP. USB: ehci: Respect IST when scheduling new split iTDs. USB: xhci: Add tests for TRB address translation. USB: xhci: Set transfer descriptor size field correctly. USB: xhci: Return -EPROTO on a split transaction error. USB: xhci: Return success for vendor-specific info codes. USB: xhci: Handle errors that cause endpoint halts. USB: xhci: Add correct email and files to MAINTAINERS entry. USB: usbtmc: Use usb_clear_halt() instead of custom code. USB: xhci: Make reverting an alt setting "unfailable". USB: xhci: Fix command completion after a drop endpoint. USB: Refactor code to find alternate interface settings. USB: Check bandwidth when switching alt settings. USB: Fix duplicate sysfs problem after device reset. USB: xhci: Fix error path when configuring endpoints. USB: xhci: Refactor code to free or cache endpoint rings. USB: xhci: Allow allocation of commands without input contexts. USB: xhci: Refactor test for vendor-specific completion codes. USB: xhci: Refactor code to clear port change bits. USB: xhci: Allow roothub ports to be disabled. USB: xhci: Notify the xHC when a device is reset. USB: Add call to notify xHC of a device reset. USB: xhci: Fix compile issues with xhci_get_slot_state() USB: Use bInterfaceNumber in bandwidth allocations. USB: xhci: Make endpoint interval debugging clearer. USB: xhci: properly set the "Mult" field of the endpoint context. USB: xhci: properly set endpoint context fields for periodic eps. USB: xhci: Fix issue with set interface after stall. USB: xhci: Limit bus sg_tablesize to 62 TRBs. USB: xhci: Fix check for room on the ring. USB: Add parsing of SuperSpeed endpoint companion descriptor. USB: Add stream ID field to struct urb. USB: xhci: Add memory allocation for USB3 bulk streams. USB: xhci: Correct assumptions about number of rings per endpoint. USB: Support for allocating USB 3.0 streams. USB: xhci: Avoid double free after streams are disabled. USB: xhci: Set stream ID to 0 after cleaning up stalls. USB: xhci: Wait for controller to be ready after reset. USB: xhci: Wait for host to start running. USB: xhci: Print NEC firmware version. USB: xHCI: Fix bug in link TRB activation change. USB: xHCI: Fix another bug in link TRB activation change. USB: Fix USB3.0 Port Speed Downgrade after port reset USB: xhci: Set EP0 dequeue ptr after reset of configured device. USB: xhci: Set Mult field in endpoint context correctly. USB: xhci: Remove obsolete debugging printk. USB: xhci: Performance - move functions that find ep ring. USB: xhci: Performance - move interrupt handlers into xhci-ring.c USB: xhci: Performance - move xhci_work() into xhci_irq() USB: xhci: Remove unnecessary reads of IRQ_PENDING register. USB: xhci: Make xhci_handle_event() static. USB: xhci: Minimize HW event ring dequeue pointer writes. USB: xhci: Make xhci_set_hc_event_deq() static. USB: xhci: Reduce reads and writes of interrupter registers. USB: xhci: Don't flush doorbell writes. USB: xhci: Set DMA mask for host. usb: Fix issue with USB 3.0 devices after system resume USB: xhci: Fix compile error when CONFIG_PM=n usb: Fix linker errors with CONFIG_PM=n xhci: Remove excessive printks with shared IRQs. xhci: Fix command ring replay after resume. xhci: Setup array of USB 2.0 and USB 3.0 ports. xhci: Don't let the USB core disable SuperSpeed ports. xhci: Fix issue with port array setup and buggy hosts. xhci: Resume bus on any port status change. usb: Realloc xHCI structures after a hub is verified. xhci: Use GFP_NOIO during device reset. usb: Always return 0 or -EBUSY to the runtime PM core. xhci: Remove old no-op test. USB: Remove bitmap #define from hcd.h USB: Fix usb_add_hcd() checkpatch errors. xhci: Rework port suspend structures for limited ports. xhci: Rename variables and reduce register reads. xhci: Remove references to HC_STATE_HALT. usb: Initialize hcd->state roothubs. xhci: Remove references to HC_STATE_RUNNING. USB: Clear "warm" port reset change. usb: Make USB 3.0 roothub have a SS EP comp descriptor. xhci: Modify check for TT info. xhci: Always use usb_hcd in URB instead of converting xhci_hcd. xhci: Change hcd_priv into a pointer. usb: Make usb_hcd_pci_probe labels more descriptive. usb: Refactor irq enabling out of usb_add_hcd() usb: Change usb_hcd->bandwidth_mutex to a pointer. usb: Store bus type in usb_hcd, not in driver flags. usb: Make core allocate resources per PCI-device. USB: Set usb_hcd->state and flags for shared roothubs. xhci: Index with a port array instead of PORTSC addresses. xhci: Refactor bus suspend state into a struct. xhci: Change xhci_find_slot_id_by_port() API. xhci: Register second xHCI roothub. xhci: Return a USB 3.0 hub descriptor for USB3 roothub. xhci: Limit roothub ports to 15 USB3 & 31 USB2 ports. xhci: Make roothub functions deal with device removal. xhci: Fix re-init on power loss after resume. xhci: Fixes for suspend/resume of shared HCDs. xhci: Return canceled URBs immediately when host is halted. USB: Remove bogus USB_PORT_STAT_SUPER_SPEED symbol. USB: Disable auto-suspend for USB 3.0 hubs. xhci: Update internal dequeue pointers after stalls. xhci: Fix cycle bit calculation during stall handling. xhci: Clean up cycle bit math used during stalls. xhci: Fix NULL pointer deref in handle_port_status() xhci: Tell USB core both roothubs lost power. xhci: Remove sparse warning about cmd_status. xhci 1.0: Only interrupt on short packet for IN EPs. xhci 1.0: Update TD size field format. xhci 1.0: Set transfer burst count field. xhci 1.0: Set transfer burst last packet count field. xhci: Fix bug in control transfer cancellation. xhci: Fix full speed bInterval encoding. xhci: Fix memory leak in ring cache deallocation. xhci: Fix memory leak bug when dropping endpoints xhci: Clear stopped_td when Stop Endpoint command completes. xhci: Don't submit commands when the host is dead. xhci: STFU: Remove function tracing. xhci: STFU: Don't print event ring dequeue pointer. xhci: STFU: Be quieter during URB submission and completion. Intel xhci: Add PCI id for Panther Point xHCI host. Intel xhci: Support EHCI/xHCI port switching. Intel xhci: Ignore spurious successful event. Intel xhci: Limit number of active endpoints to 64. xhci: Disable MSI for some Fresco Logic hosts. xhci: Reject double add of active endpoints. USB: Free bandwidth when usb_disable_device is called. xhci: Don't warn about zeroed bMaxBurst descriptor field. xhci: Always set urb->status to zero for isoc endpoints. USB: Fix up URB error codes to reflect implementation. xhci: Don't submit commands or URBs to halted hosts. xhci: Fix memory leak during failed enqueue. xhci: Fix failed enqueue in the middle of isoch TD. xhci: Remove TDs from TD lists when URBs are canceled. USB: Avoid NULL pointer deref in usb_hcd_alloc_bandwidth. xhci: Handle zero-length isochronous packets. xhci: If no endpoints changed, don't issue BW command. xhci: Rename virt_dev->port to fake_port. xhci: Refactor endpoint limit checking. xhci: Store the "real" root port number. xhci: Store information about roothubs and TTs. xhci: Store endpoint bandwidth information. xhci: Track interval bandwidth tables per port/TT. xhci: Implement HS/FS/LS bandwidth checking. xhci: Add software BW checking quirk to Intel PPT xHCI xhci: Don't print short isoc packets. xhci: Fix mult base in endpoint bandwidth info. xhci: USB 3.0 BW checking. USB: When hot reset for USB3 fails, try warm reset. xHCI/USB: Make xHCI driver have a BOS descriptor. xhci: Set slot and ep0 flags for address command. Revert "xHCI: reset-on-resume quirk for NEC uPD720200" UAS: Re-add workqueue items if submission fails. UAS: Use unique tags on non-streams devices. UAS: Free status URB when we can't find the SCSI tag. usbfs: Fix oops related to user namespace conversion. Trivial: xhci: Fix copy-paste error. xhci: Remove scary warnings about transfer issues. xhci: Remove warnings about MSI and MSI-X capabilities. xhci: Remove useless sg-list debugging. xhci: Remove debugging for individual transfers. xhci: Remove debugging about toggling cycle bits. xhci: Remove debugging about ring structure allocation. xhci: Be less verbose during URB cancellation. xhci: Better debugging for critical host errors. xhci: Clean up 32-bit build warnings. xhci: Fix USB 3.0 device restart on resume. Merge tag 'uas_for_sarah' of git://linutronix.de/users/bigeasy/linux into for-uas-next USB: Remove duplicate USB 3.0 hub feature #defines. xhci: Fix oops caused by more USB2 ports than USB3 ports. USB: Don't fail USB3 probe on missing legacy PCI IRQ. xHCI: Kick khubd when USB3 resume really completes. USB/xhci: Enable remote wakeup for USB3 devices. USB: Suspend functions before putting dev into U3. USB/xHCI: Enable USB 3.0 hub remote wakeup. USB: Refactor hub remote wake handling. USB/xHCI: Support device-initiated USB 3.0 resume. USB: Set wakeup bits for all children hubs. USB: Turn on auto-suspend for USB 3.0 hubs. USB: Fix handoff when BIOS disables host PCI device. xhci: Fix encoding for HS bulk/control NAK rate. xhci: Warn when hosts don't halt. xhci: Don't write zeroed pointers to xHC registers. xhci: Restore event ring dequeue pointer on resume. xhci: Fix register save/restore order. xhci: Avoid dead ports when CONFIG_USB_XHCI_HCD=n xhci: Add Lynx Point to list of Intel switchable hosts. xhci: Add new short TX quirk for Fresco Logic host. xhci: Reset reserved command ring TRBs on cleanup. xhci: Add roothub code to set U1/U2 timeouts. USB: Make sure to fetch the BOS desc for roothubs. USB: Refactor code to set LPM support flag. USB: Calculate USB 3.0 exit latencies for LPM. USB: Allow drivers to disable hub-initiated LPM. USB: Add support to enable/disable USB3 link states. USB: Disable USB 3.0 LPM in critical sections. xhci: Some Evaluate Context commands must succeed. xhci: Reserve one command for USB3 LPM disable. USB: Add macros for interrupt endpoint types. xhci: Add infrastructure for host-specific LPM policies. xhci: Add Intel U1/U2 timeout policy. USB: Disable hub-initiated LPM for comms devices. brcm80211: Fix compile error for .disable_hub_initiated_lpm. USB: Fix core compile with CONFIG_USB_SUSPEND=n xhci: Fix compile with CONFIG_USB_SUSPEND=n xhci: Fix DIV_ROUND_UP compile error. xhci: Fix error path return value. xhci: Fix hang on back-to-back Set TR Deq Ptr commands. USB: Fix LPM disable/enable during device reset. USB: Disable LPM while the device is unconfigured. USB: Fix LPM disable count mismatch on driver unbind. USB: Remove unused LPM variable. xhci: Export Latency Tolerance Messaging capabilities. USB: Enable Latency Tolerance Messaging (LTM). USB: Add a sysfs file to show LTM capabilities. xhci: Increase reset timeout for Renesas 720201 host. xhci: Add Etron XHCI_TRUST_TX_LENGTH quirk. xhci: Rate-limit XHCI_TRUST_TX_LENGTH quirk warning. xhci: Fix bug after deq ptr set to link TRB. xhci: Switch PPT ports to EHCI on shutdown. xhci: Intel Panther Point BEI quirk. USB: Enable LPM after a failed probe. usb: Don't enable LPM if the exit latency is zero. usb: Send Set SEL before enabling parent U1/U2 timeout. usb: trival: Fix debugging units mistake. xhci: Fix potential NULL ptr deref in command cancellation. xhci: Fix missing break in xhci_evaluate_context_result. xhci: trivial: Remove assigned but unused slot_ctx. xhci: trivial: Remove assigned but unused ep_ctx. xhci: Avoid global symbol pollution with handshake. xhci: Fix conditional check in bandwidth calculation. xHCI: Fix TD Size calculation on 1.0 hosts. xhci: Extend Fresco Logic MSI quirk. xhci: Handle HS bulk/ctrl endpoints that don't NAK. USB: Handle auto-transition from hot to warm reset. USB: Ignore xHCI Reset Device status. USB: Allow USB 3.0 ports to be disabled. USB: Increase reset timeout. USB: Ignore port state until reset completes. USB: Handle warm reset failure on empty port. xhci: Avoid "dead ports", add roothub port polling. USB: Don't use EHCI port sempahore for USB 3.0 hubs. USB: Prepare for refactoring by adding extra udev checks. USB: Rip out recursive call on warm port reset. USB: Fix connected device switch to Inactive state. USB: Use helper function hub_set_port_link_state USB: Refactor hub_port_wait_reset. xhci: Fix isoc TD encoding. xhci: Fix TD size for isochronous URBs. xhci: Don't warn on empty ring for suspended devices. Trivial: docs: Remove six-space indentation in REPORTING-BUGS. Docs: Step-by-step directions for reporting bugs. Docs: Add "Gather info" section to REPORTING-BUGS. Docs: Add info on supported kernels to REPORTING-BUGS. Docs: Expectations for bug reporters and maintainers Docs: Add a tips section to REPORTING-BUGS. Docs: Move ref to Frohwalt Egerer to end of REPORTING-BUGS xhci: Disable D3cold for buggy TI redrivers. xhci: Remove BUG_ON() in xhci_alloc_container_ctx. xhci: Remove BUG_ON in xhci_get_input_control_ctx. xhci: Refactor port status into a new function. xhci: Report USB 2.1 link status for L1 xhci: Avoid NULL pointer deref when host dies. usb: Don't fail port power resume on device disconnect. xhci-plat: Don't enable legacy PCI interrupts. Merge tag 'for-usb-2013-08-15-step-1' into for-usb-next xhci: Fix warning introduced by disabling runtime PM. usb: Fix xHCI host issues on remote wakeup. xhci: Don't enable/disable RWE on bus suspend/resume. usb: Disable USB 2.0 Link PM before device reset. xhci: Set L1 device slot on USB2 LPM enable/disable. usb: Don't enable USB 2.0 Link PM by default. usb: Push USB2 LPM disable on disconnect into USB core. usbtest: Fix BOS control test for USB 2.01 devices. xhci: Set scatter-gather limit to avoid failed block writes. xhci: Fix resume issues on Renesas chips in Samsung laptops Revert "usbcore: set lpm_capable field for LPM capable root hubs" Revert "xhci: replace xhci_write_64() with writeq()" Revert "xhci: replace xhci_read_64() with readq()" xhci 1.0: Limit arbitrarily-aligned scatter gather. Revert "xhci: Set scatter-gather limit to avoid failed block writes." Revert "xhci: Avoid infinite loop when sg urb requires too many trbs" Revert "usb: xhci: Link TRB must not occur within a USB payload burst" usb/xhci: Change how we indicate a host supports Link PM. xhci: Remove segments from radix tree on failed insert. xhci: Refactor command watchdog and fix split string. xhci: Kill streams URBs when the host dies. xhci: Transition maintainership to Mathias Nyman. xhci: Report max device limit when Enable Slot command fails.