nodemcu-firmware/components/lua/common
Jade Mattsson 4cdebe7191
Initial support for ESP32-C6 and ESP32-H2, plus assorted fixes & improvements (#3646)
* Proof-of-concept multi-type console support via stdio

* Address crashes on linput's use of printf.

On an empty line input, a C3 with UART console would panic while attempting
to output the new Lua prompt. The backtrace shows a xQueueSemaphoreTake
with uxItemSize==0 as the panic cause, deep inside the uart driver, invoked
via vfs_uart and vfs_console layers, from printf.
Similarly, the printf for outputting a backspace/erase sequence would also
trigger a panic.

This workaround (of not mixing fflush() with printf) is likely merely hiding
a deeper issue, but it appears to be consistent. Plus, printf with no args
and a user-supplied format string is a no-no and should be fixed anyway.

* Work around IDF inconsistency with stdout buffering.

* Increase console task stack size.

Seems on Xtensa it ended up not being enough.

* Switch to single-byte console reads.

* Stop cheating and feed Lua from the right context.

* Work around IDF buffering stdout even when told not to, on ACM consoles.

* Initial build support for esp32c6.

Plus fixup of module selection for a variety of targets.

* Update github actions to node 20 versions.

* Update github build to deal with Lua 5.3 being default.

* Address fatal compiler warning.

Newer IDF toolchain is stricter, and we'd apparently failed to build test
the Lua-5.1 path for some time.

* Initial build support for esp32h2.

* Upgrade IDF to v5.1.3

* Fix left-over incorrect type in uzlib.

* Avoid null pointer crashes when debugging startup.

* Workaround for using wifi module on S2 with USB-CDC console.

---------

Co-authored-by: Jade Mattsson <github@frozenlogic.org>
2024-04-26 17:35:22 -04:00
..
lextra.c Port Terry's Lua 5.1 + 5.3 work from the esp8266 branch. 2021-08-22 02:03:05 +10:00
lextra.h Port Terry's Lua 5.1 + 5.3 work from the esp8266 branch. 2021-08-22 02:03:05 +10:00
lfs.c Ensure flash address is set before obtaining memory mapped address. 2022-06-04 15:57:18 +10:00
lfs.h Port Terry's Lua 5.1 + 5.3 work from the esp8266 branch. 2021-08-22 02:03:05 +10:00
linit.c Switch to IDF-provided VFS and standard `io` module. 2021-10-20 21:49:11 +11:00
linput.c Initial support for ESP32-C6 and ESP32-H2, plus assorted fixes & improvements (#3646) 2024-04-26 17:35:22 -04:00
linput.h Discard old console driver. 2021-08-23 23:00:54 +10:00
lnodeaux.c Port Terry's Lua 5.1 + 5.3 work from the esp8266 branch. 2021-08-22 02:03:05 +10:00
lnodeaux.h Port Terry's Lua 5.1 + 5.3 work from the esp8266 branch. 2021-08-22 02:03:05 +10:00
lpanic.c Fixed panic handling on REPL input. 2021-08-23 23:32:13 +10:00
lpanic.h Fixed panic handling on REPL input. 2021-08-23 23:32:13 +10:00