Rajasekhar Pulluru
2014-05-10 17:57:36 UTC
Hi,
The attached patch addresses following points.
- With some usb devices, often some endpoints gets stalled. Resetting the
endpoint helps recover usb transactions.
- When a usb device is removed while data is being copied to/from, all the
queued transfer requests needs to be aborted gracefully so that transfer
status is reported up to the application.
- Some boards require an additional interrupt acknowledgement specific to
the architecture. Added a function pointer that needs to be set during that
board arch-specific initialization. If this is not required, function
pointer needs to be set to NULL.
- Added debug functions to dump xhci registers that could help us in case
of any issue.
Note: I have manually patched the code changes from my older
version(verified) of code to the latest as of today in MAIN branch. And the
code is not compiled either, sorry about that. If anyone is interested to
patch this and verify, it would be really helpful.
Thanks & Regards,
Rajasekhar
The attached patch addresses following points.
- With some usb devices, often some endpoints gets stalled. Resetting the
endpoint helps recover usb transactions.
- When a usb device is removed while data is being copied to/from, all the
queued transfer requests needs to be aborted gracefully so that transfer
status is reported up to the application.
- Some boards require an additional interrupt acknowledgement specific to
the architecture. Added a function pointer that needs to be set during that
board arch-specific initialization. If this is not required, function
pointer needs to be set to NULL.
- Added debug functions to dump xhci registers that could help us in case
of any issue.
Note: I have manually patched the code changes from my older
version(verified) of code to the latest as of today in MAIN branch. And the
code is not compiled either, sorry about that. If anyone is interested to
patch this and verify, it would be really helpful.
Thanks & Regards,
Rajasekhar