@@ -151,7 +151,7 @@ static volatile bool deckIsFlashed = false;
151151// The time (in ms) of the latest received UART frame, sync frames included
152152static volatile uint32_t lastFrameTs = 0 ;
153153
154- static void uart1RxISRCallback (uint8_t rxByte );
154+ static void uart1RxISRCallback (uint8_t rxByte , BaseType_t * xHigherPriorityTaskWoken );
155155
156156uint8_t lighthouseCoreDeckStatus () {
157157 // If the deck never flashed/booted we can't trust its state to probe it
@@ -188,7 +188,7 @@ void lighthouseCoreInit() {
188188 lighthouseStorageInitializeSystemTypeFromStorage ();
189189 lighthousePositionEstInit ();
190190
191- uart1RegisterRxCallback (uart1RxISRCallback );
191+ uart1SetRxCallback (uart1RxISRCallback );
192192
193193 for (int i = 0 ; i < CONFIG_DECK_LIGHTHOUSE_MAX_N_BS ; i ++ ) {
194194 modifyBit (& baseStationAvailabledMap , i , true);
@@ -275,8 +275,7 @@ void lighthouseCoreSetSystemType(const lighthouseBaseStationType_t type)
275275 lighthouseUpdateSystemType ();
276276}
277277
278- static void uart1RxISRCallback (uint8_t rxByte ) {
279- portBASE_TYPE xHigherPriorityTaskWoken = pdFALSE ;
278+ static void uart1RxISRCallback (uint8_t rxByte , BaseType_t * xHigherPriorityTaskWoken ) {
280279 static uint8_t data [UART_FRAME_LENGTH ];
281280 static int index = 0 ;
282281 static int syncCounter = 0 ;
@@ -313,10 +312,7 @@ static void uart1RxISRCallback(uint8_t rxByte) {
313312 bool isFrameValid = (isPaddingZero || frameIsr .isSyncFrame );
314313
315314 if (isFrameValid ) {
316- xQueueSendFromISR (lhFramePacketQueue , & frameIsr , & xHigherPriorityTaskWoken );
317- #ifndef UNIT_TEST_MODE
318- portYIELD_FROM_ISR (xHigherPriorityTaskWoken );
319- #endif
315+ xQueueSendFromISR (lhFramePacketQueue , & frameIsr , xHigherPriorityTaskWoken );
320316 }
321317 }
322318}
0 commit comments