]> code.ossystems Code Review - meta-freescale.git/commitdiff
xf86-video-armada: add
authorTrevor Woerner <twoerner@gmail.com>
Sat, 27 May 2017 05:11:08 +0000 (01:11 -0400)
committerOtavio Salvador <otavio@ossystems.com.br>
Tue, 30 May 2017 23:09:17 +0000 (20:09 -0300)
If the user enables "use-mainline-bsp" in MACHINEOVERRIDES, assume they want
to use the open-source, reverse-engineered etnaviv drm x11 driver.

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
conf/machine/include/imx-base.inc
recipes-graphics/xorg-driver/xf86-video-armada_git.bb [new file with mode: 0644]
recipes-graphics/xorg-xserver/xserver-xf86-config/use-mainline-bsp/xorg.conf [new file with mode: 0644]

index 6f3b39c2ead6c82f40610bafc8386e57f60d6a1b..b876b500aa185b622cc2c71d39646d0dd9b57141 100644 (file)
@@ -30,6 +30,7 @@ PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
 XSERVER_DRIVER = "xf86-video-fbdev"
 XSERVER_DRIVER_imxgpu2d = "xf86-video-imxfb-vivante"
 XSERVER_DRIVER_vf = "xf86-video-modesetting"
+XSERVER_DRIVER_use-mainline-bsp = "xf86-video-armada"
 XSERVER = "xserver-xorg \
            xf86-input-evdev \
            ${XSERVER_DRIVER}"
diff --git a/recipes-graphics/xorg-driver/xf86-video-armada_git.bb b/recipes-graphics/xorg-driver/xf86-video-armada_git.bb
new file mode 100644 (file)
index 0000000..4caebb1
--- /dev/null
@@ -0,0 +1,46 @@
+SUMMARY = "X.org graphics driver for KMS based systems with pluggable GPU backend"
+DESCRIPTION = "The xf86-video-armada module is a 2D graphics driver for the X Window \
+System as implemented by X.org, supporting these DRM KMS drivers: \
+\
+       Freescale i.MX \
+       Marvell Armada 510 (Dove) \
+\
+and GPU drivers: \
+       Vivante libGAL (Armada only) \
+       Etnaviv (Armada and i.MX) with galcore kernel driver \
+       Etnaviv (Armada and i.MX) with etnaviv DRM kernel driver \
+"
+LICENSE = "BSD"
+
+require recipes-graphics/xorg-driver/xorg-driver-video.inc
+
+DEPENDS += "libdrm-armada"
+
+LIC_FILES_CHKSUM = " \
+    file://README;md5=d5271074fb6ad959b7b6cfa68b4adaf0 \
+    file://../etna_viv/LICENSE;md5=9d4853905d85f044ed013e75def30a76 \
+    "
+
+SRCREV_armada = "a4306d971717a2d3ea855d08c5667e02403b84fe"
+SRCREV_etna = "f64d77abbb54433bd5de955c20afddc6eb4f4cb1"
+SRCREV_FORMAT = "armada_etna"
+
+PV = "0.1+git${SRCPV}"
+
+SRC_URI = " \
+    git://git.arm.linux.org.uk/cgit/xf86-video-armada.git;branch=unstable-devel;protocol=http;name=armada \
+    git://github.com/laanwj/etna_viv.git;protocol=https;name=etna;destsuffix=etna_viv \
+    "
+
+S = "${WORKDIR}/git"
+
+RDEPENDS_${PN} = "xserver-xorg-module-exa \
+                  xserver-xorg-extension-dri \
+                  xserver-xorg-extension-dri2 \
+                  xserver-xorg-extension-glx \
+                  "
+
+EXTRA_OECONF = "--disable-etnaviv \
+                --disable-vivante \
+                --with-etnaviv-source=${WORKDIR}/etna_viv \
+                "
diff --git a/recipes-graphics/xorg-xserver/xserver-xf86-config/use-mainline-bsp/xorg.conf b/recipes-graphics/xorg-xserver/xserver-xf86-config/use-mainline-bsp/xorg.conf
new file mode 100644 (file)
index 0000000..b6f8346
--- /dev/null
@@ -0,0 +1,28 @@
+Section "Device"
+       Identifier      "Driver0"
+       Screen          0
+       Driver          "armada"
+
+# Support hotplugging displays?
+       Option          "Hotplug"       "TRUE"
+
+# Support hardware cursor if available?
+       Option          "HWCursor"      "TRUE"
+
+# Use GPU acceleration?
+       Option          "UseGPU"        "TRUE"
+
+# Provide Xv interfaces?
+       Option          "XvAccel"       "TRUE"
+
+# Prefer overlay for Xv (TRUE for armada-drm, FALSE for imx-drm)
+       Option          "XvPreferOverlay" "TRUE"
+
+# Which accelerator module to load (automatically found if commented out)
+       Option          "AccelModule"   "etnadrm_gpu"
+       Option          "AccelModule"   "etnaviv_gpu"
+
+# Support DRI2 interfaces?
+       Option          "DRI"           "TRUE"
+EndSection
+