[BL training-materials-updates] Device managed allocations: show simplified remove() function

Michael Opdenacker michael.opdenacker at bootlin.com
Wed Nov 28 18:29:07 CET 2018


Repository : git://git.free-electrons.com/training-materials.git
On branch  : master
Link       : http://git.free-electrons.com/training-materials/commit/?id=4833e8f94810bfa9a6218db9214b1ce0c71ccc63

>---------------------------------------------------------------

commit 4833e8f94810bfa9a6218db9214b1ce0c71ccc63
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date:   Wed Nov 28 18:29:07 2018 +0100

    Device managed allocations: show simplified remove() function
    
    Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>


>---------------------------------------------------------------

4833e8f94810bfa9a6218db9214b1ce0c71ccc63
 slides/kernel-frameworks2/kernel-frameworks2.tex | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/slides/kernel-frameworks2/kernel-frameworks2.tex b/slides/kernel-frameworks2/kernel-frameworks2.tex
index 5f74f61..f41f9db 100644
--- a/slides/kernel-frameworks2/kernel-frameworks2.tex
+++ b/slides/kernel-frameworks2/kernel-frameworks2.tex
@@ -424,11 +424,14 @@ int foo_probe(struct platform_device *pdev)
         }
         ...
         platform_set_drvdata(pdev, foo);
+        pm_runtime_enable(&pdev->dev);
+        pm_runtime_get_sync(&pdev->dev);
         return 0;
 }
 
 void foo_remove(struct platform_device *pdev)
 {
+        pm_runtime_disable(&pdev->dev);
         foo_t *foo = platform_get_drvdata(pdev);
         kfree(foo);
 }
@@ -450,8 +453,15 @@ int foo_probe(struct platform_device *pdev)
                 return -EBUSY;
         ...
         platform_set_drvdata(pdev, foo);
+        pm_runtime_enable(&pdev->dev);
+        pm_runtime_get_sync(&pdev->dev);
         return 0;
 }
+
+void foo_remove(struct platform_device *pdev)
+{
+        pm_runtime_disable(&pdev->dev);
+}
     \end{minted}
   \end{block}
 \end{columns}




More information about the training-materials-updates mailing list