xhci: Fix isoc TD encoding.
authorSarah Sharp <sarah.a.sharp@linux.intel.com>
Fri, 11 Jan 2013 19:19:07 +0000 (11:19 -0800)
committerSarah Sharp <sarah.a.sharp@linux.intel.com>
Thu, 24 Jan 2013 17:53:36 +0000 (09:53 -0800)
commit760973d2a74b93eb1697981f7448f0e62767cfc4
tree4adec8398c6cf7fdb97c518b79f170f519339160
parentdba63b2f733ebfd89bbb15e8fe8ca10fd3871a7f
xhci: Fix isoc TD encoding.

An isochronous TD is comprised of one isochronous TRB chained to zero or
more normal TRBs.  Only the isoc TRB has the TBC and TLBPC fields.  The
normal TRBs must set those fields to zeroes.  The code was setting the
TBC and TLBPC fields for both isoc and normal TRBs.  Fix this.

This should be backported to stable kernels as old as 3.0, that contain
the commit b61d378f2da41c748aba6ca19d77e1e1c02bcea5 " xhci 1.0: Set
transfer burst last packet count field."

Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Cc: stable@vger.kernel.org
drivers/usb/host/xhci-ring.c