From 4f6bfde86b5fd731beca11cf916f86aa31b1169f Mon Sep 17 00:00:00 2001 From: John Ogness Date: Fri, 2 Feb 2018 04:16:21 -0600 Subject: module-basics: add a slide for vain plat full example With the device tree added, the full example no longer fits in 5 slides. Add a 6th slide to spread things out better. Signed-off-by: John Ogness --- .../module-basics/pres_module-basics_en.tex | 7 ++++ kernel-devel/module-basics/vain_plat/vain_plat_4.c | 15 --------- kernel-devel/module-basics/vain_plat/vain_plat_5.c | 38 ++++++++-------------- kernel-devel/module-basics/vain_plat/vain_plat_6.c | 24 ++++++++++++++ 4 files changed, 45 insertions(+), 39 deletions(-) create mode 100644 kernel-devel/module-basics/vain_plat/vain_plat_6.c (limited to 'kernel-devel/module-basics') diff --git a/kernel-devel/module-basics/pres_module-basics_en.tex b/kernel-devel/module-basics/pres_module-basics_en.tex index b4c8cea..9f3c8c4 100644 --- a/kernel-devel/module-basics/pres_module-basics_en.tex +++ b/kernel-devel/module-basics/pres_module-basics_en.tex @@ -493,4 +493,11 @@ static void vain_plat_exit(void) \end{tiny} \end{frame} +\begin{frame}[fragile] +\frametitle{Platform Driver Skeleton} +\begin{tiny} +\lstinputlisting{kernel-devel/module-basics/vain_plat/vain_plat_6.c} +\end{tiny} +\end{frame} + \input{tailpres} diff --git a/kernel-devel/module-basics/vain_plat/vain_plat_4.c b/kernel-devel/module-basics/vain_plat/vain_plat_4.c index e76901c..ed17836 100644 --- a/kernel-devel/module-basics/vain_plat/vain_plat_4.c +++ b/kernel-devel/module-basics/vain_plat/vain_plat_4.c @@ -12,18 +12,3 @@ static int __devexit vain_plat_remove(struct platform_device *pdev) return 0; } - -static const struct of_device_id vain_match[] = { - { .compatible = "example,vain", }, - { /* end of table */ } -}; - -static struct platform_driver vain_plat_driver = { - .driver = { - .name = "vain_plat", - .owner = THIS_MODULE, - .of_match_table = vain_match, - }, - .probe = vain_plat_probe, - .remove = __devexit_p(vain_plat_remove), -}; diff --git a/kernel-devel/module-basics/vain_plat/vain_plat_5.c b/kernel-devel/module-basics/vain_plat/vain_plat_5.c index 3ba3d84..d97090e 100644 --- a/kernel-devel/module-basics/vain_plat/vain_plat_5.c +++ b/kernel-devel/module-basics/vain_plat/vain_plat_5.c @@ -1,24 +1,14 @@ -static int __init vain_plat_init(void) -{ - int err; - - err = platform_driver_register(&vain_plat_driver); - - if (!err) - printk(KERN_INFO "vain_plat_init: done\n"); - return err; -} - -static void __exit vain_plat_exit(void) -{ - platform_driver_unregister(&vain_plat_driver); - printk(KERN_INFO "vain_plat_exit: done\n"); -} - -module_init(vain_plat_init); -module_exit(vain_plat_exit); - -MODULE_AUTHOR("Benedikt Spranger "); -MODULE_DESCRIPTION("a more or less useless platform module"); -MODULE_LICENSE("GPL v2"); -MODULE_VERSION("0815"); +static const struct of_device_id vain_match[] = { + { .compatible = "example,vain", }, + { /* end of table */ } +}; + +static struct platform_driver vain_plat_driver = { + .driver = { + .name = "vain_plat", + .owner = THIS_MODULE, + .of_match_table = vain_match, + }, + .probe = vain_plat_probe, + .remove = __devexit_p(vain_plat_remove), +}; diff --git a/kernel-devel/module-basics/vain_plat/vain_plat_6.c b/kernel-devel/module-basics/vain_plat/vain_plat_6.c new file mode 100644 index 0000000..3ba3d84 --- /dev/null +++ b/kernel-devel/module-basics/vain_plat/vain_plat_6.c @@ -0,0 +1,24 @@ +static int __init vain_plat_init(void) +{ + int err; + + err = platform_driver_register(&vain_plat_driver); + + if (!err) + printk(KERN_INFO "vain_plat_init: done\n"); + return err; +} + +static void __exit vain_plat_exit(void) +{ + platform_driver_unregister(&vain_plat_driver); + printk(KERN_INFO "vain_plat_exit: done\n"); +} + +module_init(vain_plat_init); +module_exit(vain_plat_exit); + +MODULE_AUTHOR("Benedikt Spranger "); +MODULE_DESCRIPTION("a more or less useless platform module"); +MODULE_LICENSE("GPL v2"); +MODULE_VERSION("0815"); -- cgit v1.2.3