Board support package

From Wikipedia, the free encyclopedia

In embedded systems, a Board Support Package (BSP) is implementation specific support code for a given board that conforms to a given operating system. It is commonly built with a bootloader that contains the minimal device support to load the operating system and device drivers for all the devices on the board.

Some suppliers also provide a root file system, a toolchain for making programs to run on the embedded system (which would be part of the architecture support package), and configurators for the devices (while running).


[edit] Example

The Wind River board support package for the ARM Integrator 920T board contains, among other things, the following elements:

- A config.h file, which defines constants such as ROM_SIZE and RAM_HIGH_ADRS.
- A Makefile, which defines binary versions of VxWorks ROM images for programming into flash memory.
- A bootrom file, which defines the boot line parameters for the board.
- A target.ref file, which describes board-specific information such as switch and jumper settings, interrupt levels, and offset bias.
- A VxWorks image.
- Various C files, including:

flashMem.c -- the device driver for the board's flash memory
pciIomapShow.c -- mapping file for the PCI bus
primeCellSio.c -- TTY driver
sysLib.c -- system-dependent routines specific to this board
romInit.s -- ROM initialization module for the board; contains entry code for images that start running from ROM