[bootlin/training-materials updates] master: Kernel slides: misc improvements (1ef3d1d2)
Michael Opdenacker
michael.opdenacker at bootlin.com
Wed Sep 4 11:38:44 CEST 2019
Repository : https://github.com/bootlin/training-materials
On branch : master
Link : https://github.com/bootlin/training-materials/commit/1ef3d1d25ee5358667a0c4d1dd89f376003d9273
>---------------------------------------------------------------
commit 1ef3d1d25ee5358667a0c4d1dd89f376003d9273
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date: Wed Sep 4 11:38:44 2019 +0200
Kernel slides: misc improvements
Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>
>---------------------------------------------------------------
1ef3d1d25ee5358667a0c4d1dd89f376003d9273
.../kernel-driver-development-interrupts.tex | 7 +++++--
.../kernel-driver-development-io-memory.tex | 10 +++++++++-
.../kernel-power-management-content.tex | 3 +--
3 files changed, 15 insertions(+), 5 deletions(-)
diff --git a/slides/kernel-driver-development-interrupts/kernel-driver-development-interrupts.tex b/slides/kernel-driver-development-interrupts/kernel-driver-development-interrupts.tex
index 905ecaa1..2e22bea9 100644
--- a/slides/kernel-driver-development-interrupts/kernel-driver-development-interrupts.tex
+++ b/slides/kernel-driver-development-interrupts/kernel-driver-development-interrupts.tex
@@ -240,7 +240,7 @@ int devm_request_threaded_irq(
\begin{frame}[fragile]
\frametitle{Tasklet Example: drivers/crypto/atmel-sha.c 1/2}
-\begin{minted}[fontsize=\small]{c}
+\begin{minted}[fontsize=\scriptsize]{c}
/* The tasklet function */
static void atmel_sha_done_task(unsigned long data)
{
@@ -258,13 +258,16 @@ static int atmel_sha_probe(struct platform_device *pdev)
tasklet_init(&sha_dd->done_task, atmel_sha_done_task,
(unsigned long)sha_dd);
[...]
+ err = devm_request_irq(&pdev->dev, sha_dd->irq, atmel_sha_irq,
+ IRQF_SHARED, "atmel-sha", sha_dd);
+ [...]
}
\end{minted}
\end{frame}
\begin{frame}[fragile]
\frametitle{Tasklet Example: drivers/crypto/atmel-sha.c 2/2}
-\begin{minted}[fontsize=\small]{c}
+\begin{minted}[fontsize=\scriptsize]{c}
/* Remove function: removing the tasklet */
static int atmel_sha_remove(struct platform_device *pdev)
{
diff --git a/slides/kernel-driver-development-io-memory/kernel-driver-development-io-memory.tex b/slides/kernel-driver-development-io-memory/kernel-driver-development-io-memory.tex
index 005c0865..49407464 100644
--- a/slides/kernel-driver-development-io-memory/kernel-driver-development-io-memory.tex
+++ b/slides/kernel-driver-development-io-memory/kernel-driver-development-io-memory.tex
@@ -177,7 +177,7 @@ void iounmap(void __iomem *addr);
\end{center}
\end{frame}
-\begin{frame}
+\begin{frame}[fragile]
\frametitle{Managed API}
Using \kfunc{request_mem_region} and \kfunc{ioremap} in device
drivers is now deprecated. You should use the below "managed"
@@ -188,6 +188,14 @@ void iounmap(void __iomem *addr);
\item \kfunc{devm_ioremap_resource}
\begin{itemize}
\item Takes care of both the request and remapping operations!
+ \item Example (\kfile{drivers/crypto/atmel-sha.c}):
+ \begin{block}{}
+ \begin{minted}{c}
+sha_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+...
+sha_dd->io_base = devm_ioremap_resource(&pdev->dev, sha_res);
+ \end{minted}
+ \end{block}{}
\end{itemize}
\end{itemize}
\end{frame}
diff --git a/slides/kernel-power-management-content/kernel-power-management-content.tex b/slides/kernel-power-management-content/kernel-power-management-content.tex
index 508881be..0e5b2936 100644
--- a/slides/kernel-power-management-content/kernel-power-management-content.tex
+++ b/slides/kernel-power-management-content/kernel-power-management-content.tex
@@ -173,8 +173,7 @@
\item Platform-specific driver defining sleep states and
transition operations
\item Platform-independent governors (ladder and menu)
- \item Available for x86/ACPI, not supported yet by all ARM cpus.
- (look for \code{cpuidle*} files under \kdir{arch/arm})
+ \item Available in particular for x86/ACPI and most ARM SoCs
\item See \kerneldoctext{cpuidle/} in kernel sources.
\end{itemize}
\end{itemize}
More information about the training-materials-updates
mailing list