eCos Support for the Adder Board — Overview


This document covers two Analogue & Micro boards, the Adder I and the Adder II. The Adder I board contains an MPC850 processor, 8Mb of RAM, 4MB of flash memory, and external connections for two serial channels and ethernet. The Adder II is identical except that it is built around an MPC852T processor, which is largely compatible with the MPC850. Everything in this document applies to both boards unless otherwise stated.

For typical eCos development, a RedBoot image is programmed into the flash memory, and the board will boot this image from reset. RedBoot provides gdb stub functionality so it is then possible to download and debug stand-alone and eCos applications via the gdb debugger. This can happen over either a serial line or over ethernet.

Supported Hardware

The flash memory consists of 64 blocks of 64k bytes each. In a typical setup, the first three flash blocks are used for the ROMRAM RedBoot image The topmost block is used to manage the flash and hold RedBoot fconfig values. The remaining 60 blocks between 0xFE030000 and 0xFE3EFFFF can be used by application code.

There is a serial driver CYGPKG_IO_SERIAL_POWERPC_QUICC_SMC which supports both the SMC2 (AdderII: SMC1) and SCC3 based on-chip serial devices. These devices can be used by RedBoot for communication with the host. If either of these devices is needed by the application, either directly or via the serial driver, then it cannot also be used for RedBoot communication. Another communication channel such as ethernet should be used instead. The serial driver package is loaded automatically when configuring for the Adder target.

There is an ethernet driver CYGPKG_DEVS_ETH_POWERPC_ADDER for the on-chip ethernet device (CYGPKG_DEVS_ETH_POWERPC_ADDERII for the AdderII). This driver is also loaded automatically when configuring for the Adder target.

eCos manages the on-chip interrupt controller. The architecture-defined decrementer is used to implement the eCos system clock and the microsecond delay function. Other on-chip devices (Caches, PIO, UARTs, FEC) are initialized only as far as is necessary for eCos to run. Other devices (SPI,I2C, PCMCIA) are not touched.


The Adder port is intended to work with GNU tools configured for a powerpc-eabi target. The original port was undertaken using powerpc-eabi-gcc version 3.2.1, powerpc-eabi-gdb version 5.3, and binutils version 2.13.1.