[FE training-materials-updates] kernel: re-organize training session

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Tue Aug 27 18:39:47 CEST 2013


Repository : git://git.free-electrons.com/training-materials.git

On branch  : kernel-ng
Link       : http://git.free-electrons.com/training-materials/commit/?id=1142a423ac9fcb9688a46c513f5bcb8d7fa9f3cf

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

commit 1142a423ac9fcb9688a46c513f5bcb8d7fa9f3cf
Author: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
Date:   Tue Aug 27 18:00:59 2013 +0200

    kernel: re-organize training session
    
    Adapt the list of chapters of the kernel training sessions to the new
    agenda. This is just the skeleton: the new chapters are empty, and
    some of the existing chapters have to be reworked.
    
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>


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

1142a423ac9fcb9688a46c513f5bcb8d7fa9f3cf
 Makefile                                           |   21 +++++++-------------
 .../kernel-development-process.tex                 |    1 +
 slides/kernel-device-model/kernel-device-model.tex |   14 +++++++++++++
 slides/kernel-frameworks/kernel-frameworks.tex     |    2 ++
 slides/kernel-i2c/kernel-i2c.tex                   |    1 +
 slides/kernel-input/kernel-input.tex               |   12 +++++++++++
 .../kernel-misc-subsystem.tex                      |   13 ++++++++++++
 slides/kernel-pinmuxing/kernel-pinmuxing.tex       |   14 +++++++++++++
 8 files changed, 64 insertions(+), 14 deletions(-)

diff --git a/Makefile b/Makefile
index cae5bc0..c88b64e 100644
--- a/Makefile
+++ b/Makefile
@@ -39,11 +39,14 @@ KERNEL_SLIDES = \
 		kernel-driver-development-lab-modules \
 		kernel-driver-development-memory \
 		kernel-driver-development-general-apis \
+		kernel-device-model \
+		kernel-i2c \
+		kernel-pinmuxing \
+		kernel-frameworks \
+		kernel-input \
 		kernel-driver-development-io-memory \
 		kernel-driver-development-lab-io-memory \
-		sysdev-root-filesystem-device-files \
-		kernel-driver-development-character-drivers \
-		kernel-driver-development-lab-character-drivers \
+		kernel-misc-subsystem \
 		kernel-driver-development-processes \
 		kernel-driver-development-sleeping \
 		kernel-driver-development-interrupts \
@@ -52,25 +55,15 @@ KERNEL_SLIDES = \
 		kernel-driver-development-lab-locking \
 		kernel-driver-development-debugging \
 		kernel-driver-development-lab-debugging \
-		kernel-driver-development-mmap \
-		kernel-driver-development-dma \
-		kernel-driver-development-architecture-drivers \
-		kernel-serial-drivers-title \
-		kernel-serial-drivers-content \
-		kernel-serial-drivers-lab \
-		kernel-init-title \
-		kernel-init-content \
 		kernel-porting-title \
 		kernel-porting-content \
 		kernel-power-management-title \
 		kernel-power-management-content \
 		kernel-power-management-lab \
+		kernel-development-process \
 		kernel-resources-title \
 		kernel-resources-advice \
 		kernel-resources-references \
-		kernel-git-title \
-		kernel-git-content \
-		kernel-git-lab \
 		last-slides
 
 SYSDEV_SLIDES = \
diff --git a/slides/kernel-development-process/kernel-development-process.tex b/slides/kernel-development-process/kernel-development-process.tex
new file mode 100644
index 0000000..c05d2b0
--- /dev/null
+++ b/slides/kernel-development-process/kernel-development-process.tex
@@ -0,0 +1 @@
+\subsection{The kernel development and contribution process}
diff --git a/slides/kernel-device-model/kernel-device-model.tex b/slides/kernel-device-model/kernel-device-model.tex
new file mode 100644
index 0000000..2bc2327
--- /dev/null
+++ b/slides/kernel-device-model/kernel-device-model.tex
@@ -0,0 +1,14 @@
+\subsection{Linux device and driver model}
+
+\setuplabframe
+{Linux device model for an I2C driver}
+{
+  \begin{itemize}
+  \item Implement a driver that registers as an I2C driver.
+  \item Modify the Device Tree to instantiate an I2C device.
+  \item Get the driver called when the I2C device is enumerated at
+    boot time.
+  \item Explore the {\em sysfs} entries related to your driver and
+    device.
+  \end{itemize}
+}
diff --git a/slides/kernel-frameworks/kernel-frameworks.tex b/slides/kernel-frameworks/kernel-frameworks.tex
new file mode 100644
index 0000000..9ad6cf7
--- /dev/null
+++ b/slides/kernel-frameworks/kernel-frameworks.tex
@@ -0,0 +1,2 @@
+\subsection{Kernel frameworks for device drivers}
+
diff --git a/slides/kernel-i2c/kernel-i2c.tex b/slides/kernel-i2c/kernel-i2c.tex
new file mode 100644
index 0000000..86466f2
--- /dev/null
+++ b/slides/kernel-i2c/kernel-i2c.tex
@@ -0,0 +1 @@
+\subsection{Introduction to the I2C subsystem}
diff --git a/slides/kernel-input/kernel-input.tex b/slides/kernel-input/kernel-input.tex
new file mode 100644
index 0000000..1934fb6
--- /dev/null
+++ b/slides/kernel-input/kernel-input.tex
@@ -0,0 +1,12 @@
+\subsection{The input subsystem}
+
+\setuplabframe
+{Expose the Nunchuk functionality to userspace}
+{
+  \begin{itemize}
+  \item Extend the Nunchuk driver to expose the Nunchuk features to
+    userspace applications, as an {\em input} device.
+  \item Test the operation of the Nunchuk using sample userspace
+    applications.
+  \end{itemize}
+}
diff --git a/slides/kernel-misc-subsystem/kernel-misc-subsystem.tex b/slides/kernel-misc-subsystem/kernel-misc-subsystem.tex
new file mode 100644
index 0000000..0f92015
--- /dev/null
+++ b/slides/kernel-misc-subsystem/kernel-misc-subsystem.tex
@@ -0,0 +1,13 @@
+\subsection{The misc subsystem}
+
+\setuplabframe
+{Output-only serial port driver}
+{
+  \begin{itemize}
+  \item Extend the driver started in the previous lab by registering
+    it into the {\em misc} subsystem.
+  \item Implement serial output functionality through the {\em misc}
+    subsystem.
+  \item Test serial output using userspace applications.
+  \end{itemize}
+}
diff --git a/slides/kernel-pinmuxing/kernel-pinmuxing.tex b/slides/kernel-pinmuxing/kernel-pinmuxing.tex
new file mode 100644
index 0000000..3d6aa71
--- /dev/null
+++ b/slides/kernel-pinmuxing/kernel-pinmuxing.tex
@@ -0,0 +1,14 @@
+\subsection{Introduction to pin muxing}
+
+\setuplabframe
+{Communicate with the Nunchuk over I2C}
+{
+  \begin{itemize}
+  \item Configure the pinmuxing for the I2C bus used to communicate
+    with the Nunchuk
+  \item Validate that the I2C communication works with userspace
+    tools.
+  \item Extend the I2C driver started in the previous lab to
+    communicate with the Nunchuk.
+  \end{itemize}
+}



More information about the training-materials-updates mailing list