Skip to content

dwc_otg: pay attention to qh->interval when rescheduling periodic queues #4617

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Oct 6, 2021

Conversation

P33M
Copy link
Contributor

@P33M P33M commented Oct 6, 2021

A regression introduced in #3887
meant that if the newly scheduled transfer immediately returned data, and
the driver resubmitted a single URB after every transfer, then the effective
polling interval would end up being approx 1ms.

Use the larger of SCHEDULE_SLOP or the configured endpoint interval.

--

This fixes the broken mousepoll behaviour on Pi 1.

A regression introduced in raspberrypi#3887
meant that if the newly scheduled transfer immediately returned data, and
the driver resubmitted a single URB after every transfer, then the effective
polling interval would end up being approx 1ms.

Use the larger of SCHEDULE_SLOP or the configured endpoint interval.

Signed-off-by: Jonathan Bell <[email protected]>
@pelwell
Copy link
Contributor

pelwell commented Oct 6, 2021

That works for me. FYI, I've been testing on a Pi 2 (Pi 3 should also be affected) using a USB mouse and the following command:

pi@raspberrypi:~ $ dd if=/dev/input/mice of=/dev/null bs=3

Start it without disturbing the mouse, move the mouse in circles for as close to 10 seconds as you can, then hit Ctrl-C. The number of records is the number of mouse events. A correct result is something close to 600, indicating 60Hz polling.

@pelwell pelwell merged commit abff501 into raspberrypi:rpi-5.10.y Oct 6, 2021
popcornmix added a commit to raspberrypi/firmware that referenced this pull request Oct 6, 2021
popcornmix added a commit to Hexxeh/rpi-firmware that referenced this pull request Oct 6, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants