Posts: 12
Joined: Fri Jan 13, 2012 5:15 pm

Firmware info?

Mon Jul 09, 2012 3:12 pm

Could someone 'explain like I'm five' how the RasPi firmware works?

I'd like to port Open Firmware to the RasPi.


Posts: 1090
Joined: Sun Sep 25, 2011 11:44 am
Location: Potters Bar, United Kingdom
Contact: Website

Re: Firmware info?

Mon Jul 09, 2012 4:54 pm

You cannot get that level of detail as the firmware is closed source and we do not even know the instruction set that the GPU uses so reverse-engineering it is not really practical.

Perhaps you should state exactly what you are trying to achieve as someone might have a suggestion on the way to proceed.

User avatar
Posts: 6427
Joined: Thu Sep 29, 2011 4:34 pm
Location: Berkshire UK Tralfamadore
Contact: Website

Re: Firmware info?

Mon Jul 09, 2012 4:58 pm

On power-up the SoC's firststage bootloader reads the SD card to find bootcode.bin, and runs that on the GPU
This loads loader.bin, and runs that on the GPU
Then start.elf is loaded as the firmware for the GPU
None of these are open source - all are behind Broardcom's NDA

start.elf then loads kernel.img and starts Arm, and only at this point is there any possibility of open source. You can of course replace kernel.img with anything you like.

User avatar
Posts: 224
Joined: Mon Nov 07, 2011 8:36 am
Location: TX, U.S.A. (was: RO, E.U.)
Contact: Website

Re: Firmware info?

Tue Jul 10, 2012 10:45 am

As Burngate said: Write your own bootloader in ARM code and save-it as kernel.img
You will have to handle all the SD access routines, framebuffer & USB keyboard & storage access.

Return to “Advanced users”