[meta-freescale] [PATCH 2/2] linux-fslc-imx-rt: Add patch to support external imx-gpu-viv driver

Dominic Sacré dominic.sacre at gmx.de
Mon Nov 21 07:53:25 PST 2016


Export functions swait_prepare_locked() and swait_finish_locked() to
make them available to the external imx-gpu-viv driver module.

Remove the check whether MACHINE_USES_VIVANTE_KERNEL_DRIVER_MODULE is
set; both the built-in driver and the external module now work with the
RT kernel.

Signed-off-by: Dominic Sacré <dominic.sacre at gmx.de>
---
 .../0004-export-swait-locked-functions.patch       | 31 ++++++++++++++++++++++
 .../linux/linux-fslc-imx-rt_4.1-2.0.x.bb           |  7 +----
 2 files changed, 32 insertions(+), 6 deletions(-)
 create mode 100644 recipes-kernel/linux/linux-fslc-imx-rt/0004-export-swait-locked-functions.patch

diff --git a/recipes-kernel/linux/linux-fslc-imx-rt/0004-export-swait-locked-functions.patch b/recipes-kernel/linux/linux-fslc-imx-rt/0004-export-swait-locked-functions.patch
new file mode 100644
index 0000000..1a616aa
--- /dev/null
+++ b/recipes-kernel/linux/linux-fslc-imx-rt/0004-export-swait-locked-functions.patch
@@ -0,0 +1,31 @@
+From 2460dd985b0cf477f74396de92d1bc5df496abdc Mon Sep 17 00:00:00 2001
+From: Julio Cruz <jcsistemas2001 at gmail.com>
+Date: Wed, 20 Jan 2016 19:26:44 +0800
+Subject: [PATCH] Export symbols for iMX-GPU-VIV module
+
+---
+ kernel/sched/wait-simple.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/kernel/sched/wait-simple.c b/kernel/sched/wait-simple.c
+index 7dfa86d..a3776ee 100644
+--- a/kernel/sched/wait-simple.c
++++ b/kernel/sched/wait-simple.c
+@@ -40,6 +40,7 @@ void swait_prepare_locked(struct swait_head *head, struct swaiter *w)
+ 	if (list_empty(&w->node))
+ 		__swait_enqueue(head, w);
+ }
++EXPORT_SYMBOL(swait_prepare_locked);
+ 
+ void swait_prepare(struct swait_head *head, struct swaiter *w, int state)
+ {
+@@ -58,6 +59,7 @@ void swait_finish_locked(struct swait_head *head, struct swaiter *w)
+ 	if (w->task)
+ 		__swait_dequeue(w);
+ }
++EXPORT_SYMBOL(swait_finish_locked);
+ 
+ void swait_finish(struct swait_head *head, struct swaiter *w)
+ {
+-- 
+2.1.0
diff --git a/recipes-kernel/linux/linux-fslc-imx-rt_4.1-2.0.x.bb b/recipes-kernel/linux/linux-fslc-imx-rt_4.1-2.0.x.bb
index fbb32d8..10610a5 100644
--- a/recipes-kernel/linux/linux-fslc-imx-rt_4.1-2.0.x.bb
+++ b/recipes-kernel/linux/linux-fslc-imx-rt_4.1-2.0.x.bb
@@ -16,16 +16,11 @@ SRC_URI += " \
     file://0001-fix-build.patch \
     file://0002-no-split-ptlocks.patch \
     file://0003-Work-around-CPU-stalls-in-the-imx-sdma-driver.patch \
+    file://0004-export-swait-locked-functions.patch \
 "
 
 SRC_URI[rt-patch.md5sum] = "6dd1193203cdf6a1a4758fc8baf07a4a"
 SRC_URI[rt-patch.sha256sum] = "427e736022e59f83c9489eda889559fcd4fe4abb5646570ade32f2128f2fa725"
 
-python () {
-    using_builtin_driver = (d.getVar("MACHINE_USES_VIVANTE_KERNEL_DRIVER_MODULE", True) or "") != "1"
-    if not using_builtin_driver:
-        raise bb.parse.SkipPackage('You must use the builtin driver with the Linux RT patch as the external module does not yet include support for it. Set "MACHINE_USES_VIVANTE_KERNEL_DRIVER_MODULE" accordingly.')
-}
-
 
 COMPATIBLE_MACHINE = "(mx6|mx7)"
-- 
2.10.2



More information about the meta-freescale mailing list