tkey: gate CDC and FIDO handling on endpoint match, poll in readselect - #107
Open
jthornblad wants to merge 1 commit into
Open
tkey: gate CDC and FIDO handling on endpoint match, poll in readselect#107jthornblad wants to merge 1 commit into
jthornblad wants to merge 1 commit into
Conversation
- Change readselect() to non-blocking (true) instead of blocking (false) to be able to process data that have been put into the fifo from other places than main. - Guard the FIDO frame length check, read(), and fifo_hidmsg_add() behind `(ep == IO_FIDO) && (available >= 1)`, since these previously ran unconditionally even when the received data came from IO_CDC - Use discard() instead of read() to drop incomplete HID frames - Replace the fifo_hidmsg_add() failure's `return -1` with an assert, matching the other error-handling style in this loop
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
(ep == IO_FIDO) && (available >= 1), since these previously ran unconditionally even when the received data came from IO_CDCreturn -1with an assert, matching the other error-handling style in this loopType of change
Please tick any that are relevant to this PR and remove any that aren't.
Submission checklist