From 40609f5d67dcf159e212407ec18fa4b6ce4ed49c Mon Sep 17 00:00:00 2001 From: Raphael Coeffic Date: Sun, 25 Jul 2021 12:00:36 +0200 Subject: [PATCH] Moved drawSplash() into UI task and fixed task prios --- radio/src/opentx.cpp | 6 ------ radio/src/rtos.h | 15 --------------- radio/src/tasks.cpp | 9 +++++++-- radio/src/tasks.h | 8 ++++---- 4 files changed, 11 insertions(+), 27 deletions(-) diff --git a/radio/src/opentx.cpp b/radio/src/opentx.cpp index 0688a4598..3d69d8129 100644 --- a/radio/src/opentx.cpp +++ b/radio/src/opentx.cpp @@ -1950,12 +1950,6 @@ int main() stackPaint(); #endif -#if defined(SPLASH) && !defined(STARTUP_ANIMATION) - if (!UNEXPECTED_SHUTDOWN()) { - drawSplash(); - } -#endif - #if defined(PCBHORUS) if (!IS_FIRMWARE_COMPATIBLE_WITH_BOARD()) { runFatalErrorScreen(STR_WRONG_PCBREV); diff --git a/radio/src/rtos.h b/radio/src/rtos.h index 9637ca38d..089305a0e 100644 --- a/radio/src/rtos.h +++ b/radio/src/rtos.h @@ -45,10 +45,6 @@ extern "C++" { extern uint64_t simuTimerMicros(void); extern uint8_t simuSleep(uint32_t ms); - static inline void RTOS_INIT() - { - } - static inline void RTOS_START() { } @@ -184,19 +180,8 @@ template StaticSemaphore_t mutex_struct; } RTOS_MUTEX_HANDLE; - // typedef TaskHandle_t RTOS_TASK_HANDLE; - // typedef SemaphoreHandle_t RTOS_MUTEX_HANDLE; - typedef RTOS_MUTEX_HANDLE RTOS_FLAG_HANDLE; - //typedef OS_FlagID RTOS_FLAG_HANDLE; - //typedef OS_EventID RTOS_EVENT_HANDLE; - - static inline void RTOS_INIT() - { - //CoInitOS(); - } - static inline void RTOS_START() { vTaskStartScheduler(); diff --git a/radio/src/tasks.cpp b/radio/src/tasks.cpp index c2d03a736..2d5f3f97e 100644 --- a/radio/src/tasks.cpp +++ b/radio/src/tasks.cpp @@ -243,6 +243,13 @@ bool perMainEnabled = true; TASK_FUNCTION(menusTask) { +#if defined(SPLASH) && !defined(STARTUP_ANIMATION) + if (!UNEXPECTED_SHUTDOWN()) { + drawSplash(); + TRACE("drawSplash() completed"); + } +#endif + opentxInit(); #if defined(PWR_BUTTON_PRESS) @@ -296,8 +303,6 @@ TASK_FUNCTION(menusTask) void tasksStart() { - RTOS_INIT(); - RTOS_CREATE_MUTEX(audioMutex); RTOS_CREATE_MUTEX(mixerMutex); diff --git a/radio/src/tasks.h b/radio/src/tasks.h index 6f761d843..d5aa3362c 100644 --- a/radio/src/tasks.h +++ b/radio/src/tasks.h @@ -33,10 +33,10 @@ #define AUDIO_STACK_SIZE 400 #define CLI_STACK_SIZE 1000 // only consumed with CLI build option -#define MIXER_TASK_PRIO 5 -#define AUDIO_TASK_PRIO 7 -#define MENUS_TASK_PRIO 10 -#define CLI_TASK_PRIO 10 +#define MIXER_TASK_PRIO (tskIDLE_PRIORITY + 4) +#define AUDIO_TASK_PRIO (tskIDLE_PRIORITY + 2) +#define MENUS_TASK_PRIO (tskIDLE_PRIORITY + 1) +#define CLI_TASK_PRIO (tskIDLE_PRIORITY + 1) extern RTOS_TASK_HANDLE menusTaskId; extern RTOS_DEFINE_STACK(menusStack, MENUS_STACK_SIZE);