1. 23 8月, 2011 5 次提交
  2. 17 8月, 2011 1 次提交
    • S
      xhci: Handle zero-length isochronous packets. · 48df4a6f
      Sarah Sharp 提交于
      For a long time, the xHCI driver has had this note:
      	/* FIXME: Ignoring zero-length packets, can those happen? */
      
      It turns out that, yes, there are drivers that need to queue zero-length
      transfers for isochronous OUT transfers.  Without this patch, users will
      see kernel hang messages when a driver attempts to enqueue an isochronous
      URB with a zero length transfer (because count_isoc_trbs_needed will return
      zero for that TD, xhci_td->last_trb will never be set, and updating the
      dequeue pointer will cause an infinite loop).
      
      Matěj ran into this issue when using an NI Audio4DJ USB soundcard
      with the snd-usb-caiaq driver.  See
      	https://bugzilla.kernel.org/show_bug.cgi?id=40702
      
      Fix count_isoc_trbs_needed() to return 1 for zero-length transfers (thanks
      Alan on the math help).  Update the various TRB field calculations to deal
      with zero-length transfers.  We're still transferring one packet with a
      zero-length data payload, so the total_packet_count should be 1. The
      Transfer Burst Count (TBC) and Transfer Last Burst Packet Count (TLBPC)
      fields should be set to zero.
      
      This patch should be backported to kernels as old as 2.6.36.
      Signed-off-by: NSarah Sharp <sarah.a.sharp@linux.intel.com>
      Tested-by: NMatěj Laitl <matej@laitl.cz>
      Cc: Daniel Mack <zonque@gmail.com>
      Cc: Alan Stern <stern@rowland.harvard.edu>
      Cc: stable@kernel.org
      48df4a6f
  3. 16 8月, 2011 2 次提交
  4. 15 8月, 2011 3 次提交
  5. 14 8月, 2011 27 次提交
  6. 13 8月, 2011 2 次提交
    • L
      Merge branch 'devicetree/merge' of git://git.secretlab.ca/git/linux-2.6 · 73e0881d
      Linus Torvalds 提交于
      * 'devicetree/merge' of git://git.secretlab.ca/git/linux-2.6:
        dt: add empty of_get_property for non-dt
      73e0881d
    • L
      Merge branch 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 · e211bc8d
      Linus Torvalds 提交于
      * 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (30 commits)
        USB: Serial: Add PID(0xF7C0) to FTDI SIO driver for a zeitcontrol-device
        USB: Serial: Add device ID for Sierra Wireless MC8305
        USB: Serial: Added device ID for Qualcomm Modem in Sagemcom's HiLo3G
        usb/host/pci-quirks.c: correct annotation of `ehci_dmi_nohandoff_table'
        USB: option driver: add PID for Vodafone-Huawei K4511
        USB: option driver: add PID for Vodafone-Huawei K4510
        USB: option driver: add PID for Vodafone-Huawei K3771
        USB: option driver: add PID for Vodafone-Huawei K3770
        usb: serial: ftdi_sio.c: For the FT232H FTDI_SIO_SET_BAUDRATE_REQUEST, index needs to be shifted too
        usb/isp1760: Added missing call to usb_hcd_check_unlink_urb() during unlink
        USB: EHCI: Fix test mode sequence
        USB: ftdi_sio: fix minor typo in get_ftdi_divisor
        USB: at91_udc: include linux/prefetch.h explicitly
        USB: usb-storage: unusual_devs entry for ARM V2M motherboard.
        usb/ehci-mxc: add missing inclusion of mach/hardware.h
        USB: assign instead of equal in usbtmc.c
        usb: renesas_usbhs: fixup usbhsg_for_each_uep 1st pos
        usb: renesas_usbhs: fix DMA build by including dma-mapping.h
        usb: gadget: net2272 - Correct includes
        usb: musb: fix oops on musb_gadget_pullup
        ...
      e211bc8d