1
0
forked from me/IronOS

Dont use stale data in PD IRQ

This commit is contained in:
Ben V. Brown
2021-04-27 20:06:49 +10:00
parent a42c5ccd40
commit d4ea53cdcd

View File

@@ -66,10 +66,10 @@ void InterruptHandler::Thread(const void *arg) {
xTaskNotifyWait(0x00, 0x0F, NULL, TICKS_SECOND * 30); xTaskNotifyWait(0x00, 0x0F, NULL, TICKS_SECOND * 30);
} }
/* Read the FUSB302B status and interrupt registers */ /* Read the FUSB302B status and interrupt registers */
fusb_get_status(&status); if (fusb_get_status(&status)) {
/* If the I_GCRCSENT flag is set, tell the Protocol RX thread */ /* If the I_GCRCSENT flag is set, tell the Protocol RX thread */
// This means a message was recieved with a good CRC // This means a message was received with a good CRC
if (status.interruptb & FUSB_INTERRUPTB_I_GCRCSENT) { if (status.interruptb & FUSB_INTERRUPTB_I_GCRCSENT) {
readPendingMessage(); readPendingMessage();
} }
@@ -90,6 +90,7 @@ void InterruptHandler::Thread(const void *arg) {
} }
} }
} }
}
void InterruptHandler::irqCallback() { void InterruptHandler::irqCallback() {
if (TaskHandle != NULL) { if (TaskHandle != NULL) {
BaseType_t taskWoke = pdFALSE; BaseType_t taskWoke = pdFALSE;