Skip to content

Commit 6d8b754

Browse files
committed
lua: make heap independent
1 parent 71c6a1e commit 6d8b754

3 files changed

Lines changed: 17 additions & 16 deletions

File tree

firmware/controllers/engine_controller.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
#include "gppwm.h"
5555
#include "date_stamp.h"
5656
#include "rusefi_lua.h"
57+
#include "lua_heap.h"
5758
#include "buttonshift.h"
5859
#include "start_stop.h"
5960
#include "dynoview.h"
@@ -758,7 +759,10 @@ void commonEarlyInit() {
758759
#endif
759760

760761
#if EFI_LUA
761-
startLua();
762+
luaHeapInit();
763+
if (0) {
764+
startLua();
765+
}
762766
#endif // EFI_LUA
763767

764768
#if EFI_CAN_SERIAL

firmware/controllers/lua/lua.cpp

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -279,15 +279,13 @@ void LuaThread::ThreadTask() {
279279
static LuaThread luaThread;
280280

281281
void startLua() {
282-
luaHeapInit();
283-
284282
#if EFI_CAN_SUPPORT
285283
initLuaCanRx();
286284
#endif // EFI_CAN_SUPPORT
287285

288-
addConsoleActionII("set_lua_setting", [](int index, int value) {
289-
engineConfiguration->scriptSetting[index] = value;
290-
});
286+
addConsoleActionII("set_lua_setting", [](int index, int value) {
287+
engineConfiguration->scriptSetting[index] = value;
288+
});
291289

292290
luaThread.start();
293291

@@ -306,16 +304,13 @@ void startLua() {
306304
needsReset = true;
307305
});
308306

309-
addConsoleAction("luamemory", [](){
310-
efiPrintf("maxLuaDuration %lu", maxLuaDuration);
311-
maxLuaDuration = 0;
312-
efiPrintf("rx total/recent/dropped %d %d %d", totalRxCount,
313-
recentRxCount, getLuaCanRxDropped());
314-
efiPrintf("luaCycle %luus including luaRxTime %dus", NT2US(engine->outputChannels.luaLastCycleDuration),
315-
NT2US(rxTime));
316-
317-
luaHeapPrintInfo();
318-
});
307+
addConsoleAction("luainfo", [](){
308+
efiPrintf("maxLuaDuration %lu", maxLuaDuration);
309+
maxLuaDuration = 0;
310+
efiPrintf("rx total/recent/dropped %d %d %d", totalRxCount,
311+
recentRxCount, getLuaCanRxDropped());
312+
luaHeapPrintInfo();
313+
});
319314
}
320315

321316
#else // not EFI_UNIT_TEST

firmware/controllers/lua/lua_heap.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,8 @@ void luaHeapInit()
131131
extern uint8_t __heap_ccm_end__[];
132132
luaCcmHeap.init(__heap_ccm_base__, __heap_ccm_end__ - __heap_ccm_base__);
133133
#endif
134+
135+
addConsoleAction("heapinfo", luaHeapPrintInfo);
134136
}
135137

136138
static size_t luaMemoryUsed = 0;

0 commit comments

Comments
 (0)