[bootlin/training-materials updates] master: Share agendas between both versions of Yocto course (ebec1d58)
Michael Opdenacker
michael.opdenacker at bootlin.com
Wed Sep 25 16:26:57 CEST 2019
Repository : https://github.com/bootlin/training-materials
On branch : master
Link : https://github.com/bootlin/training-materials/commit/ebec1d582e2593d47e9852d14c2a3e34344cf531
>---------------------------------------------------------------
commit ebec1d582e2593d47e9852d14c2a3e34344cf531
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date: Wed Sep 25 16:26:57 2019 +0200
Share agendas between both versions of Yocto course
- By mentioning both supported hardware boards
Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>
>---------------------------------------------------------------
ebec1d582e2593d47e9852d14c2a3e34344cf531
agenda/yocto-agenda.tex | 29 ++--
agenda/yocto-stm32-agenda.tex | 312 +-----------------------------------------
2 files changed, 21 insertions(+), 320 deletions(-)
diff --git a/agenda/yocto-agenda.tex b/agenda/yocto-agenda.tex
index 8551f3ce..85841bce 100644
--- a/agenda/yocto-agenda.tex
+++ b/agenda/yocto-agenda.tex
@@ -99,15 +99,13 @@ Yocto Project and OpenEmbedded training\\
\newline Electronic copy of lab files.\\
\hline
-\end{tabularx}}
+\end{tabularx}
\normalsize
\feagendatwocolumn
-{Hardware}
+{Hardware, first option}
{
- The hardware platform used for the practical labs of this training
- session is the {\bf BeagleBone Black board}, which features:
-
+ BeagleBone Black board
\begin{itemize}
\item An ARM AM335x processor from Texas Instruments (Cortex-A8
based), 3D acceleration, etc.
@@ -119,12 +117,25 @@ Yocto Project and OpenEmbedded training\\
\item 2 x 46 pins headers, to access UARTs, SPI buses, I2C buses
and more.
\end{itemize}
+ \includegraphics[width=5cm]{../slides/beagleboneblack-board/beagleboneblack.png}
}
-{}
+{Hardware, second option}
{
- \begin{center}
- \includegraphics[height=5cm]{../slides/beagleboneblack-board/beagleboneblack.png}
- \end{center}
+ STMicroelectronics STM32MP157C-DK1 Discovery board
+ \begin{itemize}
+ \item STM32MP157C (dual Cortex-A7) CPU from STMicroelectronics
+ \item USB powered
+ \item 512 MB DDR3L RAM
+ \item Gigabit Ethernet port
+ \item 4 USB 2.0 host ports
+ \item 1 USB-C OTG port
+ \item 1 Micro SD slot
+ \item On-board ST-LINK/V2-1 debugger
+ \item Arduino Uno v3-compatible header
+ \item Audio codec
+ \item Misc: buttons, LEDs
+ \end{itemize}
+ \includegraphics[width=5cm]{../slides/discovery-board-dk1/discovery-board-dk1.png}
}
\section{Day 1 - Morning}
diff --git a/agenda/yocto-stm32-agenda.tex b/agenda/yocto-stm32-agenda.tex
deleted file mode 100644
index 9b0dd30e..00000000
--- a/agenda/yocto-stm32-agenda.tex
+++ /dev/null
@@ -1,311 +0,0 @@
-\documentclass[a4paper,12pt,obeyspaces,spaces,hyphens]{article}
-
-\usepackage{agenda}
-\usepackage{colortbl}
-\usepackage{xcolor}
-\usepackage{calc}
-
-\hypersetup{pdftitle={Yocto Project and OpenEmbedded development training},
- pdfauthor={Bootlin}}
-
-\renewcommand{\arraystretch}{2.0}
-
-\begin{document}
-
-\thispagestyle{fancy}
-
-\setlength{\arrayrulewidth}{0.8pt}
-
-\begin{center}
-\LARGE
-Yocto Project and OpenEmbedded training\\
-\large
-3-day session
-\end{center}
-\vspace{1cm}
-
-\small
-\newcolumntype{g}{>{\columncolor{fedarkblue}}m{4cm}}
-\newcolumntype{h}{>{\columncolor{felightblue}}X}
-
-\arrayrulecolor{lightgray} {
- \setlist[1]{itemsep=-5pt}
- \begin{tabularx}{\textwidth}{|g|h|}
- {\bf Title} & {\bf Yocto Project and OpenEmbedded development training} \\
- \hline
-
- {\bf Overview} &
- Understanding the Yocto Project \par
- Using it to build a root filesystem and run it on your target \par
- Writing and extending recipes \par
- Creating layers \par
- Integrating your board in a BSP \par
- Creating custom images \par
- Application development with the Yocto Project SDK \\
- \hline
-
- {\bf Duration} & {\bf Three} days - 24 hours (8 hours per day).
- \newline 40\% of lectures, 60\% of practical labs. \\
- \hline
-
- {\bf Trainer} & One of the engineers listed on
- \newline \url{https://bootlin.com/training/trainers/}\\
- \hline
-
- {\bf Language} & Oral lectures: English, French.
- \newline Materials: English.\\
- \hline
-
- {\bf Audience} & Companies and engineers interested in using
- the Yocto Project to build their embedded Linux system.\\
- \hline
-
- {\bf Prerequisites} & {\bf Knowledge of embedded Linux} as covered
- in our embedded Linux training
- (\url{https://bootlin.com/training/embedded-linux/}) \vspace{1em}
- \newline {\bf Knowledge and practice of Unix or GNU/Linux commands}
- \newline People lacking experience on this topic should get
- trained by themselves, for example with our freely available
- on-line slides:
- \newline \url{https://bootlin.com/blog/command-line/} \\
- \hline
- \end{tabularx}
-
- \begin{tabularx}{\textwidth}{|g|h|}
- {\bf Required equipment} &
- {\bf For on-site sessions only.}
- \newline Everything is supplied by Bootlin in public
- sessions.
- \begin{itemize}
- \item Video projector
- \item PC computers with at least 8 GB of RAM, a CPU at least
- equivalent to an Intel Core i5 and Ubuntu Linux
- installed in a {\bf free partition of at least 40 GB. Using Linux
- in a virtual machine is not supported}, because of issues
- connecting to real hardware.
- \item We need Ubuntu Desktop 16.04 (Xubuntu and
- other variants are fine). We don't support other
- distributions, because we can't test all possible package versions.
- \item {\bf High Speed Connection to the Internet} (direct or through the
- company proxy).
- \item {\bf PC computers with valuable data must be backed up}
- before being used in our sessions. Some people have already made
- mistakes during our sessions and damaged work data.
- \end{itemize} \\
- \hline
-
- {\bf Materials} & Print and electronic copies of presentations and
- labs.
- \newline Electronic copy of lab files.\\
- \hline
-
-\end{tabularx}}
-\normalsize
-
-\feagendatwocolumn
-{Hardware}
-{
- Using the STMicroelectronics STM32MP157C-DK1 Discovery board in all practical labs
- STM32MP157C (dual Cortex-A7) CPU from STMicroelectronics, which features:
-
- \begin{itemize}
- \item USB powered
- \item 512 MB DDR3L RAM
- \item Gigabit Ethernet port
- \item 4 USB 2.0 host ports
- \item 1 USB-C OTG port
- \item 1 Micro SD slot
- \item On-board ST-LINK/V2-1 debugger
- \item Arduino Uno v3-compatible header
- \item Audio codec
- \item Misc: buttons, LEDs
- \end{itemize}
-}
-{}
-{
- \begin{center}
- \includegraphics[height=5cm]{../slides/discovery-board-dk1/discovery-board-dk1.png}
- \end{center}
-}
-
-\section{Day 1 - Morning}
-
-\feagendaonecolumn
-{Lecture - Introduction to embedded Linux build systems}
-{
- \begin{itemize}
- \item Overview of an embedded Linux system architecture
- \item Methods to build a root filesystem image
- \item Usefulness of build systems
- \end{itemize}
-}
-\\
-\feagendatwocolumn
-{Lecture - Overview of the Yocto Project and the Poky reference system}
-{
- \begin{itemize}
- \item Organization of the project source tree
- \item Building a root filesystem image using the Yocto Project
- \end{itemize}
-}
-{Lab - First Yocto Project build}
-{
- \begin{itemize}
- \item Downloading the Poky reference build system
- \item Building a system image
- \end{itemize}
-}
-
-\section{Day 1 - Afternoon}
-\feagendatwocolumn
-{Lecture - Using Yocto Project - basics}
-{
- \begin{itemize}
- \item Organization of the build output
- \item Flashing and installing the system image
- \end{itemize}
-}
-{Lab - Flashing and booting}
-{
- \begin{itemize}
- \item Flashing and booting the image on the BeagleBone
- \end{itemize}
-}
-
-\feagendatwocolumn
-{Lecture - Using Yocto Project - advanced usage}
-{
- \begin{itemize}
- \item Configuring the build system
- \item Customizing the package selection
- \end{itemize}
-}
-{Lab - Using NFS and configuring the build}
-{
- \begin{itemize}
- \item Configuring the BeagleBone to boot over NFS
- \item Learn how to use the \code{PREFERRED_PROVIDER} mechanism
- \end{itemize}
-}
-\\
-\section{Day 2 - Morning}
-
-\feagendatwocolumn
-{Lecture - Writing recipes - basics}
-{
- \begin{itemize}
- \item Writing a minimal recipe
- \item Adding dependencies
- \item Development workflow with {\em bitbake}
- \end{itemize}
-}
-{Lab - Adding an application to the build}
-{
- \begin{itemize}
- \item Writing a recipe for {\em nInvaders}
- \item Adding {\em nInvaders} to the final image
- \end{itemize}
-}
-
-\feagendaonecolumn
-{Lecture - Writing recipes - advanced features}
-{
- \begin{itemize}
- \item Extending and overriding recipes
- \item Adding steps to the build process
- \item Learn about classes
- \item Analysis of examples
- \item Logging
- \item Debugging dependencies
- \end{itemize}
-}
-
-\section{Day 2 - Afternoon}
-
-\feagendaonecolumn
-{Lab - Learning how to configure packages}
-{
- \begin{itemize}
- \item Extending a recipe to add configuration files
- \item Using \code{ROOTFS_POSTPROCESS_COMMAND} to modify the final rootfs
- \item Studying package dependencies
- \end{itemize}
-}
-\feagendatwocolumn
-{Lecture - Layers}
-{
- \begin{itemize}
- \item What layers are
- \item Where to find layers
- \item Creating a layer
- \end{itemize}
-}
-{Lab - Writing a layer}
-{
- \begin{itemize}
- \item Learn how to write a layer
- \item Add the layer to the build
- \item Move {\em nInvaders} to the new layer
- \end{itemize}
-}
-
-\section{Day 3 - Morning}
-
-\feagendatwocolumn
-{Lecture - Writing a BSP}
-{
- \begin{itemize}
- \item Extending an existing BSP
- \item Adding a new machine
- \item Bootloaders
- \item Linux and the linux-yocto recipe
- \item Adding a custom image type
- \end{itemize}
-}
-{Lab - Implementing the kernel changes}
-{
- \begin{itemize}
- \item Extend the kernel recipe to add the nunchuk driver
- \item Configure the kernel to compile the nunchuk driver
- \item Play {\em nInvaders}
- \end{itemize}
-}
-
-\section{Day 3 - Afternoon}
-
-\feagendatwocolumn
-{Lecture - Creating a custom image}
-{
- \begin{itemize}
- \item Writing an image recipe
- \item Adding users/groups
- \item Adding custom configuration
- \item Writing and using package groups recipes
- \end{itemize}
-}
-{Lab - Creating a custom image}
-{
- \begin{itemize}
- \item Writing a custom image recipe
- \item Adding {\em nInvaders} to the custom image
- \end{itemize}
-}
-\feagendatwocolumn
-{Lecture - Creating and using an SDK}
-{
- \begin{itemize}
- \item Understanding the purpose of an SDK for the application
- developer
- \item Building an SDK for the custom image
- \end{itemize}
-}
-{Lab - Experimenting with the SDK}
-{
- \begin{itemize}
- \item Building an SDK
- \item Using the Yocto Project SDK
- \end{itemize}
-}
-
-\end{document}
-
diff --git a/agenda/yocto-stm32-agenda.tex b/agenda/yocto-stm32-agenda.tex
new file mode 120000
index 00000000..e1938c38
--- /dev/null
+++ b/agenda/yocto-stm32-agenda.tex
@@ -0,0 +1 @@
+yocto-agenda.tex
\ No newline at end of file
More information about the training-materials-updates
mailing list