usb: xhci: fix config fail of FS hub behind a HS hub with MTT
authorChunfeng Yun <chunfeng.yun@mediatek.com>
Fri, 4 Dec 2015 13:53:43 +0000 (15:53 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 4 Dec 2015 16:19:55 +0000 (08:19 -0800)
commit096b110a3dd3c868e4610937c80d2e3f3357c1a9
tree32acd569fcf726bc5b8bb5171d8a33d37cb563ad
parent84ed91526f9881886d70a082032236edaa20e7d4
usb: xhci: fix config fail of FS hub behind a HS hub with MTT

if a full speed hub connects to a high speed hub which
supports MTT, the MTT field of its slot context will be set
to 1 when xHCI driver setups an xHCI virtual device in
xhci_setup_addressable_virt_dev(); once usb core fetch its
hub descriptor, and need to update the xHC's internal data
structures for the device, the HUB field of its slot context
will be set to 1 too, meanwhile MTT is also set before,
this will cause configure endpoint command fail, so in the
case, we should clear MTT to 0 for full speed hub according
to section 6.2.2

Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/xhci.c