Every now and then we see warning messages like the one below.
What is the root cause of this and what can we do to avoid them?
(environment: CCES 2.9.3 and target is bf703)
[Information ld0290]: Output Section ‘dmc_sdram’ with start address 0x8823ec72 is not 4 byte aligned. This may result in elfloader creating misaligned LDR block(s) which can cause booting failure for target ‘ADSP-BF703’. Review build log to see if any misalignment reports fall within memory range 0x8823ec72 - 0x8825048c.
As per the description of message, we suspect that this misalignment might be due to the use of the INPUT_SECTION_ALIGN directive for trying to ensure the alignment of output sections. While it does ensure the appropriate alignment of the start of input sections is 4-byte aligned and objects within it.
If an input file section is broken up into individual fragments, then each fragment will be placed according to its alignment offset within the section. Individual placement of objects can result in dis-contiguous output section fragments that aren't necessarily aligned in the same way.
Breaking up of an input file section happens under the following conditions:1.The -ip switch is enabled.2.The -e switch is enabled and at least one piece is eliminated from the section.3.A symbol within the section is absolute placed using a RESOLVE command.
Most cases of this misalignment can be avoided by disabling individual placement by the linker, which can be found on the Linker/General page of the CCES tool settings and disable linker elimination, i.e. the -e option, on the Linker/Elimination page of the tool settings at the cost of some additional memory usage.
If this doesn't help you,Can please answer the following questions which help us to replicate your issue here.
Please explain exact scenario when you receive ld0290 message and provide the steps that you followed.Let us know whether you are facing issue while creating loader file for your project.
Can please tell us whether you are using any additional switches while building your project.
Please let us know whether you are facing this issue with all projects or this specific project.If possible, please share us your example project along with steps to simulate your issue here.This will help us to assist you further.