aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlejandro Hernandez <alejandro.hernandez@linux.intel.com>2016-04-22 00:28:12 +0000
committerSaul Wold <sgw@linux.intel.com>2016-04-22 07:22:15 -0700
commitd519b9d8e53e1e4dd3494d8a3a8e3e531b2b9788 (patch)
treeb2fda5c5b32533347243cb2582ff92945a616c01
parente05c3b1e86da84c91c1eaeb29598f923cb48659a (diff)
downloadmeta-intel-d519b9d8e53e1e4dd3494d8a3a8e3e531b2b9788.tar.gz
meta-intel-d519b9d8e53e1e4dd3494d8a3a8e3e531b2b9788.tar.bz2
meta-intel-d519b9d8e53e1e4dd3494d8a3a8e3e531b2b9788.zip
gma500-gfx-check: Fix dependency to meta-poky
The gma500-gfx-check we used had a dependency to meta-poky via a bbappend file this is unnacceptable, but this check is still needed on genericx86 and intel-core2-32, so this patch makes copy of the gma500-gfx-check to meta-intel to avoid the dependency issue [YOCTO #9181] Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
-rw-r--r--common/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf2
-rw-r--r--common/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh15
-rw-r--r--common/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb18
-rw-r--r--common/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bbappend1
4 files changed, 35 insertions, 1 deletions
diff --git a/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf b/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf
new file mode 100644
index 00000000..74d33c87
--- /dev/null
+++ b/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf
@@ -0,0 +1,2 @@
+# Mimic modprobe's install funcitonality with busybox's modprobe
+install gma500_gfx dmesg | grep gma500_gfx_checked || { /etc/modprobe.d/gma500-gfx-check.sh || modprobe gma500_gfx; }
diff --git a/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh b/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh
new file mode 100644
index 00000000..75cda99f
--- /dev/null
+++ b/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+# Check for devices we wish to avoid gma500_gfx for
+DEVICES="0x8119 0x4108"
+
+# Checked flag to avoid infinite modprobe
+echo "gma500_gfx_checked" >> /dev/kmsg;
+
+for DEVICE in $DEVICES; do
+ if udevadm trigger --subsystem-match=pci --verbose --attr-match=device=$DEVICE | grep "pci" >> /dev/null ; then
+ echo "Found $DEVICE, avoiding gma500_gfx module" >> /dev/kmsg;
+ exit 0
+ fi
+done
+exit 1
diff --git a/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb b/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb
new file mode 100644
index 00000000..7b08064b
--- /dev/null
+++ b/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb
@@ -0,0 +1,18 @@
+SUMMARY = "Intel gma500_gfx fix for certain hardware"
+DESCRIPTION = "Avoid inserting gma500_gfx module for certain hardware devices."
+LICENSE="GPLv2"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
+
+SRC_URI = "file://gma500-gfx-check.conf \
+ file://gma500-gfx-check.sh "
+
+do_install(){
+ install -d ${D}${sysconfdir}/modprobe.d/
+ install -m 755 ${WORKDIR}/gma500-gfx-check.sh ${D}${sysconfdir}/modprobe.d/gma500-gfx-check.sh
+ install -m 644 ${WORKDIR}/gma500-gfx-check.conf ${D}${sysconfdir}/modprobe.d/gma500-gfx-check.conf
+}
+
+FILES_${PN}="${sysconfdir}/modprobe.d/gma500-gfx-check.conf \
+ ${sysconfdir}/modprobe.d/gma500-gfx-check.sh"
+
+COMPATIBLE_MACHINE = "intel-core2-32"
diff --git a/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bbappend b/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bbappend
deleted file mode 100644
index eb8a7246..00000000
--- a/common/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-COMPATIBLE_MACHINE = "intel-core2-32"