MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c | 31 +++-- MdeModulePkg/Bus/Pci/XhciDxe/Xhci.h | 3 +- MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c | 190 +++++++++++++++++++++---------- MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.h | 9 +- 4 files changed, 159 insertions(+), 74 deletions(-)
This fixes BULK data loss when transfer is detected as timeout but finished just before stopping endpoint. Ruiyu Ni (3): MdeModulePkg/XhciDxe: Refine IsTransferRingTrb and IsAsyncIntTrb MdeModulePkg/XhciDxe: Dump the CMD/EVENT/INT/BULK ring information MdeModulePkg/XhciDxe: Check timeout URB again after stopping endpoint MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c | 31 +++-- MdeModulePkg/Bus/Pci/XhciDxe/Xhci.h | 3 +- MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c | 190 +++++++++++++++++++++---------- MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.h | 9 +- 4 files changed, 159 insertions(+), 74 deletions(-) -- 2.12.2.windows.2 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Ray, Does XhciPei need the same update? Thanks, Star -----Original Message----- From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Ruiyu Ni Sent: Wednesday, June 28, 2017 6:40 PM To: edk2-devel@lists.01.org Subject: [edk2] [PATCH 0/3] Check timeout URB again after stopping endpoint This fixes BULK data loss when transfer is detected as timeout but finished just before stopping endpoint. Ruiyu Ni (3): MdeModulePkg/XhciDxe: Refine IsTransferRingTrb and IsAsyncIntTrb MdeModulePkg/XhciDxe: Dump the CMD/EVENT/INT/BULK ring information MdeModulePkg/XhciDxe: Check timeout URB again after stopping endpoint MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c | 31 +++-- MdeModulePkg/Bus/Pci/XhciDxe/Xhci.h | 3 +- MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c | 190 +++++++++++++++++++++---------- MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.h | 9 +- 4 files changed, 159 insertions(+), 74 deletions(-) -- 2.12.2.windows.2 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
This patch supports a certain USB device that: 1. contain BULK IN endpoint 2. BULK read from HOST gets timeout if a. there is no data from the endpoint in the device b. the data comes late For now, I haven't found any other USB devices that meet the above conditions except the Bluetooth host controller. Given the fact PEI USB functionality is merely to support USB storage access, I don't have chance to test in PEI phase if I made the similar change. So I don't prefer to update the PEI XHCI module. If we need to update PEI XHCI in future, we could do a "cherry-pick" later, with necessary unit test. Thanks/Ray > -----Original Message----- > From: Zeng, Star > Sent: Wednesday, June 28, 2017 9:31 PM > To: Ni, Ruiyu <ruiyu.ni@intel.com>; edk2-devel@lists.01.org > Cc: Tian, Feng <feng.tian@intel.com>; Wu, Hao A <hao.a.wu@intel.com> > Subject: RE: [edk2] [PATCH 0/3] Check timeout URB again after stopping > endpoint > > Ray, > > Does XhciPei need the same update? > > > Thanks, > Star > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Ruiyu Ni > Sent: Wednesday, June 28, 2017 6:40 PM > To: edk2-devel@lists.01.org > Subject: [edk2] [PATCH 0/3] Check timeout URB again after stopping > endpoint > > This fixes BULK data loss when transfer is detected as timeout but finished > just before stopping endpoint. > > Ruiyu Ni (3): > MdeModulePkg/XhciDxe: Refine IsTransferRingTrb and IsAsyncIntTrb > MdeModulePkg/XhciDxe: Dump the CMD/EVENT/INT/BULK ring > information > MdeModulePkg/XhciDxe: Check timeout URB again after stopping endpoint > > MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c | 31 +++-- > MdeModulePkg/Bus/Pci/XhciDxe/Xhci.h | 3 +- > MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c | 190 > +++++++++++++++++++++---------- > MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.h | 9 +- > 4 files changed, 159 insertions(+), 74 deletions(-) > > -- > 2.12.2.windows.2 > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Get the point, thanks. Star -----Original Message----- From: Ni, Ruiyu Sent: Thursday, June 29, 2017 10:50 AM To: Zeng, Star <star.zeng@intel.com>; edk2-devel@lists.01.org Cc: Tian, Feng <feng.tian@intel.com>; Wu, Hao A <hao.a.wu@intel.com> Subject: RE: [edk2] [PATCH 0/3] Check timeout URB again after stopping endpoint This patch supports a certain USB device that: 1. contain BULK IN endpoint 2. BULK read from HOST gets timeout if a. there is no data from the endpoint in the device b. the data comes late For now, I haven't found any other USB devices that meet the above conditions except the Bluetooth host controller. Given the fact PEI USB functionality is merely to support USB storage access, I don't have chance to test in PEI phase if I made the similar change. So I don't prefer to update the PEI XHCI module. If we need to update PEI XHCI in future, we could do a "cherry-pick" later, with necessary unit test. Thanks/Ray > -----Original Message----- > From: Zeng, Star > Sent: Wednesday, June 28, 2017 9:31 PM > To: Ni, Ruiyu <ruiyu.ni@intel.com>; edk2-devel@lists.01.org > Cc: Tian, Feng <feng.tian@intel.com>; Wu, Hao A <hao.a.wu@intel.com> > Subject: RE: [edk2] [PATCH 0/3] Check timeout URB again after stopping > endpoint > > Ray, > > Does XhciPei need the same update? > > > Thanks, > Star > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Ruiyu Ni > Sent: Wednesday, June 28, 2017 6:40 PM > To: edk2-devel@lists.01.org > Subject: [edk2] [PATCH 0/3] Check timeout URB again after stopping > endpoint > > This fixes BULK data loss when transfer is detected as timeout but > finished just before stopping endpoint. > > Ruiyu Ni (3): > MdeModulePkg/XhciDxe: Refine IsTransferRingTrb and IsAsyncIntTrb > MdeModulePkg/XhciDxe: Dump the CMD/EVENT/INT/BULK ring information > MdeModulePkg/XhciDxe: Check timeout URB again after stopping > endpoint > > MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c | 31 +++-- > MdeModulePkg/Bus/Pci/XhciDxe/Xhci.h | 3 +- > MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c | 190 > +++++++++++++++++++++---------- > MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.h | 9 +- > 4 files changed, 159 insertions(+), 74 deletions(-) > > -- > 2.12.2.windows.2 > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
© 2016 - 2024 Red Hat, Inc.