This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: .mlt and .ldi file format


"A Roturier" <roturier@hotmail.com> writes:

[...]

> is there any manual/documentation about mlt_arch_platform_rom(ram).mlt and
> mlt_arch_platform_rom(ram).ldi ? i'd like to dig more into these files and
> change some parameters like ecos entry poiny.

For the .mlt files, look in the eCos graphical configuration tool (which I have
never tested myself, though), it should allow you to edit the content of these
file. Then, it will generate correct .ldi & .h files according to your settings.

If you want to edit by hand, then forget the .mlt files and edit the .ldi & .h
files so that they remain coherent. The .ldi file contains CPP macros invocation.
The main hal directory for your architecture defines these macros so that the
result of passing the .ldi file through the C preprocessor will results into
your "target.ld" script. This script tells the linker, GNU ld, how to make an
output file from the objects and libraries it receives in input. Look at the GNU
ld documentation to find more about the format of such a script.

If your target uses the ELF format, you could search the web for a PDF paper
about ELF which will tell you everything about the remaining magic.

Now, if you want to change the start address of a *RAM* application, then modify
the second parameter of the line in ..._ram.ldi that defines the rom_vectors
output section:

        SECTION_rom_vectors (ram, 0x20000, LMA_EQ_VMA)

and delete your build directory completely before reconfiguring and rebuilding
eCos. However, if you want to change the start address of a *ROM* bootable
version of RedBoot, you may need to modify other files as well, such as
"vectors.S" for instance.

[...]

Robin


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]