Version 1 (modified by JoelSherrill, on Jan 31, 2009 at 1:11:51 AM) (diff)

First shot at new page

Submitting a BSP

This page should help you in the process of preparing a BSP for submission and submitting it.

Please be willing to test your submission after it is merged on a regular basis. If your BSP can run on a simulator, teach us how to do it. If it can't, please try to get a copy of your hardware donated to the RTEMS Remote Access Lab so the core developers can periodically test your BSP.


  • Is the licensing of all code appropriate for RTEMS? No pure GPL code is acceptable.
  • Do all files have a CVS $Id$ in them?
  • Do all files have an authorship note at the top along with license information?
  • Did you unnecessarily copy any code and forget to use the shared copy?
  • Did you copy code from another BSP and end up with it the same or very close to the original source? If so, we will work with you to eliminate duplication.
  • Do you have warnings in your code? If so, eliminate them.


Please remember that you want to make sure someone else can duplicate your use of RTEMS on that board. Was it tricky? What do you wish someone had told you?

  • Did you write a README?
  • Did you provide a TIMES files with the results of the tmtests?
  • Did you write a Wiki page for the BSP?
  • How did you debug on this board? Make sure someone else knows how you did it. Did you have special scripts for a hardware debugger? Share your knowledge.


  • Can you compile all tests?
  • Did you run all tests? Did they pass?


  • Please merge your BSP against the CVS head. See RTEMS CVS Repository? for more on getting RTEMS from CVS.
  • You can gather all the source you added by doing something like this from the top of the tree assuming your BSP is named "MYBSP" and the CPU family is "MYCPU"
cd c/src/lib/libbsp/MYCPU
../../../../../bootstrap -c
cd -
tar cjf MYBSP.tar.bz2 c/src/lib/libbsp/MYCPU/MYBSP make/custom/MYBSP.cfg [ANY OTHER FILES YOU ADDED]
cvs diff -u >MYBSP-changes.diff
  • File an RTEMS PR with your source modifications and additions. Attach the diff and tarball of new files.