[Das U-Boot](https://en.wikipedia.org/wiki/Das U-Boot) (the universal bootloader), is arguably the richest, most flexible, and most actively developed FOSS bootloader available. It's released under the GNU GPL and maintained at http://www.denx.de/wiki/U-Boot/.
Uboot can be build with OpenWrt Buildroot, Embedded Linux Development Kit, and others. For documentation see ELDK-4 / ELDK-5.
^ U-Boot version ^ Purpose ^
| u-boot-..._brn | Meant to be loaded from brnboot (stock bootloader) as a 2nd stage bootloader into RAM |
| u-boot-..._nor | Meant to be flashed onto flash memory as main bootloader (at 0xB0000000), overwriting orignal bootloader |
| u-boot-..._ram | Meant to be uploaded via UART by serial if nor_bootloader got bricked, for rescue purposes |
->http://www.denx.de/wiki/view/DULG/UBootDoesntRunAfterUpgradingMyCompiler
-> uboot.config
-> toh/tp-link/tl-wr1043nd/flashlog
If somebody writes a patch for the bootloader implementation of a particular device, you will find links to this on the wiki-page for that device. Additionally, we accumulate all the patches written for a particular bootloader on its own page. Hopefully, you can get a better comprehension of the functionality of the bootloader by having a look at them: