aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-graphics
diff options
context:
space:
mode:
authorOtavio Salvador <otavio@ossystems.com.br>2013-07-16 17:32:15 -0300
committerOtavio Salvador <otavio@ossystems.com.br>2013-08-31 17:54:42 -0300
commita38622c4d93f54019f20dbdcfd97bb5b00a50910 (patch)
tree39e568000b322b0a8a17f77b7de90550a2eaa352 /recipes-graphics
parent13c91f33e30ab1c0d2a20e414753008bbdabca95 (diff)
downloadmeta-fsl-arm-a38622c4d93f54019f20dbdcfd97bb5b00a50910.tar.gz
meta-fsl-arm-a38622c4d93f54019f20dbdcfd97bb5b00a50910.tar.bz2
meta-fsl-arm-a38622c4d93f54019f20dbdcfd97bb5b00a50910.zip
libdrm: Add fix to avoid GPU freeze
Add ARM support into xf86drm.h. This provides support for Xorg interface. Without this the vivante samples will hang during close requiring a reboot Change-Id: I60ea3c87c35fadaa00c64baffd24f74f41dfbb9b Signed-off-by: Lauren Post <lauren.post@freescale.com> Signed-off-by: Evan Kotara <evan.kotara@freescale.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Diffstat (limited to 'recipes-graphics')
-rw-r--r--recipes-graphics/drm/libdrm/mx6/drm-update-arm.patch34
-rw-r--r--recipes-graphics/drm/libdrm_2.4.46.bbappend5
2 files changed, 39 insertions, 0 deletions
diff --git a/recipes-graphics/drm/libdrm/mx6/drm-update-arm.patch b/recipes-graphics/drm/libdrm/mx6/drm-update-arm.patch
new file mode 100644
index 0000000..4389fe4
--- /dev/null
+++ b/recipes-graphics/drm/libdrm/mx6/drm-update-arm.patch
@@ -0,0 +1,34 @@
+Add ARM support into xf86arm.h. This provides support for Xorg interface.
+Without this the vivante samples will hang during close requiring a reboot
+
+Upstream-Status: Pending
+
+Signed-off-by: Lauren Post <lauren.post@freescale.com>
+Signed-off-by: Evan Kotara <evan.kotara@freescale.com>
+
+diff --git a/xf86drm.h b/xf86drm.h
+--- a/xf86drm.h
++++ b/xf86drm.h
+@@ -455,6 +455,22 @@ do { register unsigned int __old __asm("o0"); \
+ : "cr0", "memory"); \
+ } while (0)
+
++#elif defined(__arm__)
++ #undef DRM_DEV_MODE
++ #define DRM_DEV_MODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)
++
++ #define DRM_CAS(lock,old,new,__ret) \
++ do { \
++ __asm__ __volatile__ ( \
++ "1: ldrex %0, [%1]\n" \
++ " teq %0, %2\n" \
++ " strexeq %0, %3, [%1]\n" \
++ " movne %0, #1\n" \
++ : "=&r" (__ret) \
++ : "r" (lock), "r" (old), "r" (new) \
++ : "cc","memory"); \
++ } while (0)
++
+ #endif /* architecture */
+ #endif /* __GNUC__ >= 2 */
+
diff --git a/recipes-graphics/drm/libdrm_2.4.46.bbappend b/recipes-graphics/drm/libdrm_2.4.46.bbappend
new file mode 100644
index 0000000..8c8ea6b
--- /dev/null
+++ b/recipes-graphics/drm/libdrm_2.4.46.bbappend
@@ -0,0 +1,5 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+
+SRC_URI_append_mx6 = "file://drm-update-arm.patch"
+
+PACKAGE_ARCH_mx6 = "${MACHINE_ARCH}"