Patchwork xserver-xorg-extension-viv-hdmi: Add hdmi utility

login
register
mail settings
Submitter Neena Busireddy
Date May 9, 2014, 3:34 p.m.
Message ID <1399649675-9492-1-git-send-email-neena.busireddy@freescale.com>
Download mbox | patch
Permalink /patch/71821/
State Changes Requested
Delegated to: Otavio Salvador
Headers show

Comments

Neena Busireddy - May 9, 2014, 3:34 p.m.
Upstream this for 3.10.17-1.0.0 GA release.

For x11 images this recipe builds and configures the autohdmi utility to run at startup.

Signed-off-by: Neena Busireddy <neena.busireddy@freescale.com>
---
 .../xserver-xorg-extension-viv-hdmi/rc.local.etc   |   17 +++++
 ...server-xorg-extension-viv-hdmi_3.10.17-1.0.0.bb |   77 ++++++++++++++++++++
 2 files changed, 94 insertions(+)
 create mode 100644 recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi/rc.local.etc
 create mode 100644 recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi_3.10.17-1.0.0.bb
Otavio Salvador - May 11, 2014, 8:14 p.m.
Hello Neena,

On Fri, May 9, 2014 at 12:34 PM, Neena Busireddy
<neena.busireddy@freescale.com> wrote:
> Upstream this for 3.10.17-1.0.0 GA release.
>
> For x11 images this recipe builds and configures the autohdmi utility to run at startup.

Please include a description about 'autohdmi' does in the commitlog.
This is a new utility and it is not obvious why this is need.

> Signed-off-by: Neena Busireddy <neena.busireddy@freescale.com>

The comments I did[1] for Lauren, when she submitted this patch
initially has not been addressed.

1. https://lists.yoctoproject.org/pipermail/meta-freescale/2014-April/008192.html

Regards,

Patch

diff --git a/recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi/rc.local.etc b/recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi/rc.local.etc
new file mode 100644
index 0000000..3c55ef5
--- /dev/null
+++ b/recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi/rc.local.etc
@@ -0,0 +1,17 @@ 
+#!/bin/sh -e
+#
+# rc.local
+#
+# This script is executed at the end of each multiuser runlevel.
+# Make sure that the script will "exit 0" on success or any other
+# value on error.
+#
+# In order to enable or disable this script just change the execution
+# bits.
+#
+# By default this script does nothing.
+
+export DISPLAY=:0
+autohdmi &
+
+exit 0
diff --git a/recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi_3.10.17-1.0.0.bb b/recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi_3.10.17-1.0.0.bb
new file mode 100644
index 0000000..9dc5234
--- /dev/null
+++ b/recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi_3.10.17-1.0.0.bb
@@ -0,0 +1,77 @@ 
+# Copyright (C) 2014 Freescale Semiconductor
+# Released under the MIT license (see COPYING.MIT for the terms)
+DESCRIPTION = "Freescale Extension for HDMI performance"
+LICENSE = "MIT-X"
+
+DEPENDS += "virtual/kernel xf86-video-imxfb-vivante"
+
+LIC_FILES_CHKSUM = "file://EXA/src/vivante_fbdev/vivante.h;endline=19;md5=641ac6e6d013833e36290797f4d7089c"
+
+SRC_URI = "${FSL_MIRROR}/xserver-xorg-video-imx-viv-${PV}.tar.gz \
+           file://rc.local.etc"
+
+S="${WORKDIR}/xserver-xorg-video-imx-viv-${PV}/"
+
+SRC_URI[md5sum] = "f494f8862a016cba315795b061a338ea"
+SRC_URI[sha256sum] = "5470308eaabedb5585bbf02e4117a421ec8e8951e4033e9e1afa387937b3a5f9"
+
+inherit autotools pkgconfig
+
+EXTRA_OEMAKE += "-f makefile.linux prefix=${D}/usr \
+                 sysroot=${STAGING_DIR_TARGET} \
+                 BUSID_HAS_NUMBER=1 \
+                 BUILD_IN_YOCTO=1 \
+                 XSERVER_GREATER_THAN_13=1"
+
+CFLAGS += "-I${STAGING_INCDIR}/xorg \
+           -I${STAGING_INCDIR}/drm \
+           -I../../DRI_1.10.4/src"
+
+# FIXME: The Freescale provided Makefile has hardcoded include paths
+#        and this does not work in case prefix is different than /usr,
+#        sed it.
+do_configure_prepend () {
+    sed -i 's,$(sysroot)/usr/include,${STAGING_INCDIR},g' \
+            ${S}FslExt/src/makefile.linux
+}
+
+# FIXME: This is need as Freescale didn't use standard Makefile filename
+#        thus oe_runmame thinks nothing is need to be done, use ln to
+#        workaround it.
+base_do_compile () {
+    oe_runmake || die "make failed"
+}
+do_compile () {
+    cd FslExt/src
+    oe_runmake
+    install -d ${D}${libdir}
+    cd ../../util/autohdmi
+    oe_runmake
+}
+
+do_install () {
+
+    install -d ${D}/${sysconfdir}/init.d
+    install -m 755 ${WORKDIR}/rc.local.etc ${D}/${sysconfdir}/rc.local.hdmi
+
+    install -d ${D}${libdir}
+    cp -axr ${S}/FslExt/src/libfsl_x11_ext.so ${D}${libdir}
+
+    install -d ${D}${exec_prefix}/sbin
+    cp -axr ${S}/util/autohdmi/autohdmi ${D}${exec_prefix}/sbin
+}
+
+RDEPENDS_${PN} += "libvivante-dri-mx6 \
+                   xserver-xorg-module-exa \
+                   mesa-driver-swrast \
+                   xserver-xorg-extension-dri \
+                   xserver-xorg-extension-dri2 \
+                   xserver-xorg-extension-glx"
+
+REALSOLIBS := "${SOLIBS}"
+SOLIBS = "${SOLIBSDEV}"
+
+FILES_${PN} = " ${libdir}/libfsl_x11_ext${SOLIBS} ${exec_prefix}/sbin/autohdmi ${sysconfdir}/init.d ${sysconfdir}/rc.local.hdmi"
+
+PACKAGE_ARCH = "${MACHINE_SOCARCH}"
+COMPATIBLE_MACHINE = "(mx6)"