[bootlin/training-materials updates] master: Add Yocto online agenda (b9a821ea)

Michael Opdenacker michael.opdenacker at bootlin.com
Mon Mar 23 22:15:10 CET 2020


Repository : https://github.com/bootlin/training-materials
On branch  : master
Link       : https://github.com/bootlin/training-materials/commit/b9a821eae25b9d00f7e4e84ecfdb35dcc8e26537

>---------------------------------------------------------------

commit b9a821eae25b9d00f7e4e84ecfdb35dcc8e26537
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date:   Mon Mar 23 22:15:10 2020 +0100

    Add Yocto online agenda
    
    Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>


>---------------------------------------------------------------

b9a821eae25b9d00f7e4e84ecfdb35dcc8e26537
 agenda/yocto-online-agenda.tex | 305 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 305 insertions(+)

diff --git a/agenda/yocto-online-agenda.tex b/agenda/yocto-online-agenda.tex
new file mode 100644
index 00000000..3094b68a
--- /dev/null
+++ b/agenda/yocto-online-agenda.tex
@@ -0,0 +1,305 @@
+\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
+On-line seminar
+\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 Four} half days - 16 hours (4 hours per half day).
+    \newline 80\% of lectures, 20\% of practical demos. \\
+    \hline
+
+    {\bf Trainer} & One of the engineers listed on
+    \newline 80\% of lectures, 20\% of practical demos. \\
+    \hline
+
+    {\bf Language} & Oral lectures: English
+    \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 Familiarity with embedded Linux} as covered
+    in our embedded Linux training
+    (\url{https://bootlin.com/training/embedded-linux/}) \vspace{1em}
+    \newline {\bf Familiarity with Unix or GNU/Linux commands}
+    \newline People lacking experience on this topic may get
+    trained by themselves, for example with our freely available
+    on-line slides:
+    \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 Computer with the operating system of your choice, provided
+    it is supported by Zoom (\url{https://zoom.us} for videoconferencing
+    \item Webcam and microphone (preferably from an audio headset)
+    \item High speed access to the Internet
+    \end{itemize}\\
+    \hline
+
+    {\bf Materials} & Electronic copies of presentations,
+    demo instructions and data.\\
+    \hline
+
+\end{tabularx}}
+\normalsize
+
+\feagendaonecolumn
+{Hardware}
+{
+  STMicroelectronics STM32MP157A-DK1 Discovery board
+  \begin{itemize}
+  \item STM32MP157A (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 headers
+  \item Audio codec
+  \item Misc: buttons, LEDs
+  \end{itemize}
+  \includegraphics[width=5cm]{../slides/discovery-board-dk1/discovery-board-dk1.png}
+}
+
+\section{Half day 1}
+
+\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}
+}
+{Demo - First Yocto Project build}
+{
+  \begin{itemize}
+  \item Downloading the Poky reference build system
+  \item Building a system image
+ \end{itemize}
+}
+
+\feagendaonecolumn
+{Lecture - Using Yocto Project - basics}
+{
+  \begin{itemize}
+  \item Organization of the build output
+  \item Flashing and installing the system image
+  \end{itemize}
+}
+
+\feagendaonecolumn
+{Demo - Flashing and booting}
+{
+  \begin{itemize}
+  \item Flashing and booting the image on the board
+  \end{itemize}
+}
+
+\section{Half day 2}
+
+\feagendatwocolumn
+{Lecture - Using Yocto Project - advanced usage}
+{
+  \begin{itemize}
+  \item Configuring the build system
+  \item Customizing the package selection
+  \end{itemize}
+}
+{Demo - Using NFS and configuring the build}
+{
+  \begin{itemize}
+  \item Configuring the board to boot over NFS
+  \item Learn how to use the \code{PREFERRED_PROVIDER} mechanism
+  \end{itemize}
+}
+\\
+
+\feagendatwocolumn
+{Lecture - Writing recipes - basics}
+{
+  \begin{itemize}
+  \item Writing a minimal recipe
+  \item Adding dependencies
+  \item Development workflow with {\em bitbake}
+  \end{itemize}
+}
+{Demo - 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{Half day 3}
+
+\feagendaonecolumn
+{Demo - 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}
+}
+{Demo - 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}
+}
+
+\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}
+}
+{Demo - 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{Half day 4}
+
+\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}
+}
+{Demo - 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}
+}
+{Demo - Experimenting with the SDK}
+{
+  \begin{itemize}
+  \item Building an SDK
+  \item Using the Yocto Project SDK
+  \end{itemize}
+}
+
+\feagendaonecolumn
+{Questions and Answers}
+{
+  \begin{itemize}
+  \item Questions and answers with the audience about the course topics
+  \item Extra presentations if time is left, according what most
+        participants are interested in.
+  \end{itemize}
+}
+
+\end{document}
+




More information about the training-materials-updates mailing list