Changes between Version 12 and Version 13 of Hardware/jCM/cCM2/bDev


Ignore:
Timestamp:
Dec 19, 2011, 7:18:00 PM (12 years ago)
Author:
Ilya Chigirev
Comment:

Legend:

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

    v12 v13  
    1 == Development Environment ==
     1=== Development Environment ===
    22
    33SB3 is used for CM2 firware code development. In addition to all the necessary software, SB3 console has USB based JTAG programmer attached.
    44[[Image(SB3.jpg)]]
    55 
    6 === Prerequisites ===
     6==== Prerequisites ====
    77
    88Prerequisites include SUN JDK but only if you want to use Eclipse for development.
     
    1212}}}
    1313
    14 === Firmware Programming ===
     14==== Firmware Programming ====
    1515
    1616CM2 build configuration is done by overriding variables from the first few hundred lines of the Makefile on the {{{make}}} command line.
    1717
    18 ==== JTAG Programmer Hardware ====
     18===== JTAG Programmer Hardware =====
    1919
    2020We 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).
     
    2222[[Image(JTAG.jpg)]]
    2323 
    24 ==== JTAG Programmer Software ====
     24===== JTAG Programmer Software =====
    2525
    2626Software 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 }}} ).
     
    4242}}}
    4343
    44 === Cross-compiler ===
     44==== Cross-compiler ====
    4545
    4646Software development environment is based on the latest version of gcc, binutils, and newlib.  There are two tricks to compiling these tools: one is to use separate build directories, the other is to bootstrap a C compiler against the newlib headers, compile newlib with that compiler, then compile another C compiler with newlib installed.  Interwork and Multilib support are necessary.
     
    7070This build procedure is what makes people balk at building vanilla arm-elf debian packages.  Not that it's a lot of commands, but that there's a chicken and egg problem with newlib.
    7171
    72 === Debugger ===
     72==== Debugger ====
    7373
    7474Use [source:CM2/trunk/gdbinit-rom gdb initialization file] to properly interact with the JTAG debugger: