Move all exception strings to IRAM and out of both PMEM (illegal) and add
output of any assert() failinf conditions.
The exception handler may be called while the SPI interface is in a bad
state. This means no PROGMEM reads are allowed, and all data and functions
used must be in system RAM or IRAM.
Add a new helper macro, ets_printf_P(), which places a constant string in
IRAM and copies it to the stack before calling the real ets_printf().
This makes the code simpler to read as no unwieldy combinations of
ets_putc/ets_printf/... are required to output anything.
The old handler also mistakenly used PSTR() strings in some places, so
fix those with this patch as well.
Gives back ~180 bytes of heap to every sketch built as the exception handler
is always included an application.
- Fixes WiFi not being able to reconnect after SDK update (#4398)
- Fixes increased current in light sleep mode
- Fixes return value documentation for wifi_{get,set}_country
* LED_BUILTIN should be a #define
deduplicate and hide BUILTIN_LED as a deprecated constant
* test for LED_BUILTIN existence
* board:espino:variant: rename button macro (naming coherence)
GCC places vtables in .rodata, with a mangled name of "_ZTV*." Because
these are simply address jump tables, there is no need to place them in
RAM. Instead, have the linker place them in the .text (aka IRAM) section.
This will free up a variable amount of heap space, depending on the number
of classes with virtual functions used in any particular project.
* Case change and and 'none' reset option for Digistump Oak
The logo is 'digiStump', but is always written in text form as 'Digistump'.
The generator fixed an issue with the release version of 2.4.0 not having a resetMethod for the Digistump Oak, and hence not being able to be uploaded to without modifying the boards.txt file. However, the Oak doesn't support auto-reset via serial - it was primarily designed to be a cloud-programmed board.
* Regenerated boards.txt
* Regeneration of doc/boards.rst
+ generates boards.rst
+ generate and replace boards section in package.json
+ generate ldscripts
+ new debug option: OOM
+ new led menu for generic board
- recompile liblwip_gcc.a with new err_t definitions
- update espconn.h (function signature change, new function)
- add option to build lwip with debug-prefix-map