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.
- BSP - Name of BSP.
- Architecture - Target CPU architecture
- CPU Model - CPU Model
- RTEMS Wiki Link (just URL) - URL from Wiki
- In BSP Master List on Wiki? - Check BSP List
- Manufacturer - Who made the board?
- Website (URL of Board) - Link to manufacturer's main page for board. If the board is no longer available, ask your mentor what to do. There may be archived information on the web at a university or a site that saves data sheets and manuals which is OK to use. If it is a generic BSP for a system on a chip with no obvious evaluation or reference board, then link to the CPU model's page.
- Year Released - Hardware release year. You can use a press release that announces the board or the copyright date on a manual or data sheet.
- One Line Description - short description.
- One Short Paragraph Description - longer description. Should be similar or copy of summary paragraph on BSP's wiki page. Edit both as needed. Improving the wiki is always a good thing.
- 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 any of the files have a CVS $Id$ in them?
- If so, please remove them and any resulting two lines of empty comments. These are remnants of RTEMS using CVS. Please help us keep them out.
- 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? Check BSP Template for the correct formatting.
- 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
- Send an RTEMS PR by following the Submitting a Patch guidelines with your source modifications and additions. Attach the diff and tarball of new files.