Clear FIFO after keyboard is initialized

This commit is contained in:
Dreaded_X 2021-01-18 16:27:32 +01:00
parent e91940a40f
commit 8e66529df3
3 changed files with 10 additions and 0 deletions

View File

@ -15,5 +15,6 @@ struct FIFO {
void FIFO_push(volatile struct FIFO* fifo, uint8_t value);
uint8_t FIFO_pop(volatile struct FIFO* fifo);
int FIFO_size(volatile struct FIFO* fifo);
void FIFO_clear(volatile struct FIFO* fifo);
#endif

View File

@ -35,3 +35,10 @@ uint8_t FIFO_pop(volatile struct FIFO* fifo) {
int FIFO_size(volatile struct FIFO* fifo) {
return fifo->size;
}
void FIFO_clear(volatile struct FIFO* fifo) {
fifo->head = 0;
fifo->tail = 0;
fifo->size = 0;
// We don't need to clear the buffer as we will override it anyway
}

View File

@ -81,6 +81,8 @@ int main() {
send_keyboard_cmd(0xF3);
send_keyboard_cmd(0x00 | (0<<5) | (0<<4));
FIFO_clear(&buffer);
for (;;) {
send_keyboard_cmd_queue();