From 7454c9f8c5f67de4264e9eb731d905353d2cbf12 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Mon, 9 Jul 2018 19:16:06 +1000 Subject: [PATCH] AP_OSD: load font on startup this reduces memory fragmemtation and maximises available memory during update --- libraries/AP_OSD/AP_OSD_MAX7456.cpp | 9 ++++----- libraries/AP_OSD/AP_OSD_MAX7456.h | 1 - 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/libraries/AP_OSD/AP_OSD_MAX7456.cpp b/libraries/AP_OSD/AP_OSD_MAX7456.cpp index f67c62d3b5..73120fc227 100644 --- a/libraries/AP_OSD/AP_OSD_MAX7456.cpp +++ b/libraries/AP_OSD/AP_OSD_MAX7456.cpp @@ -148,7 +148,10 @@ bool AP_OSD_MAX7456::init() hal.scheduler->delay(1); _dev->read_registers(MAX7456ADD_VM0|MAX7456ADD_READ, &status, 1); _dev->get_semaphore()->give(); - return status == 0; + if (status != 0) { + return false; + } + return update_font(); } bool AP_OSD_MAX7456::update_font() @@ -342,10 +345,6 @@ void AP_OSD_MAX7456::reinit() void AP_OSD_MAX7456::flush() { - if (!font_updated) { - update_font(); - font_updated = true; - } check_reinit(); transfer_frame(); } diff --git a/libraries/AP_OSD/AP_OSD_MAX7456.h b/libraries/AP_OSD/AP_OSD_MAX7456.h index b11708fbb3..c399a3d860 100644 --- a/libraries/AP_OSD/AP_OSD_MAX7456.h +++ b/libraries/AP_OSD/AP_OSD_MAX7456.h @@ -59,7 +59,6 @@ private: uint8_t video_signal_reg; bool initialized; - bool font_updated; static const uint8_t video_lines_ntsc = 13; static const uint8_t video_lines_pal = 16;