Skip to content
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

SOF interrupt is unconditionally disabled in process_control_request() #2973

Open
1 task done
not1337 opened this issue Feb 3, 2025 · 0 comments
Open
1 task done
Labels

Comments

@not1337
Copy link

not1337 commented Feb 3, 2025

Operating System

Linux

Board

rp2350

Firmware

RPI Pico SDK

What happened ?

During processing of a SETUP message in process_control_request() there is an unconditional call to dcd_sof_enable(rhport, false). This ignores the SOF user state set with tud_sof_cb_enable(true).
The workaround is to do a:

tud_sof_cb_enable(false);
tud_sof_cb_enable(true);

in tud_mount_cb() as well as tud_umount_cb(). This comes with the penalty of a potential SOF miss.

SOF should only be disabled if there is really no SOF user.

How to reproduce ?

As stated above.

Debug Log as txt file (LOG/CFG_TUSB_DEBUG=2)

n/a

Screenshots

No response

I have checked existing issues, dicussion and documentation

  • I confirm I have checked existing issues, dicussion and documentation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant