Skip to content

Boot ROM Loader

M Hightower edited this page Mar 27, 2024 · 23 revisions

When the Boot ROM loader loads an eboot.bin with multiple segments, the segment(s) preceding the last segment may need to be align filled to 16 bytes. Otherwise, a message similar to ho 0 tail 12 room 4 will appear in the boot message log.

This can be done through the eboot.ld file. Add something like:

  .text : ALIGN(4)
  {
 ...
    . = ALIGN (16); /* Ensure 16-byte alignment to keep Boot ROM loader happy with multi-segment eboot */
  } >iram1_0_seg :iram1_0_phdr

That said, while this will get rid of messages like ho 0 tail 12 room 4 in the boot message log. It is not clear to me, that it is an issue that needs to be fixed. I cannot find any details on that log message. And, I have found boot message logs posted where it occurs and the boot is considered a success.

In reading through some posts I found some boot message logs that did not have the ho 0 tail 12 room 4 message and each segment was not 16 byte filled. At least for the one, I saw the sum of all the segments together was 16-bytes aligned.

They added a multi-segment boot loader in the Arduino ESP8266 pre 3.0 core, so this does not appear to be an issue or real concern

References

Clone this wiki locally