From fb1e35f084b684f345854b156b1ff83645c31ed0 Mon Sep 17 00:00:00 2001 From: Trevor Woerner Date: Sat, 27 May 2017 01:11:08 -0400 Subject: xf86-video-armada: add 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 Signed-off-by: Otavio Salvador --- conf/machine/include/imx-base.inc | 1 + .../xorg-driver/xf86-video-armada_git.bb | 46 ++++++++++++++++++++++ .../xserver-xf86-config/use-mainline-bsp/xorg.conf | 28 +++++++++++++ 3 files changed, 75 insertions(+) create mode 100644 recipes-graphics/xorg-driver/xf86-video-armada_git.bb create mode 100644 recipes-graphics/xorg-xserver/xserver-xf86-config/use-mainline-bsp/xorg.conf diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc index 6f3b39c2..b876b500 100644 --- a/conf/machine/include/imx-base.inc +++ b/conf/machine/include/imx-base.inc @@ -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 index 00000000..4caebb11 --- /dev/null +++ b/recipes-graphics/xorg-driver/xf86-video-armada_git.bb @@ -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 index 00000000..b6f83469 --- /dev/null +++ b/recipes-graphics/xorg-xserver/xserver-xf86-config/use-mainline-bsp/xorg.conf @@ -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 + -- cgit v1.2.3-54-g00ecf