From 87c05705ec4f10ec020e160d432de77365cb7149 Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Wed, 28 Jun 2023 15:43:44 +0200 Subject: [PATCH] core ctrl bugfix --- bsp_q7s/core/CoreController.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/bsp_q7s/core/CoreController.cpp b/bsp_q7s/core/CoreController.cpp index 4387e788..cea6c700 100644 --- a/bsp_q7s/core/CoreController.cpp +++ b/bsp_q7s/core/CoreController.cpp @@ -170,9 +170,6 @@ ReturnValue_t CoreController::initialize() { sdStateMachine(); - triggerEvent(core::REBOOT_SW, CURRENT_CHIP, CURRENT_COPY); - announceCurrentImageInfo(); - announceVersionInfo(); EventManagerIF *eventManager = ObjectManager::instance()->get(objects::EVENT_MANAGER); if (eventManager == nullptr or eventQueue == nullptr) { @@ -189,17 +186,22 @@ ReturnValue_t CoreController::initialize() { if (result != returnvalue::OK) { sif::warning << "Subscribing for GPS GPS_FIX_CHANGE event failed" << std::endl; } - + triggerEvent(core::REBOOT_SW, CURRENT_CHIP, CURRENT_COPY); + announceCurrentImageInfo(); + // This has to come before the version announce because it might be required for retrieving + // the firmware version. if (common::OBSW_VERSION_MAJOR >= 6 or common::OBSW_VERSION_MAJOR == 4) { UioMapper sysRomMapper(q7s::UIO_SYS_ROM); result = sysRomMapper.getMappedAdress(&mappedSysRomAddr, UioMapper::Permissions::READ_ONLY); if (result != returnvalue::OK) { // TODO: This might be a reason to switch to another image.. sif::error << "Getting mapped SYS ROM UIO address failed" << std::endl; - return ObjectManager::CHILD_INIT_FAILED; + result = ObjectManager::CHILD_INIT_FAILED; } } - return returnvalue::OK; + announceVersionInfo(); + + return result; } ReturnValue_t CoreController::initializeAfterTaskCreation() {