1. 26 Apr, 2024 1 commit
    • Jade Mattsson's avatar
      Initial support for ESP32-C6 and ESP32-H2, plus assorted fixes & improvements (#3646) · 4cdebe71
      Jade Mattsson authored
      * 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 t...
      4cdebe71
  2. 11 Aug, 2021 1 commit
    • Johny Mattsson's avatar
      Add ESP32C3 support/coexistence. · f123d462
      Johny Mattsson authored
      The uzlib and parts of Lua had to be switched over to use the
      C standard int types, as their custom typedefs conflicted with
      RISC-V toolchain provided typedefs.
      
      UART console driver updated to do less direct register meddling
      and use the IDF uart driver interface for setup. Still using our
      own ISR rather than the default driver ISR. Down the line we
      might want to investigate whether the IDF ISR would be a better
      fit.
      
      Lua C modules have been split into common and ESP32/ESP32-S
      specific ones. In the future there might also be ESP32-C3
      specific modules, which would go into components/modules-esp32c3
      at that point.
      
      Our old automatic fixup of flash size has been discarded as it
      interferes with the checksumming done by the ROM loader and
      results in unbootable systems. The IDF has already taken on
      this work via the ESPTOOL_FLASHSIZE_DETECT option, which handles
      this situation properly.
      f123d462
  3. 22 Jul, 2019 1 commit