Files
rtems/c/src/lib/libbsp
Joel Sherrill dde1fedb09 2008-05-15 Joel Sherrill <joel.sherrill@OARcorp.com>
* startup/bspstart.c: Add capability for bootcard.c BSP Initialization
	Framework to ask the BSP where it has memory for the RTEMS Workspace
	and C Program Heap. These collectively are referred to as work area.
	If the BSP supports this, then it does not have to include code to
	split the available memory between the two areas. This reduces the
	amount of code in the BSP specific bspstart.c file. Additionally, the
	shared framework can initialize the C Library, call
	rtems_debug_enable(), and dirty the work area memory. Until most/all
	BSPs support this new capability, if the BSP supports this, it should
	call RTEMS_BSP_BOOTCARD_HANDLES_RAM_ALLOCATION from its configure.ac.
	When the transition is complete, this autoconf macro can be removed.
2008-05-15 15:55:28 +00:00
..
2004-04-21 10:43:04 +00:00

#
#  $Id$
#

Board Support Package library

This directory contains the source for the libbsp.a library.
For each supported board $(RTEMS_BSP) there is a standard
set of functions which must be provided in the BSP:

   + start up initialization
   + exit support
   + set vector
   + console IO support
   + drivers

In addition, the BSP also determines the memory usage by providing
any necessary linker scripts.

There are also "generic" drivers in this directory.  Currently
they are shmdr and stubdr.

Some of the supplied generic drivers (for example, shared memory) require
target board specific support routines.

NOTE: The library libbsp.a is actually built by $(RTEMS_BSP)/wrapup/Makefile.

To execute all of the test in the RTEMS Tests Suites the following
device drivers must be supplied:

   + Clock Tick
   + IO Driver Support
   + Timer
   + Shared Memory Driver Support

The Timer Driver is used only by the Timing Test Suite (c/src/tests/tmtests/*).
These tests are used to generate the execution times for RTEMS found in the
flyers.  It is recommended that these tests be run to verify a port to a new
CPU or with a newly developed BSP.  Looking at the times as compared to a
known CPU and target can yield insights into potential performance problems
in either the port, the BSP, or the target hardware.

The Shared Memory Support is only required to execute the Multiprocessor
Test Suite (c/src/tests/mptests/*).  Multiprocessing is not a required part
of a BSP.