usb: dwc2: host: Totally redo the microframe scheduler
This totally reimplements the microframe scheduler in dwc2 to attempt to handle periodic splits properly. The old code didn't even try, so this was a significant effort since periodic splits are one of the most complicated things in USB. I've attempted to keep the old "don't use the microframe" schduler around for now, but not sure it's needed. It has also only been lightly tested. I think it's pretty certain that this scheduler isn't perfect and might have some bugs, but it seems much better than what was there before. With this change my stressful USB test (USB webcam + USB audio + some keyboards) crackles less. Acked-by: NJohn Youn <johnyoun@synopsys.com> Signed-off-by: NDouglas Anderson <dianders@chromium.org> Tested-by: NHeiko Stuebner <heiko@sntech.de> Tested-by: NStefan Wahren <stefan.wahren@i2se.com> Signed-off-by: NFelipe Balbi <balbi@kernel.org>
Showing
想要评论请 注册 或 登录