Table of Contents
Every time we made some changes to the Linux kernel, drivers or the file system, it’s very cumbersome to copy the files to SD card and then inserting the card into Raspberry Pi. We automate this process using U-boot.
We use U-boot to do the following -
- Initialized basic hardware
- Load kernel, device tree from non volatile storage or network (through tptp).
- Make Linux kernel to load network file system and pass other important command line parameters.
Download the U-boot
git clone git://git.denx.de/u-boot.git cd u-boot
configs directory contains configuration file for the Raspberry Pi 3 Model B and other popular boards.
Compile U-boot for Raspberry Pi 3 Model B
RPI 3 model b has already a predefined configuration in the u-boot configs directory. Let’s compiel the u-boot for this platform.
make clean; make mrproper; make distclean export CROSS_COMPILE=aarch64-rpi3-linux-uclibc- make rpi_3_defconfig make
Make sure that the U-boot is compiled for
ARM aarch64 architecture with the following command.