[FE training-materials-updates] Kernel slides: update framebuffer example
Michael Opdenacker
michael.opdenacker at free-electrons.com
Wed Mar 9 22:10:07 CET 2016
Repository : git://git.free-electrons.com/training-materials.git
On branch : master
Link : http://git.free-electrons.com/training-materials/commit/?id=168a57a3a5c45e10dd71b4d8b9ea8c839c6c5cab
>---------------------------------------------------------------
commit 168a57a3a5c45e10dd71b4d8b9ea8c839c6c5cab
Author: Michael Opdenacker <michael.opdenacker at free-electrons.com>
Date: Wed Mar 9 22:10:07 2016 +0100
Kernel slides: update framebuffer example
- Update files that no longer exist (like the
driver skeleton, fb.c, etc)
- Remove the subchapter title which wasn't
followed by a proper title either.
- Now there are just 3 slides left, part
of the kernel frameworks subsection.
Signed-off-by: Michael Opdenacker <michael.opdenacker at free-electrons.com>
>---------------------------------------------------------------
168a57a3a5c45e10dd71b4d8b9ea8c839c6c5cab
slides/kernel-frameworks2/kernel-frameworks2.tex | 51 +++---------------------
1 file changed, 5 insertions(+), 46 deletions(-)
diff --git a/slides/kernel-frameworks2/kernel-frameworks2.tex b/slides/kernel-frameworks2/kernel-frameworks2.tex
index b219584..96d352c 100644
--- a/slides/kernel-frameworks2/kernel-frameworks2.tex
+++ b/slides/kernel-frameworks2/kernel-frameworks2.tex
@@ -286,8 +286,6 @@ int main(void)
\end{center}
\end{frame}
-\subsection{Example of the framebuffer framework}
-
\begin{frame}
\frametitle{Example: Framebuffer Framework}
\begin{itemize}
@@ -298,12 +296,7 @@ int main(void)
\item \code{tristate "Support for frame buffer devices"}
\end{itemize}
\end{itemize}
- \item Implemented in \kpath{drivers/video/}
- \begin{itemize}
- \item \code{fb.c}, \code{fbmem.c}, \code{fbmon.c},
- \code{fbcmap.c}, \code{fbsysfs.c}, \code{modedb.c},
- \code{fbcvt.c}
- \end{itemize}
+ \item Implemented in C files in \kpath{drivers/video/fbdev/core}
\item Implements a single character driver and defines the
user/kernel API
\begin{itemize}
@@ -318,45 +311,11 @@ int main(void)
\end{itemize}
\end{frame}
-\begin{frame}
- \frametitle{Framebuffer Driver Skeleton}
- \begin{itemize}
- \item Skeleton driver in \kpath{drivers/video/skeletonfb.c}
- \item Implements the set of framebuffer specific operations defined
- by the \kstruct{fb_ops} structure
- \end{itemize}
- \begin{columns}
- \column{0.45\textwidth}
- \begin{itemize}
- \item \code{xxxfb_open()}
- \item \code{xxxfb_read()}
- \item \code{xxxfb_write()}
- \item \code{xxxfb_release()}
- \item \code{xxxfb_checkvar()}
- \item \code{xxxfb_setpar()}
- \item \code{xxxfb_setcolreg()}
- \item \code{xxxfb_blank()}
- \item \code{xxxfb_pan_display()}
- \end{itemize}
- \column{0.45\textwidth}
- \begin{itemize}
- \item \code{xxxfb_fillrect()}
- \item \code{xxxfb_copyarea()}
- \item \code{xxxfb_imageblit()}
- \item \code{xxxfb_cursor()}
- \item \code{xxxfb_rotate()}
- \item \code{xxxfb_sync()}
- \item \code{xxxfb_ioctl()}
- \item \code{xxxfb_mmap()}
- \end{itemize}
- \end{columns}
-\end{frame}
-
\begin{frame}[fragile]
- \frametitle{Framebuffer Driver Skeleton}
+ \frametitle{Framebuffer driver operations}
\begin{itemize}
- \item After the implementation of the operations, definition of a
- \kstruct{fb_ops} structure
+ \item Here are the operations a framebuffer driver can or must
+ implement, and define them in a \kstruct{fb_ops} structure
\begin{minted}[fontsize=\scriptsize]{c}
static struct fb_ops xxxfb_ops = {
.owner = THIS_MODULE,
@@ -383,7 +342,7 @@ static struct fb_ops xxxfb_ops = {
\end{frame}
\begin{frame}[fragile]
- \frametitle{Framebuffer Driver Skeleton}
+ \frametitle{Framebuffer driver code}
\begin{itemize}
\item In the \code{probe()} function, registration of the
framebuffer device and operations
More information about the training-materials-updates
mailing list