-
Notifications
You must be signed in to change notification settings - Fork 42
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
pogo: consume entire incoming uart RX buffer
This adds support for processing multiple POGO messages coming in via one receive_buf call, ie the entire RX buffer. This can happen when we're busy and multiple RX messages are buffered before receive_buf is called or if receive_buf aborts without processing any messages because the FSM thread is still busy. To support this, fsm_routine_uart_keyboard will now iterate over the contents of the read_fifo until now more messages can be found/parsed. Error handling is as before. Failure to parse a header in receive_buf will result in dismissing the rest of the RX buffer. Failure to parse a header/message in fsm_routine_uart_keyboard will result in aborting parsing and ultimately a timeout which will trigger a reset of read_fifo in entry_idle. Signed-off-by: Haakon Drews <[email protected]>
- Loading branch information
Showing
4 changed files
with
215 additions
and
94 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
Oops, something went wrong.