summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKoen Kooi <koen@openembedded.org>2009-01-04 17:09:50 +0100
committerKoen Kooi <koen@openembedded.org>2009-01-04 17:09:50 +0100
commit5437295c588dbf0ea6e95ce98b1ea8b7bc202d68 (patch)
tree74ead6e154eeaf839d1838985d6fef854666e1f4
parent299f1c2aba77996286e8d1030726b3acb5ce2bfc (diff)
libgles omap3: use insmod in initscript instead of modprobe to avoid segfault
-rwxr-xr-xpackages/powervr-drivers/libgles-omap3/rc.pvr20
-rw-r--r--packages/powervr-drivers/libgles-omap3_1.0.bb8
2 files changed, 25 insertions, 3 deletions
diff --git a/packages/powervr-drivers/libgles-omap3/rc.pvr b/packages/powervr-drivers/libgles-omap3/rc.pvr
new file mode 100755
index 0000000000..7c23603280
--- /dev/null
+++ b/packages/powervr-drivers/libgles-omap3/rc.pvr
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+rmmod bc_example
+rmmod omaplfb
+rmmod pvrsrvkm
+
+insmod $(find /lib/modules/$(uname -r) -name "pvrsrvkm.ko")
+modprobe -f bc_example
+modprobe -f 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
+
+/usr/bin/pvrsrvinit
+
diff --git a/packages/powervr-drivers/libgles-omap3_1.0.bb b/packages/powervr-drivers/libgles-omap3_1.0.bb
index 8656ec04a5..c709232c51 100644
--- a/packages/powervr-drivers/libgles-omap3_1.0.bb
+++ b/packages/powervr-drivers/libgles-omap3_1.0.bb
@@ -1,9 +1,11 @@
DESCRIPTION = "libGLES for the omap3"
LICENCE = "proprietary-binary"
-PR = "r4"
+PR = "r5"
# Put "OMAP35x_Graphics_SDK_setuplinux_3_00_00_01.bin" in the same directory as this recipe
-SRC_URI = "file://OMAP35x_Graphics_SDK_setuplinux_3_00_00_01.bin"
+SRC_URI = "file://OMAP35x_Graphics_SDK_setuplinux_3_00_00_01.bin \
+ file://rc.pvr \
+ "
S = "${WORKDIR}/OMAP35x_Graphics_SDK_3_00_00_01"
@@ -57,7 +59,7 @@ do_install () {
cp -pPR ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Builds/OGLES2/Include/* ${D}${includedir}/
install -d ${D}${sysconfdir}/init.d/
- cp -pP ${S}/gfx_rel/rc.pvr ${D}${sysconfdir}/init.d/pvr-init
+ cp -pP ${WORKDIR}/rc.pvr ${D}${sysconfdir}/init.d/pvr-init
}
do_stage () {