Raspberry Pi boards require a closed-source binary to boot. I understand it this is handled by VideoCore IV GPU, and so far the Raspberry Pi foundation are not release source code for the bootloader, possibly due to legal reason (e.g. NDA to Broadcom). But I noticed people chatting about an open source bootloader for Raspberry Pi on sunxi-linux IRC channel.
Kristina describe the project as follows:
This is a small firmware for RPi VPU (VideoCore4) versions 1/2/3 that is capable of initializing VPU PLL (PLLC), UART, SDRAM and ARM itself. It’s intended to be used instead of stock
bootcode.binon RPi’s SD card. You need to have UART to see anything meaningful as far as output goes.
This has been tested on RPi1 Model B (Hynix PoP DDR), RPi 2 Model B and RPi 3 Model B (both Elpida DDR).
Bear in mind that this is all work in progress, and it’s not capable of booting Linux right now. The media part of the VPU is also not handled by this driver, and probably never will. There are multiple license used for the code, with some source licensed under “Broadcom Corporation”, which the license explains is itself released under a BSD 3-Clause License, as well as code released under GPLv2+.