yaota8266
yaota8266 copied to clipboard
`iram1_0_seg' overflowed after upy and sdk update
I just upgraded to micropython github head and have trouble compiling the ota enabled version. I managed to compile boot8266 after commenting several lines in etshal.h (which were reported as doubly defined) and then my micropython compilations ends with:
xtensa-lx106-elf-ld -nostdlib -T./ota.ld -gc-sections -Map=ota.elf.map --cref -o ota.elf ota.o main.o ets_alt_task.o -L/home/ulno/unison/devel/ulnoiot/.local/external/firmware/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib -L. -laxtls -lmain -lnet80211 -lwpa -llwip_open -lpp -lphy -lnet80211 -lgcc
xtensa-lx106-elf-ld: ota.elf section `.text' will not fit in region `iram1_0_seg'
xtensa-lx106-elf-ld: region `iram1_0_seg' overflowed by 58084 bytes
Makefile:12: recipe for target 'ota.elf' failed
make[1]: *** [ota.elf] Error 1
I updated the sdk first and had to update micropython then to make it compile again, so now I am stuck at gettign OTA running again. Any hint or idea, what is wrong?
The original mistake mentions conflicting types in etshal.h for uart_div_modify (and others). When I use etshal.h from microppython/ports/esp8266 these conflicting types go away, but I get the aforementioned overflow error.
I assume that it has to do with using the new version of the esp-open-sdk.
I will try to see, if I can still compile yaota with an older version of the sdk.
Using b4ca4e59a81bb7d818271623fa580ec543e0603f of the esp-open-sdk makes yaota compile again.
When I use etshal.h from microppython/ports/esp8266 these conflicting types go away
Yes, the following patch from MicroPython which fixes this would need to be applied here: https://github.com/micropython/micropython/commit/e766a4af4a336816d42d65c01ee6c3e4cc207b7e
And to fix the linker error running out of iRAM1, a similar patch to this will be needed: https://github.com/micropython/micropython/commit/964bf935a39498e7224657787b0be277279d2bae
confirm https://github.com/pfalcon/yaota8266/pull/23 fixed this, issues.