Build an universal tool which can help porting.


The Universal BSP Tool for Embedded Systems Porting project. The BSP Tool is designed to generate bootstrap code of any specific embedded OS or application on a target platform to ease porting process and shorten time-to-market for embedded systems.

A brief summary of features

Lower the barrier of porting due to proprietary hardware specification. Provide a universal and transparent standard to describe hardware specification and software booting process. Provide open, reusable hardware and software description components and can be extended. Reducing development time due to porting in embedded systems.

Group Member

  • 雍傑
  • 信宏


  • 士穎
  • 俊衛


As the increasing of system performance and computing power, embedded systems are more complicated and interactive. Therefore, operating system plays a more important role in embedded systems to utilize various hardware and software resources. System developers need to port various operating systems to various embedded hardware platform in order to meet the variability and fast-growing market requirement. However, porting an operating system is not trivial even we thoroughly understand the hardware specification and software design. Moreover, how successful we can port an operating system not only decides time to market but also affects performance of the embedded system intensively. Usually, a board support package (BSP) is provided by manufacturers to support porting. However, the BSP is usually proprietary and not transparent to users. We propose to release the porting problems by describing hardware specification and booting process of embedded systems in an open reusable document in XML format, BSPXML. We design a universal BSP tool to parse the BSPXML document and generate bootstrap code of any specific embedded OS on a target platform. Moreover, the BSP tool also provides BSP program interface for OS to call even after booting. We believe that the BSP tool is universal and it can ease OS porting process and shorten time-to-market for embedded systems.


As shown in the above Figure, developers can obtain the BSPXML document of the target platform from manufacturers and reuse or modify the booting process section of the target operating system. The BSP tool parses a BSPXML document to understand the hardware specification, such as the type of processor, memory, flash on the platform, etc, and generate the bootstrap code according to the booting process description. Developers can easily configure the target embedded platform to meet the system requirement by simply changing the attributes in the BSPXML document, for example, enabling or disabling the memory management unit (MMU). Moreover, the BSP tool also provides low-level functions of processor and devices, such as on-board timer or UART initialization for later use in operating systems.


Defined Elements


Experimental Result

  • Porting BSPTool on armboot-1.1.0
  • Porting BSPTool on u-boot-1.1.6


  • none

Future Work

  • Porting BSPTool on Operation Systems.


2006-07-06 BSPTool 1.0.1 Beta Released!
First public beta of BSPTool 1.0.1 released. You can get it from the Download Page.



projects/bsptool/index.txt · 上一次變更: 2008/02/14 17:55 由 shiing
CC Attribution-Noncommercial-Share Alike 3.0 Unported Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0