[bootlin/training-materials updates] master: labs/buildroot-basic: update lab to Buildroot 2021.02 + newer U-Boot (29d5055e)
Thomas Petazzoni
thomas.petazzoni at bootlin.com
Sat May 29 17:00:36 CEST 2021
Repository : https://github.com/bootlin/training-materials
On branch : master
Link : https://github.com/bootlin/training-materials/commit/29d5055e6c337e5b114b93d8b797b796cde803af
>---------------------------------------------------------------
commit 29d5055e6c337e5b114b93d8b797b796cde803af
Author: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
Date: Fri May 21 09:16:33 2021 +0200
labs/buildroot-basic: update lab to Buildroot 2021.02 + newer U-Boot
Keep Linux at 5.4.x as newer versions seem to have a USB Gadget issue.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
>---------------------------------------------------------------
29d5055e6c337e5b114b93d8b797b796cde803af
labs/buildroot-basic/buildroot-basic.tex | 40 ++++++++++++++++++--------------
1 file changed, 22 insertions(+), 18 deletions(-)
diff --git a/labs/buildroot-basic/buildroot-basic.tex b/labs/buildroot-basic/buildroot-basic.tex
index 98a7c0d9..6ea3ced4 100644
--- a/labs/buildroot-basic/buildroot-basic.tex
+++ b/labs/buildroot-basic/buildroot-basic.tex
@@ -42,18 +42,18 @@ git clone https://git.buildroot.net/git/buildroot.git
\end{verbatim}
In the worst case, if neither work, you can download the Buildroot
-tarball \code{buildroot-2020.02.tar.bz2} from
+tarball \code{buildroot-2021.02.tar.bz2} from
\code{https://buildroot.org/downloads/} and extract it. However in this
case, you won't be able to use {\em Git} to visualize your changes and
keep track of them.
Go into the newly created \code{buildroot} directory.
-We're going to start a branch from the {\em 2020.02} Buildroot
+We're going to start a branch from the {\em 2021.02} Buildroot
release, with which this training has been tested.
\begin{verbatim}
-git checkout -b felabs 2020.02
+git checkout -b felabs 2021.02
\end{verbatim}
\section{Configuring Buildroot}
@@ -122,7 +122,7 @@ Now, let's do the configuration:
hesitate however to look at the available options when you select
\code{Buildroot toolchain} as the \code{Toolchain type}.
- \item Select \code{Arm ARM 2019.12} as the
+ \item Select \code{Arm ARM 2020.11} as the
\code{Toolchain}. Buildroot can either use pre-defined toolchains
such as the ones provided by ARM, or custom toolchains (either
downloaded from a given location, or pre-installed on your
@@ -151,16 +151,18 @@ Now, let's do the configuration:
\item By default, the most recent Linux kernel version available at
the time of the Buildroot release is used. In our case, we want to
- use a specific version: \code{5.4.30}. So select \code{Custom
- version} as the \code{Kernel version}, and enter \code{5.4.30} in
- the \code{Kernel version} text field that appears.
+ use a specific version: \code{5.10.27}\footnote{Later versions in
+ the 5.10.x stable branch have a regression on Ethernet over USB
+ support}. So select \code{Custom version} as the \code{Kernel
+ version}, and enter \code{5.10.27} in the \code{Kernel version}
+ text field that appears.
\item Now, we need to define which kernel configuration to
use. We'll start by using a default configuration provided within
the kernel sources themselves, called a {\em defconfig}. To
identify which {\em defconfig} to use, you can look in the kernel
sources directly, at
- \url{https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/configs/?id=v5.4}. In
+ \url{https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/configs/?id=v5.10}. In
practice, for this platform, it is not trivial to find which one
to use: the AM335x processor is supported in the Linux kernel as
part of the support for many other Texas Instruments processors:
@@ -180,27 +182,29 @@ Now, let's do the configuration:
\item On ARM, all modern platforms now use the {\em Device Tree} to
describe the hardware. The BeagleBone Black Wireless is in this
- situation, so you'll have to enable the \code{Build a Device Tree
- Blob} option. At
- \url{https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/?id=v5.4},
+ situation, so you'll have to enable the
+ \code{Build a Device Tree Blob} option. At
+ \url{https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/?id=v5.10},
you can see the list of all Device Tree files available in the
- 5.4 Linux kernel (note: the Device Tree files for boards use the
+ 5.10 Linux kernel (note: the Device Tree files for boards use the
\code{.dts} extension). The one for the BeagleBone Black Wireless
is \code{am335x-boneblack-wireless.dts}. Even if talking about
Device Tree is beyond the scope of this training, feel free to
have a look at this file to see what it contains. Back in
- Buildroot, type \code{am335x-boneblack-wireless} as the
- \code{In-tree Device Tree Source file names}.
+ Buildroot, enable \code{Build a Device Tree Blob (DTB)} and type
+ \code{am335x-boneblack-wireless} as the \code{In-tree Device Tree
+ Source file names}.
\item The kernel configuration for this platform requires having
OpenSSL available on the host machine. To avoid depending on the
- OpenSSL installed on the host machine, Buildroot can build its own
- version: just enable the \code{Needs host OpenSSL} option.
+ OpenSSL development files installed by your host machine Linux
+ distribution, Buildroot can build its own version: just enable the
+ \code{Needs host OpenSSL} option.
\end{itemize}
\item \code{Target packages} menu. This is probably the most important
- menu, as this is the one where you can select amongst the 2500+
+ menu, as this is the one where you can select amongst the 2800+
available Buildroot packages which ones should be built and
installed in your system. For our basic system, enabling
\code{Busybox} is sufficient and is already enabled by default, but
@@ -225,7 +229,7 @@ Now, let's do the configuration:
recent enough U-Boot version, we are going to use the latter,
called {\em Kconfig}.
- \item Use the custom version of U-Boot \code{2020.01}.
+ \item Use the custom version of U-Boot \code{2021.04}.
\item Look at
\url{https://gitlab.denx.de/u-boot/u-boot/-/tree/master/configs} to
More information about the training-materials-updates
mailing list