Hello Patrick Rudolph, Julius Werner, Paul Menzel, build bot (Jenkins),
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/18499
to look at the new patch set (#5).
Change subject: libpayload: Use interrupt transfers for USB hubs ......................................................................
libpayload: Use interrupt transfers for USB hubs
In interactive payloads, the USB stack's poll procedure is implicitly called from the UI loop. Since all USB control transfers are handled synchronously, polling hubs with these slows the UI significantly down.
So switch to interrupt transfers that are done asynchronously and only perform control transfers when the hub reported a status change.
We use the interrupt endpoint's max packet size instead of the theo- retical transfer length of `(bNrPorts + 1) / 8` as Linux' code mentions hubs that return too much data.
Change-Id: I5af02d63e4b8e1451b160b77f3611b93658a7a48 Signed-off-by: Nico Huber nico.h@gmx.de --- M payloads/libpayload/drivers/usb/usbhub.c 1 file changed, 148 insertions(+), 10 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/99/18499/5