[meta-freescale] [PATCH v2 06/14] imx-gpu-viv: Add systemd init

Tom Hochstein tom.hochstein at nxp.com
Wed Nov 15 13:02:15 PST 2017


Signed-off-by: Tom Hochstein <tom.hochstein at nxp.com>
---
 recipes-graphics/imx-gpu-viv/imx-gpu-viv.inc          | 11 +++++++++--
 recipes-graphics/imx-gpu-viv/imx-gpu-viv/gpuconfig    | 19 +++++++++++++++++++
 .../imx-gpu-viv/imx-gpu-viv/gpuconfig.service         |  8 ++++++++
 3 files changed, 36 insertions(+), 2 deletions(-)
 create mode 100644 recipes-graphics/imx-gpu-viv/imx-gpu-viv/gpuconfig
 create mode 100644 recipes-graphics/imx-gpu-viv/imx-gpu-viv/gpuconfig.service

diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv.inc b/recipes-graphics/imx-gpu-viv/imx-gpu-viv.inc
index b6f5f24..66537b2 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv.inc
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv.inc
@@ -28,9 +28,15 @@ RPROVIDES_${PN}_imxgpu3d += "imx-gpu-viv"
 
 PE = "1"
 
-inherit fsl-eula-unpack
+inherit fsl-eula-unpack systemd
+
+SYSTEMD_SERVICE_${PN} = "gpuconfig.service"
 
 SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true"
+SRC_URI += " \
+    file://gpuconfig.service \
+    file://gpuconfig \
+"
 
 # Note : If you add a package here, to prevent a naming conflict see the python_anonymous() futher below
 PACKAGES =+ "libclc-imx libclc-imx-dev \
@@ -114,7 +120,8 @@ do_install () {
     cp -r ${S}/gpu-core/usr/include/* ${D}${includedir}
     cp -r ${S}/gpu-demos/opt ${D}
     cp -r ${S}/gpu-tools/gmem-info/usr/bin/* ${D}${bindir}
-
+    install -Dm0644 ${WORKDIR}/gpuconfig.service ${D}${systemd_system_unitdir}/gpuconfig.service
+    install -Dm0755 ${WORKDIR}/gpuconfig ${D}${sysconfdir}/gpuconfig
 
     install -d ${D}${libdir}/pkgconfig
 
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv/gpuconfig b/recipes-graphics/imx-gpu-viv/imx-gpu-viv/gpuconfig
new file mode 100644
index 0000000..792ab6c
--- /dev/null
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv/gpuconfig
@@ -0,0 +1,19 @@
+#!/bin/sh
+CPUREV=$(cat /sys/devices/soc0/soc_id)
+FILEVG=/usr/lib/libOpenVG.so
+FILEVG3D=/usr/lib/libOpenVG.3d.so
+FILEVG355=/usr/lib/libOpenVG.2d.so
+if  [ -e $FILEVG3D ] && [ -e $FILEVG355 ]
+then
+  if [ -e  $FILEVG ]
+  then
+        rm -f $FILEVG
+  fi
+  if [ $CPUREV == "i.MX6QP" ] || [ $CPUREV == "i.MX6Q" ] || [ $CPUREV == "i.MX6SL" ]
+  then
+        # Use GC355 VG
+        ln -s $FILEVG355 $FILEVG
+  else
+        ln -s $FILEVG3D $FILEVG
+  fi
+fi
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv/gpuconfig.service b/recipes-graphics/imx-gpu-viv/imx-gpu-viv/gpuconfig.service
new file mode 100644
index 0000000..9881e7c
--- /dev/null
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv/gpuconfig.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Configuration for i.MX GPU (Former rc_gpu.S)
+
+[Service]
+ExecStart=/etc/gpuconfig
+
+[Install]
+WantedBy=multi-user.target
-- 
1.9.1



More information about the meta-freescale mailing list