This is the mail archive of the ecos-discuss@sourceware.org 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]
Other format: [Raw text]

Re: [Fwd: Building ecos image for SAM7EX256]


Benoit Callebaut wrote:
> Hello,
> I am new to eCos but not to embedded systems. I need to load eCos on
> my SAM7EX256 board.
> What I want to do exactly is to build a binary image containing the
> eCOS kernel (and everything needed like HAL,drivers...) and my
> application.
> Since I have a JTAG probe up and running, I don't want RedBoot. I
> won't use a terminal to communicate with the board neither by
> sserial port nor Ethernet.
> 
> My question is simple. How can I do it ?

Hello Benoit,

> My toolchains are installed and functionnal,

if you have the issue with a linking, please, provide more info about
the used toolchain, e.g.

arm-eabi-gcc -v

> I configured eCos for my board using the template.

What do you do _exactly_? What your template, startup type, options,
etc are?  Send/attach/pastebin your configuration file (.ecc) for a
reference.

> I have 2 issues. the definition of CYGPKG_ERROR is nowhere to be found,
> The makefile and the linker scripts doesn't generate a fully
> statically linked binary image.

And what the output is? (feel free to sent the error output).

TIP: http://catb.org/~esr/faqs/smart-questions.html

> How can I generate that image.

The CLI way is (do all in an empty directory, e.g.)

  cd /tmp && mkdir ecos && cd ecos
  ecosconfig new sam7ex256
  ecosconfig tree && make -s    ;# So far, so good.
  make -s tests                 ;# It takes a time.

  less -p CYGPKG_ERROR ecos.ecc ;# BTW, there is this package.

You have to get a lot of the tests under install/tests/* directory.

Try them, _but_, all eCos tests use diagnostic output on some serial
port. The got ecos.ecc for your target told me that your target has 3
serial ports and default console channel is 2 (i.e. third UART port,
the ports count itself from 0 to 2). Where do you expect to see the
output?  Perhaps, you have to change that CDL to get output on another
port.  Again you provide a very few of information. BTW, if your JTAG
device supports DCC you can use that, look around

  less -p JTAG ecos.ecc

If you will be able to run the built ecos tests/executables on your
target, then you will may to try own Makefile and sources.

Yet another thing, if your JTAG system cannot manage ELFs, use objcopy
to get the binary files

Example:

arm-eabi-objcopy -v -O install/tests/hal/common/current/tests/basic{,.bin}
copy from `install/tests/hal/common/current/tests/basic' [elf32-littlearm] to
`install/tests/hal/common/current/tests/basic.bin' [binary]

Then born and try to run that `basic.bin', etc. Of course, you have to
know what your console channel is for the build to observe the test's
output.

If you stay on linux, you can try/preview all eCos tests even having
no real hardware at all. Just use the host's GNU toolchain and the
eCos synthetic target as a sandbox.

HIH

Sergei

> Thanks,
> Benoit Callebaut

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


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