[bootlin/training-materials updates] master: Minor kernel slide improvements (2f7d942a)
Michael Opdenacker
michael.opdenacker at bootlin.com
Wed Oct 28 22:04:33 CET 2020
Repository : https://github.com/bootlin/training-materials
On branch : master
Link : https://github.com/bootlin/training-materials/commit/2f7d942a001ea7331eb113b686e48b4ab31c7d14
>---------------------------------------------------------------
commit 2f7d942a001ea7331eb113b686e48b4ab31c7d14
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date: Wed Oct 28 22:04:33 2020 +0100
Minor kernel slide improvements
Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>
>---------------------------------------------------------------
2f7d942a001ea7331eb113b686e48b4ab31c7d14
slides/kernel-device-model/kernel-device-model.tex | 7 ++++---
.../kernel-driver-development-modules.tex | 9 ++++++---
slides/kernel-frameworks2/kernel-frameworks2.tex | 2 +-
slides/kernel-i2c/kernel-i2c.tex | 5 +++--
slides/kernel-input/kernel-input.tex | 6 +++---
5 files changed, 17 insertions(+), 12 deletions(-)
diff --git a/slides/kernel-device-model/kernel-device-model.tex b/slides/kernel-device-model/kernel-device-model.tex
index 45d70f42..10299deb 100644
--- a/slides/kernel-device-model/kernel-device-model.tex
+++ b/slides/kernel-device-model/kernel-device-model.tex
@@ -57,7 +57,7 @@
\item First look at a popular bus that offers dynamic enumeration,
the {\em USB bus}
\item Continue by studying how buses that do not offer dynamic
- enumerations are handled.
+ enumeration are handled.
\end{itemize}
\end{itemize}
\end{frame}
@@ -670,7 +670,7 @@ uart0: serial at 44e09000 {
\#include} statement, which requires calling the C
preprocessor before parsing the Device Tree.
\end{itemize}
- Linux currently uses either one technique or the other,
+ Linux currently uses either one technique or the other
(different from one ARM subarchitecture to another, for example).
\end{itemize}
\end{frame}
@@ -687,8 +687,9 @@ uart0: serial at 44e09000 {
\begin{itemize}
\item With the {\em device tree}, a {\em device} is bound to the
corresponding {\em driver} using the {\bf compatible} string.
- \item The \code{of_match_table} field of \kstruct{device_driver}
+ \item The \ksym{of_match_table} field of \kstruct{device_driver}
lists the compatible strings supported by the driver.
+ \kfile{drivers/tty/serial/omap-serial.c} example:
\begin{block}{}
\begin{minted}[fontsize=\tiny]{c}
#if defined(CONFIG_OF)
diff --git a/slides/kernel-driver-development-modules/kernel-driver-development-modules.tex b/slides/kernel-driver-development-modules/kernel-driver-development-modules.tex
index 3c5a6398..849bf9af 100644
--- a/slides/kernel-driver-development-modules/kernel-driver-development-modules.tex
+++ b/slides/kernel-driver-development-modules/kernel-driver-development-modules.tex
@@ -329,10 +329,13 @@ Source code available on:
\begin{minted}[fontsize=\small]{c}
module_param(
name, /* name of an already defined variable */
- type, /* type for module_param (not a C type), mainly: short, ushort, int, uint, long, ulong,
- charp and bool (checked at run time) */
+ type, /* standard types (different from C types) are:
+ * byte, short, ushort, int, uint, long, ulong
+ * charp: a character pointer
+ * bool: a bool, values 0/1, y/n, Y/N.
+ * invbool: the above, only sense-reversed (N = true). */
perm /* for /sys/module/<module_name>/parameters/<param>,
- 0: no such module parameter value file */
+ * 0: no such module parameter value file */
);
/* Example: drivers/block/loop.c */
diff --git a/slides/kernel-frameworks2/kernel-frameworks2.tex b/slides/kernel-frameworks2/kernel-frameworks2.tex
index c684583f..78533024 100644
--- a/slides/kernel-frameworks2/kernel-frameworks2.tex
+++ b/slides/kernel-frameworks2/kernel-frameworks2.tex
@@ -563,7 +563,7 @@ struct rtl8150 {
\begin{minted}[fontsize=\tiny]{c}
static int serial_imx_probe(struct platform_device *pdev)
{
- struct imx_port *sport;
+ struct imx_port *sport; /* per device structure */
[...]
sport = devm_kzalloc(&pdev->dev, sizeof(*sport), GFP_KERNEL);
[...]
diff --git a/slides/kernel-i2c/kernel-i2c.tex b/slides/kernel-i2c/kernel-i2c.tex
index cd18f5f4..00384955 100644
--- a/slides/kernel-i2c/kernel-i2c.tex
+++ b/slides/kernel-i2c/kernel-i2c.tex
@@ -10,8 +10,9 @@
by masters.
\item In a Linux system, the I2C controller embedded in the
processor is typically the master, controlling the bus.
- \item Each slave device is identified by a unique I2C address. Each
- transaction initiated by the master contains this address, which
+ \item Each slave device is identified by an I2C address (you can't
+ have 2 devices with the same address on the same bus). Each transaction
+ initiated by the master contains this address, which
allows the relevant slave to recognize that it should reply to
this particular transaction.
\end{itemize}
diff --git a/slides/kernel-input/kernel-input.tex b/slides/kernel-input/kernel-input.tex
index ca857c0d..3d1aa1b1 100644
--- a/slides/kernel-input/kernel-input.tex
+++ b/slides/kernel-input/kernel-input.tex
@@ -39,10 +39,10 @@
\end{itemize}
\item Implemented in \kdir{drivers/input}
\begin{itemize}
- \item \code{input.c}, \code{input-polldev.c}, \code{evbug.c}
+ \item \krelfile{drivers/input}{input.c},
+ \krelfile{drivers/input}{input-polldev.c}, \krelfile{drivers/input}{evdev.c}...
\end{itemize}
- \item Implements a single character driver and defines the
- user/kernel API
+ \item Defines the user/kernel API
\begin{itemize}
\item \kfile{include/uapi/linux/input.h}
\end{itemize}
More information about the training-materials-updates
mailing list