Changes between Initial Version and Version 1 of Hardware/jCM/cCM2/bDev


Ignore:
Timestamp:
Jul 30, 2008, 6:17:36 PM (16 years ago)
Author:
seskar
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Hardware/jCM/cCM2/bDev

    v1 v1  
     1= Development Environment =
     2
     3== Firmware Programming ==
     4
     5=== JTAG Programmer Hardware ===
     6
     7We are using Olimex [http://www.olimex.com/dev/arm-usb-ocd.html ARM-USB-OCD] USB based JTAG debugger that is attached to the JTAG port on the CM2 board (JXX).
     8 
     9=== JTAG Programmer Software ===
     10
     11Software used for debugging and internal flash programming is [http://openfacts.berlios.de/index-en.phtml?title=Open_On-Chip_Debugger OpenOCD] (standard Debian package - {{{ apt-get isntall openocd }}} ).
     12
     13The file openocd.cfg, included in the source repository, has an appropriate configuration for programming the CM2 hardware, although you can experiment with different scripts to automate erasing the flash, verifying the image, and so forth.
     14
     15== Cross-compiler ==
     16
     17Software development environment is based on [http://www.codesourcery.com/gnu_toolchains/arm GNU Toolchain for ARM Processor]. Downloaded tarball is installed in /usr/{bin,lib,libexec,arm-none-linux-gnueabi}. The toolcahin was compiled with the ''arm-none-linux-gnueabi'' prefix so that (for example) compiler can be invoked with:
     18{{{
     19  arm-none-linux-gnueabi-gcc program.c -o program
     20}}}
     21
     22You can also get the latest version of gcc, binutils, and newlib, and compile these as {{{configure --target=arm-elf}}}.  Both the Makefile and the loader know (at least in theory) how to deal with ELF format CM2 images.  In this case tools are prefixed with "arm-elf", so for example an appropriate value for {{{CC}}} in the {{{Makefile}}} would be {{{CC=/usr/local/arm-elf-gcc}}}