Compiling AT91bootstrap 3.8.8

AT91bootstrap is the 2nd level bootloader used by the Microchip ARM MPUs to initializate the internal hardware (clocks, peripherals, DDR DRAM, etc) at startup and load the Linux Kernel image from the first microSD partition. This article illustrates how to compile at91bootstrap 3.8 for the RoadRunner module

Toolchain installation

First of all you need to install the toolchain (cross compiler, linker, etc) on your Linux Ubuntu PC following this article (tested on Ubuntu 16.04):

Download the latest AT91bootstrap version from Microchip GitHub repository:

The GitHub repository is available here:

Clone this repository in your Linux PC by typing:

~$ git clone
~$ git checkout e63c7c2613fe1d0cfb2372b27577b9ad3d9eadb0

Move inside the new at91bootstrap directory and set the right configuration to use with the roadrunner board by typing:

~/at91bootstrap $ make sama5d2_roadrunner_defconfig

If you want to take a look to the at91bootstrap configuration run:

~/at91bootstrap $ make menuconfig

To launch the compilation type:

~/at91bootstrap $ make CROSS_COMPILE=arm-linux-gnueabihf-

The compilation result is this binary file:


A symbolic link is generated automatically during the at91bootstrap compilation so you can refer to it as at91bootstrap.bin.


Actually the RoadRunner SOMs mount the Microchip SAMA5D27 revision B that can boot boot directly from the QuadSPI memory but not from the MicroSD.

To transfer at91bootstrap.bin on the QuadSPI follow this guide:

Sergio Tanzilli
System designer, software developer and company co-founder
Webpages: and
Github repository: and