This is the mail archive of the ecos-discuss@sourceware.cygnus.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: How to create a new platform?


>>>>> "Grant" == Grant Edwards <grante@visi.com> writes:

Grant> I guess I've always operated under the philosophy that it is
Grant> the linker's job to determine where things are located in the
Grant> memory map.  It seems a bit inconsistent to use the linker
Grant> command file to determine the location of most of code and data
Grant> objects but then hard-wire the addresses of a few of them into
Grant> the source code.

I guess there are arguments for and against. I don't really have the
experience to tell which is better - as long as it's a conscious
choice on your part, I'm happy.  Some of the other eCos engineers may
know better, though :)

Grant> Do you prefer the "declare a pointer and then type-cast a
Grant> hard-wired constant value" method?

Grant>    const UartType Uart0Ptr = (UartType*) 0x3604000;

This is the method I'm familiar with. But I'm just a dumb kid :)

>> 2) mlt is the master file. You should create new files using the
>> ConfigTool's memory map editor. It will also generate the .h and
>> .ldi files for you.

Grant> What is ConfigTool?  Is that something that runs under NT?  I
Grant> tried editing the mlt file and then re-running the tcl
Grant> configuration script, but that didn't seem to have any effect.

Yup. Nasty Windows thingie. If you edit by hand, you only have to
change .h and .ldi. But if you ever want to contribute the work back
to Red Hat you'll want someone to make the proper .mlt file as
well.

The ConfigTool uses .mlt as the savefile, generating .h and .ldi files
as required. The .mlt file is not used by the target code.

Jesper

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