Skip to content
Snippets Groups Projects

fix(serial): Unblock if the queue is full

Merged schneider requested to merge schneider/218-tty-fix into master
1 file
+ 5
1
Compare changes
  • Side-by-side
  • Inline
  • f7719151
    fix(serial): Unblock if the queue is full · f7719151
    schneider authored
    For some reason a portYIELD() is not enough to give the serial task the
    option to run. I tried vTaskDelay() and that works. To not block more than
    needed portYIELD() is still called when the queue is not full and only
    call vTaskDelay() when it is full.
    
    Closes #218
@@ -119,7 +119,11 @@ void epic_uart_write_str(const char *str, size_t length)
SERIAL_WRITE_NOTIFY,
eSetBits
);
portYIELD();
if (bytes_sent == 0) {
vTaskDelay(1);
} else {
portYIELD();
}
}
} while (index < length);
}
Loading