summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Jansa <martin.jansa@gmail.com>2017-04-27 23:49:37 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-06-28 20:55:08 +0100
commite8b1c653946ef921b65d47e52aea0dc530ef4286 (patch)
treedea512e575560d041c0a0e99323698040bd3e79c
parent1ce923bfe1d81093edddfdaa0aa60e6300a5ea29 (diff)
downloadpoky-e8b1c653946ef921b65d47e52aea0dc530ef4286.tar.gz
v86d, qemuboot-x86.inc: use KERNEL_MODULE_AUTOLOAD+KERNEL_MODULE_PROBECONF for uvesafb instead of fbsetup init script
* also add UVESA_MODE variable for easier change of resolution and respect it in QB_KERNEL_CMDLINE_APPEND as well * don't use init script just to call modprobe * I wasn't able to test this all the way with runqemu, because runqemu doesn't work on my system, but I've verified that the right params appear there and that I can easily change UVESA_MODE from conf/local.conf, the modules.d and modprobe.d files look OK: OE qemux86@ ~/build/oe-core/tmp-glibc/deploy/images/qemux86/core-image-sato-qemux86-20170427212613.rootfs $ cat etc/modules-load.d/uvesafb.conf uvesafb OE qemux86@ ~/build/oe-core/tmp-glibc/deploy/images/qemux86/core-image-sato-qemux86-20170427212613.rootfs $ cat etc/modprobe.d/uvesafb.conf options uvesafb mode_option=1600x1200-32 so I'll be able to drop this KERNEL_MODULE_AUTOLOAD + KERNEL_MODULE_PROBECONF from my DISTRO conf. (From OE-Core rev: f7ba5b5f76bb5678ca3e6ad51586f25871f7a9fb) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/conf/machine/include/qemuboot-x86.inc7
-rwxr-xr-xmeta/recipes-bsp/v86d/v86d/fbsetup3
-rw-r--r--meta/recipes-bsp/v86d/v86d/uvesafb.conf2
-rw-r--r--meta/recipes-bsp/v86d/v86d_0.1.10.bb36
4 files changed, 6 insertions, 42 deletions
diff --git a/meta/conf/machine/include/qemuboot-x86.inc b/meta/conf/machine/include/qemuboot-x86.inc
index acd03a1ce8..acf9d55c40 100644
--- a/meta/conf/machine/include/qemuboot-x86.inc
+++ b/meta/conf/machine/include/qemuboot-x86.inc
@@ -10,6 +10,11 @@ QB_CPU_KVM_x86-64 = "-cpu core2duo"
10 10
11QB_AUDIO_DRV = "alsa" 11QB_AUDIO_DRV = "alsa"
12QB_AUDIO_OPT = "-soundhw ac97,es1370" 12QB_AUDIO_OPT = "-soundhw ac97,es1370"
13QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=640x480-32 oprofile.timer=1 uvesafb.task_timeout=-1" 13QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=${UVESA_MODE} oprofile.timer=1 uvesafb.task_timeout=-1"
14# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy 14# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy
15QB_OPT_APPEND = "-vga vmware -show-cursor -usb -usbdevice tablet -device virtio-rng-pci" 15QB_OPT_APPEND = "-vga vmware -show-cursor -usb -usbdevice tablet -device virtio-rng-pci"
16
17KERNEL_MODULE_AUTOLOAD += "uvesafb"
18KERNEL_MODULE_PROBECONF += "uvesafb"
19UVESA_MODE ?= "640x480-32"
20module_conf_uvesafb = "options uvesafb mode_option=${UVESA_MODE}"
diff --git a/meta/recipes-bsp/v86d/v86d/fbsetup b/meta/recipes-bsp/v86d/v86d/fbsetup
deleted file mode 100755
index 2a409cc529..0000000000
--- a/meta/recipes-bsp/v86d/v86d/fbsetup
+++ /dev/null
@@ -1,3 +0,0 @@
1#!/bin/sh
2
3/sbin/modprobe uvesafb
diff --git a/meta/recipes-bsp/v86d/v86d/uvesafb.conf b/meta/recipes-bsp/v86d/v86d/uvesafb.conf
deleted file mode 100644
index 43789755d3..0000000000
--- a/meta/recipes-bsp/v86d/v86d/uvesafb.conf
+++ /dev/null
@@ -1,2 +0,0 @@
1# Load uvesafb.ko at boot
2uvesafb
diff --git a/meta/recipes-bsp/v86d/v86d_0.1.10.bb b/meta/recipes-bsp/v86d/v86d_0.1.10.bb
index eab466d30d..579a0a27eb 100644
--- a/meta/recipes-bsp/v86d/v86d_0.1.10.bb
+++ b/meta/recipes-bsp/v86d/v86d_0.1.10.bb
@@ -11,8 +11,6 @@ PR = "r2"
11 11
12SRC_URI = "http://distfiles.gentoo.org/distfiles/${BP}.tar.bz2 \ 12SRC_URI = "http://distfiles.gentoo.org/distfiles/${BP}.tar.bz2 \
13 file://Update-x86emu-from-X.org.patch \ 13 file://Update-x86emu-from-X.org.patch \
14 file://fbsetup \
15 file://uvesafb.conf \
16 file://ar-from-env.patch \ 14 file://ar-from-env.patch \
17 file://aarch64-host.patch \ 15 file://aarch64-host.patch \
18" 16"
@@ -23,9 +21,6 @@ SRC_URI[sha256sum] = "634964ae18ef68c8493add2ce150e3b4502badeb0d9194b4bd81241d25
23PACKAGE_ARCH = "${MACHINE_ARCH}" 21PACKAGE_ARCH = "${MACHINE_ARCH}"
24COMPATIBLE_HOST = '(i.86|x86_64).*-linux' 22COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
25 23
26INITSCRIPT_NAME = "fbsetup"
27INITSCRIPT_PARAMS = "start 0 S ."
28
29do_configure () { 24do_configure () {
30 ./configure --with-x86emu 25 ./configure --with-x86emu
31} 26}
@@ -37,35 +32,4 @@ do_compile () {
37do_install () { 32do_install () {
38 install -d ${D}${base_sbindir} 33 install -d ${D}${base_sbindir}
39 install v86d ${D}${base_sbindir}/ 34 install v86d ${D}${base_sbindir}/
40
41 # Only install fbsetup script if 'sysvinit' is in DISTRO_FEATURES
42 if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
43 install -d ${D}${sysconfdir}/init.d/
44 install -m 0755 ${WORKDIR}/fbsetup ${D}${sysconfdir}/init.d/fbsetup
45 fi
46
47 # Install systemd related configuration file
48 if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
49 install -d ${D}${sysconfdir}/modules-load.d
50 install -m 0644 ${WORKDIR}/uvesafb.conf ${D}${sysconfdir}/modules-load.d
51 fi
52}
53
54# As the recipe doesn't inherit systemd.bbclass, we need to set this variable
55# manually to avoid unnecessary postinst/preinst generated.
56python __anonymous() {
57 if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d):
58 d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1")
59}
60
61inherit update-rc.d
62
63PACKAGE_WRITE_DEPS_append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}"
64pkg_postinst_${PN} () {
65 if ${@bb.utils.contains('DISTRO_FEATURES','systemd sysvinit','true','false',d)}; then
66 if [ -n "$D" ]; then
67 OPTS="--root=$D"
68 fi
69 systemctl $OPTS mask fbsetup.service
70 fi
71} 35}