eCos Support for the ADS512101 Board — Overview


This document covers the ADS512101 board. The board contains an MPC5121e microprocessor, 128MiB of RAM, 64MiB of Flash and 128KiB of internal SRAM. There are external connections for a single UART and the Fast Ethernet Controller.

For typical eCos development, a RedBoot image is programmed into the on-chip 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 using the serial line.

Supported Hardware

The Flash memory consists of 256 blocks each of 256KiB, occupying 64MiB. The Flash is actually composed of two 32Mib devices operating in parallel. In a typical setup, RedBoot is programmed into flash at 0xFFF00000 and occupies the next 768KiB. The topmost block is used to manage the flash and holds RedBoot fconfig values. The first 255MiB may be used by application code.

There is a serial driver CYGPKG_IO_SERIAL_POWERPC_PSC which supports both the PSC based on-chip serial devices. Only PSC3 is actually brought out to a usable external connector. This device can be used by RedBoot for communication with the host. The serial driver package is loaded automatically when configuring for the ADS512101 target.

The FEC driver, CYGPKG_DEVS_ETH_POWERPC_FEC is used to control the FEC. The package CYGPKG_DEVS_ETH_POWERPC_ADS512101 is used to configure the generic driver for the MPC5121e and this board.

eCos manages the on-chip interrupt controller. The architecture-defined decrementer is used to implement the eCos system clock and the microsecond delay function. A GPT is used to implement a profiling timer. Other on-chip devices (Caches, GPIO, UARTs) are initialized only as far as is necessary for eCos to run. The remaining devices (PCI, PATA, SATA etc.) are not touched.


The ADS512101 port is intended to work with GNU tools configured for a powerpc-eabi target. The original port was undertaken using powerpc-eabi-gcc version 4.4.5, powerpc-eabi-gdb version 7.2, and binutils version 2.20.1.