potential GSOC project: Improve the Raspberry Pi BSP

Alan Cudmore alan.cudmore at gmail.com
Thu Mar 13 11:23:48 UTC 2014

( I posted this to the rtems-devel list by mistake, my apologies for the
duplicate message )

f there are still potential GSOC students out there looking for a project,
I would like to offer a potential project to work on: Improving the
Raspberry Pi BSP. I would be happy to mentor a student for this project.
Below is my description for the task.


One of the RTEMS Open Projects is to contribute a BSP or Board Support
Package for readily available boards. The Raspberry Pi is probably the most
available board at $25 and $35 USD, and there have been over two million of
these boards sold. The RTEMS head (4.11) currently has a basic BSP for the
Raspberry Pi, supporting the CPU, a single UART, and timer. It is enough to
run some basic RTEMS programs, but expanding the BSP to support peripherals
will make it much more useful.
For this project, the GSOC student could improve the peripheral support for
the Raspberry Pi BSP.
The peripherals we need to support (in order of increasing difficulty)
1. GPIO (This has been done by one user, but is not integrated)
2. I2C Bus
3. SPI Bus
4. Secure Digital card read and write support (using the SPI bus)
5. Graphics / RTEMS Framebuffer Support (I have a graphics demo working in
an RTEMS task)
6. USB Device support
7. HDMI/Graphics console (Requires framebuffer support and USB or GPIO
connected keyboard device)
8. Ethernet network support (Requires USB support)
The entire list is probably too much for a single student to accomplish, so
we can adjust the list of work according to what is possible.

It may also be a good idea to add support for both models of the Raspberry
Pi (256MB and 512MB) and be able to configure the memory map in the BSP to
match the boot time split between the CPU and GPU memory.

Finally, in order to do some of this coding, it may be necessary to come up
with a more efficient way to load and debug code on the Raspberry Pi.
Options include using U-boot or connecting a JTAG debug device to load code.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20140313/6ee2952f/attachment.html>

More information about the users mailing list