OSD - Use async screen clear in OSD_STATE_UPDATE_CANVAS.

This commit is contained in:
Dominic Clifton 2022-01-27 16:21:44 +01:00
parent b6bc232a19
commit 1c3e562ac5
1 changed files with 4 additions and 4 deletions

View File

@ -300,8 +300,8 @@ void osdAnalyzeActiveElements(void)
{
/* This code results in a total RX task RX_STATE_MODES state time of ~68us on an F411 overclocked to 108MHz
* This upsets the scheduler task duration estimation and will break SPI RX communication. This can
* occur in flight, but only when the OSD profile is changed by switch so can be ignored, only causing
* one late task instance.
* occur in flight, e.g. when the OSD profile is changed by switch so can be ignored, or GPS sensor comms
* is lost - only causing one late task instance.
*/
schedulerIgnoreTaskExecTime();
@ -1272,7 +1272,7 @@ void osdUpdate(timeUs_t currentTimeUs)
case OSD_STATE_UPDATE_CANVAS:
// Hide OSD when OSDSW mode is active
if (IS_RC_MODE_ACTIVE(BOXOSD)) {
displayClearScreen(osdDisplayPort, DISPLAY_CLEAR_WAIT);
displayClearScreen(osdDisplayPort, DISPLAY_CLEAR_NONE);
osdState = OSD_STATE_COMMIT;
break;
}
@ -1284,7 +1284,7 @@ void osdUpdate(timeUs_t currentTimeUs)
} else {
// Background layer not supported, just clear the foreground in preparation
// for drawing the elements including their backgrounds.
displayClearScreen(osdDisplayPort, DISPLAY_CLEAR_WAIT);
displayClearScreen(osdDisplayPort, DISPLAY_CLEAR_NONE);
}
#ifdef USE_GPS