From 712a3f973ef4bdf1d1d3bdc338bd5c9dd6154547 Mon Sep 17 00:00:00 2001 From: rusefillc Date: Thu, 15 Feb 2024 12:50:10 -0500 Subject: [PATCH] Lua refresh rate transparency/logic etc #5939 hopefully not too much profiling --- firmware/controllers/lua/lua_can_rx.cpp | 1 + firmware/controllers/lua/lua_hooks.cpp | 1 + firmware/development/perf_trace.h | 4 +++- firmware/gen_perf_trace_enum.sh | 0 .../models/src/main/java/com/rusefi/tracing/EnumNames.java | 5 ++++- 5 files changed, 9 insertions(+), 2 deletions(-) mode change 100644 => 100755 firmware/gen_perf_trace_enum.sh diff --git a/firmware/controllers/lua/lua_can_rx.cpp b/firmware/controllers/lua/lua_can_rx.cpp index 42e791dca0..542150b879 100644 --- a/firmware/controllers/lua/lua_can_rx.cpp +++ b/firmware/controllers/lua/lua_can_rx.cpp @@ -56,6 +56,7 @@ void processLuaCan(const size_t busIndex, const CANRxFrame& frame) { } static void handleCanFrame(LuaHandle& ls, CanFrameData* data) { + ScopePerf perf(PE::LuaOneCanRxCallback); if (data->Callback == NO_CALLBACK) { // No callback, use catch-all function lua_getglobal(ls, "onCanRx"); diff --git a/firmware/controllers/lua/lua_hooks.cpp b/firmware/controllers/lua/lua_hooks.cpp index d24db84256..c2e0cad9e3 100644 --- a/firmware/controllers/lua/lua_hooks.cpp +++ b/firmware/controllers/lua/lua_hooks.cpp @@ -168,6 +168,7 @@ static int validateCanChannelAndConvertFromHumanIntoZeroIndex(lua_State* l) { } static int lua_txCan(lua_State* l) { + ScopePerf perf(PE::LuaOneCanTxFunction); int bus; int id; int ext; diff --git a/firmware/development/perf_trace.h b/firmware/development/perf_trace.h index 90352e9ef6..2aa6fc4349 100644 --- a/firmware/development/perf_trace.h +++ b/firmware/development/perf_trace.h @@ -70,7 +70,9 @@ enum class PE : uint8_t { LogTriggerTooth, LuaTickFunction, LuaOneCanRxFunction, - LuaAllCanRxFunction + LuaAllCanRxFunction, + LuaOneCanRxCallback, + LuaOneCanTxFunction, // enum_end_tag // The tag above is consumed by PerfTraceTool.java // please note that the tool requires a comma at the end of last value diff --git a/firmware/gen_perf_trace_enum.sh b/firmware/gen_perf_trace_enum.sh old mode 100644 new mode 100755 diff --git a/java_console/models/src/main/java/com/rusefi/tracing/EnumNames.java b/java_console/models/src/main/java/com/rusefi/tracing/EnumNames.java index 88c142ccdc..1325f3d7fa 100644 --- a/java_console/models/src/main/java/com/rusefi/tracing/EnumNames.java +++ b/java_console/models/src/main/java/com/rusefi/tracing/EnumNames.java @@ -1,5 +1,5 @@ package com.rusefi.tracing; -// generated Thu Feb 15 09:37:27 EST 2024 by class com.rusefi.PerfTraceEnumGenerator +// generated Thu Feb 15 09:45:57 EST 2024 by class com.rusefi.PerfTraceEnumGenerator public class EnumNames { public static final String[] TypeNames = { "INVALID", @@ -54,5 +54,8 @@ public class EnumNames { "LogTriggerTooth", "LuaTickFunction", "LuaOneCanRxFunction", + "LuaAllCanRxFunction", + "LuaOneCanRxCallback", + "LuaOneCanTxFunction", }; }