[bootlin/training-materials updates] master: DMA slides: minor correction (26c04b87)

Michael Opdenacker michael.opdenacker at bootlin.com
Wed Apr 28 17:12:36 CEST 2021

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


commit 26c04b87e7a5f6c91aaec0be85d81831ad0a1256
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date:   Wed Apr 28 17:12:36 2021 +0200

    DMA slides: minor correction
    - Buffers used for DMA may not be allocated by the driver,
      but by the kernel frameworks instead (for example networking)
    Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>


 .../kernel-driver-development-dma.tex              |  4 ++--
 .../kernel-power-management-content.tex            | 25 ++++++++++------------
 2 files changed, 13 insertions(+), 16 deletions(-)

diff --git a/slides/kernel-driver-development-dma/kernel-driver-development-dma.tex b/slides/kernel-driver-development-dma/kernel-driver-development-dma.tex
index ddbdfd8b..256e9671 100644
--- a/slides/kernel-driver-development-dma/kernel-driver-development-dma.tex
+++ b/slides/kernel-driver-development-dma/kernel-driver-development-dma.tex
@@ -124,7 +124,7 @@
     \item The kernel just sets the mapping for a buffer provided by
       the driver.
-    \item Use a buffer already allocated by the driver.
+    \item Use an already allocated buffer
     \item Mapping set up for each transfer. Keeps DMA registers free
       on the hardware.
@@ -154,7 +154,7 @@ Note: called {\em consistent mappings} on PCI\\
   \frametitle{Setting up streaming mappings}
-  Works on buffers already allocated by the driver
+  Works on already allocated buffers
 #include <linux/dmapool.h>
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 249b98cd..abed28df 100644
--- a/slides/kernel-power-management-content/kernel-power-management-content.tex
+++ b/slides/kernel-power-management-content/kernel-power-management-content.tex
@@ -24,11 +24,11 @@
     unused clocks to save power
   \item Simple API described in \kfile{include/linux/clk.h}.
-    \item \kfunc{clk_get} to get a reference to a clock
-    \item \kfunc{clk_enable} to start the clock
-    \item \kfunc{clk_disable} to stop the clock
+    \item \kfunc{clk_get} to lookup and obtain a reference to a clock producer
+    \item \kfunc{clk_enable} to inform the system when the clock source should be running
+    \item \kfunc{clk_disable} to inform the system when the clock source is no longer required.
     \item \kfunc{clk_put} to free the clock source
-    \item \kfunc{clk_get_rate} to get the current rate
+    \item \kfunc{clk_get_rate} to obtain the current clock rate (in Hz) for a clock source
@@ -88,7 +88,8 @@
-  See our presentation about the Clock Framework for more details: \url{https://frama.link/MYevkXcD}
+  See our presentation about the Clock Framework for more details:\\
+  \scriptsize \url{https://bootlin.com/pub/conferences/2013/elce/common-clock-framework-how-to-use-it/}
@@ -215,7 +216,7 @@
         physical power domain they belong to.
         This sits at the same level as bus type for calling PM hooks.
   \item All the devices in the same PD get the same state at the same time.
-  \item Specifications and examples available at \kdochtml{devicetree/bindings/power/power_domain}
+  \item Specifications and examples available at \kdoctext{devicetree/bindings/power/power_domain.txt}
   \item Driver example: \kfile{drivers/soc/rockchip/pm_domains.c}
         (\kfunc{rockchip_pd_power_on}, \kfunc{rockchip_pd_power_off},
@@ -253,10 +254,10 @@
   \frametitle{Frequency and voltage scaling (2)}
-  \item CPU drivers in \kdir{drivers/cpufreq}.  Example:
+  \item CPU drivers are in \kdir{drivers/cpufreq}.  Example:
   \item Must implement the operations of the \code{cpufreq_driver}
-    structure and register them using \code{cpufreq_register_driver()}
+    structure and register them using \kfunc{cpufreq_register_driver}
     \item \code{init()} for initialization
     \item \code{exit()} for cleanup
@@ -264,7 +265,7 @@
     \item \code{setpolicy()} or \code{target()} to actually perform
       the frequency change
-  \item See \kdochtmldir{cpu-freq} for useful explanations
+  \item See documentation in \kdochtmldir{cpu-freq} for useful explanations
@@ -281,7 +282,7 @@
     \item Machine interface for board configuration
     \item sysfs interface for user space
-  \item See \kdochtmldir{power/regulator} in kernel sources.
+  \item See \kdochtmldir{power/regulator} in kernel documentation.
@@ -316,9 +317,5 @@
       \item \url{https://www.youtube.com/watch?v=juJJZORgVwI}
-  \item Tips and ideas for prolonging battery life (Amit Kucheria)
-    \begin{itemize}
-    \item \url{https://j.mp/fVdxKh}
-    \end{itemize}

More information about the training-materials-updates mailing list