]> git.proxmox.com Git - mirror_edk2.git/commit - MdeModulePkg/Bus/Pci/XhciPei/XhciSched.c
MdeModulePkg/Xhci: Remove TDs from transfer ring when timeout happens
authorFeng Tian <feng.tian@intel.com>
Wed, 26 Aug 2015 01:19:09 +0000 (01:19 +0000)
committererictian <erictian@Edk2>
Wed, 26 Aug 2015 01:19:09 +0000 (01:19 +0000)
commit12e6c7381d297e9612145902d3eeab9c3a7a4b5e
tree5be979ff48856f5fc2ffcd704344367eebe88fc2
parent3b657538dc4e83cc304b4036dc5d63969a0c10db
MdeModulePkg/Xhci: Remove TDs from transfer ring when timeout happens

The error handling for timeout case is enhanced to remove TDs from
transfer ring. The original code only removed s/w URB, but the h/w
transfer descriptor TDs didn't get removed. It would cause data lost
for data stream peripheral, such as usb-to-serial device, from the
s/w perspective.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Baraneedharan Anbazhagan <anbazhagan@hp.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18313 6f19259b-4bc3-4df7-8a09-765794883524
MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c
MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c
MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.h
MdeModulePkg/Bus/Pci/XhciPei/XhcPeim.c
MdeModulePkg/Bus/Pci/XhciPei/XhciSched.c
MdeModulePkg/Bus/Pci/XhciPei/XhciSched.h