From 12b47f1f3c40e1a5a11d815544e1ece0cf7f2904 Mon Sep 17 00:00:00 2001 From: rusEfi Date: Wed, 29 Apr 2015 11:05:04 -0400 Subject: [PATCH] auto-sync --- firmware/controllers/system/event_queue.cpp | 4 ++++ firmware/controllers/trigger/trigger_central.cpp | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/firmware/controllers/system/event_queue.cpp b/firmware/controllers/system/event_queue.cpp index bc676f4358..92c93a27e8 100644 --- a/firmware/controllers/system/event_queue.cpp +++ b/firmware/controllers/system/event_queue.cpp @@ -16,6 +16,8 @@ #include "efitime.h" #include "efilib2.h" +int maxHowFarOff = 0; + scheduling_s::scheduling_s() { callback = NULL; next = NULL; @@ -149,6 +151,8 @@ int EventQueue::executeAll(uint64_t now) { { uint32_t before = GET_TIMESTAMP(); current->isScheduled = false; + int howFarOff = now - current->momentX; + maxHowFarOff = maxI(maxHowFarOff, howFarOff); current->callback(current->param); // even with overflow it's safe to subtract here lastEventQueueTime = GET_TIMESTAMP() - before; diff --git a/firmware/controllers/trigger/trigger_central.cpp b/firmware/controllers/trigger/trigger_central.cpp index 40e58e18e0..c0076dc950 100644 --- a/firmware/controllers/trigger/trigger_central.cpp +++ b/firmware/controllers/trigger/trigger_central.cpp @@ -229,6 +229,8 @@ extern uint32_t maxEventQueueTime; extern uint32_t hipLastExecutionCount; extern uint32_t hwSetTimerTime; +extern int maxHowFarOff; + void triggerInfo(Engine *engine) { #if (EFI_PROD_CODE || EFI_SIMULATOR) || defined(__DOXYGEN__) @@ -289,7 +291,7 @@ void triggerInfo(Engine *engine) { scheduleMsg(logger, "primary logic input: %s", hwPortname(boardConfiguration->logicAnalyzerPins[0])); scheduleMsg(logger, "secondary logic input: %s", hwPortname(boardConfiguration->logicAnalyzerPins[1])); - scheduleMsg(logger, "zeroTestTime=%d", engine->m.zeroTestTime); + scheduleMsg(logger, "zeroTestTime=%d maxHowFarOff=%d", engine->m.zeroTestTime, maxHowFarOff); scheduleMsg(logger, "advanceLookupTime=%d", engine->m.advanceTime);