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. If the code in the BSP is new, it would be best you placed it under the RTEMS Primary License. If you are porting code from another source for your BSP, please use one of the BSD distributions. The license must allow for statically linking proprietary code with it and not placing requirements on the proprietary code.
- 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? See just about any BSP's Makefile.am for the technique to "reach up" and use source from the libbsp/CPU/shared and libbsp/shared directories.
- 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 Git head. See RTEMS GIT Repository for more on getting RTEMS from Git.
- 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] git diff -u >MYBSP-changes.diff
- File an RTEMS PR in the Bugzilla with your source modifications and additions. Attach the diff and tarball of new files.