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

USB needs to implement FIFO #45

Open
bombasticbob opened this issue Nov 24, 2018 · 0 comments
Open

USB needs to implement FIFO #45

bombasticbob opened this issue Nov 24, 2018 · 0 comments

Comments

@bombasticbob
Copy link
Contributor

When NOT using the FIFO, interrupt storms significantly reduce performance without any real reason for being there. In short, the interrupt condition itself does not appear to be cleared properly, even if you write to the FIFO registers [this causes the opposite effect, actually, forcing a reset of some kind in the hardware], so you end up with rapid interrupt after interrupt with the USB.

The solution appears to be implementing the FIFO. The hardware was apparently intended to be run this way, even though having the FIFO off appeared to be a simpler implementation. It basically doesn't work properly without the FIFO. And hopefully, if there IS an interrupt storm, checking FIFO READ == FIFO WRITE and immediately existing the ISR will not impact performance too much.

See #33 and #41

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

No branches or pull requests

1 participant