-
-
Notifications
You must be signed in to change notification settings - Fork 218
Description
The linker in the 8266 Arduino code needed to split the .TEXT segment into two separate segments to support moving some std::function methods into IRAM (as they are used in IRQ callbacks for certain interfaces). See esp8266/Arduino#5922
There are now ".text" and ".text1" segments which comprise the program flash area. Our ELF2BIN.PY script has been updated to support this transparently, but it looks like PIO uses its own method of generating BIN files. Without the .text1 segment in the BIN image, the app obviously won't run and you'll get a boot loop. See esp8266/Arduino#5974
My quick scan makes me think the following two spots need to have .text1
added after .text
to generate a proper image.
platform-espressif8266/builder/main.py
Line 229 in 3e77597
"-bs", ".text", |
platform-espressif8266/builder/main.py
Line 250 in 3e77597
"-bs", ".text", |
Thx
-EFP3
Activity
Jason2866 commentedon Apr 11, 2019
With this changes, Tasmota builds are working again.
See esp8266/Arduino#5974 (comment)
Thx EFP3!
earlephilhower commentedon Apr 12, 2019
Also need to add
.text1
to the size computation, or it won't capture the full program usage in output:platform-espressif8266/builder/main.py
Line 151 in 3e77597
Include TEXT1 in generated bins, avoid boot loop
Include TEXT1 in generated bins, avoid boot loop
Include TEXT1 in generated bins, avoid boot loop (#144)