aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/powervr-drivers/libgles-omap3-3.00.00.09/rc.pvr
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/powervr-drivers/libgles-omap3-3.00.00.09/rc.pvr')
-rwxr-xr-xrecipes/powervr-drivers/libgles-omap3-3.00.00.09/rc.pvr54
1 files changed, 54 insertions, 0 deletions
diff --git a/recipes/powervr-drivers/libgles-omap3-3.00.00.09/rc.pvr b/recipes/powervr-drivers/libgles-omap3-3.00.00.09/rc.pvr
new file mode 100755
index 0000000000..69c9f81c1c
--- /dev/null
+++ b/recipes/powervr-drivers/libgles-omap3-3.00.00.09/rc.pvr
@@ -0,0 +1,54 @@
+#!/bin/sh
+
+if [ "$1" = "" ]; then
+ echo PVR-INIT: Please use start, stop, or restart.
+ exit 1
+fi
+
+if [ "$1" = "stop" -o "$1" = "restart" ]; then
+ echo Stopping PVR
+ #rmmod bc_example
+ rmmod omaplfb 2>/dev/null
+ rmmod pvrsrvkm 2>/dev/null
+fi
+
+if [ "$1" = "stop" ]; then
+ exit 0
+fi
+
+echo Starting PVR
+insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko")
+#modprobe bc_example
+modprobe omaplfb
+
+pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3`
+
+if [ -e /dev/pvrsrvkm ] ; then
+ rm -f /dev/pvrsrvkm
+fi
+
+mknod /dev/pvrsrvkm c $pvr_maj 0
+chmod 666 /dev/pvrsrvkm
+
+touch /etc/powervr-esrev
+
+SAVED_ESREVISION="$(cat /etc/powervr-esrev)"
+ES_REVISION="$(cat /proc/cpuinfo | grep "CPU revision" | awk -F: '{print $2}')"
+
+if [ "${ES_REVISION}" != "${SAVED_ESREVISION}" ] ; then
+ echo -n "Starting SGX fixup for"
+ if [ "${ES_REVISION}" = " 3" ] ; then
+ echo " ES3.x"
+ cp -a /usr/lib/ES3.0/* /usr/lib
+ cp -a /usr/bin/ES3.0/* /usr/bin
+ else
+ echo "ES 2.x"
+ cp -a /usr/lib/ES2.0/* /usr/lib
+ cp -a /usr/bin/ES2.0/* /usr/bin
+ fi
+
+ echo "${ES_REVISION}" > /etc/powervr-esrev
+fi
+
+/usr/bin/pvrsrvinit
+