diff options
author | Angus Gratton <angus@redyak.com.au> | 2023-10-25 13:50:53 +1100 |
---|---|---|
committer | Damien George <damien@micropython.org> | 2023-11-09 12:28:28 +1100 |
commit | bcbdee235719d459a4cd60d51021454fba54cd0f (patch) | |
tree | fe63ccafd60e3211cdc45125976a1607cbbf7ad5 /examples/usercmodule/cppexample | |
parent | 2d363a23cb9e825200e772f973eab921a69e0646 (diff) |
rp2: Change to use TinyUSB dcd_event_handler hook.
This change:
- Has a small code size reduction.
- Should slightly improve overall performance. The old hook code
seemed to use between 0.1% and 1.6% of the total CPU time doing no-op
calls even when no USB work was required.
- USB performance is mostly the same, there is a small increase in
latency for some workloads that seems to because sometimes the hook
usbd_task() is called at the right time to line up with the next USB host
request. This only happened semi-randomly due to the timing of the hook.
Improving the wakeup latency by switching rp2 to tickless WFE allows the
usbd_task() to run in time for the next USB host request almost always,
improving performance and more than offsetting this impact.
This work was funded through GitHub Sponsors.
Signed-off-by: Angus Gratton <angus@redyak.com.au>
Diffstat (limited to 'examples/usercmodule/cppexample')
0 files changed, 0 insertions, 0 deletions