summaryrefslogtreecommitdiffstats
path: root/meta-agl-bsp/meta-freescale-layer/recipes-kernel
diff options
context:
space:
mode:
Diffstat (limited to 'meta-agl-bsp/meta-freescale-layer/recipes-kernel')
-rw-r--r--meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/0001-enable-mhdp-with-etnaviv.patch23
-rw-r--r--meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/0002-dts-enable-etnaviv.patch23
-rw-r--r--meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/etnaviv.cfg4
-rw-r--r--meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx_%.bbappend14
4 files changed, 63 insertions, 1 deletions
diff --git a/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/0001-enable-mhdp-with-etnaviv.patch b/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/0001-enable-mhdp-with-etnaviv.patch
new file mode 100644
index 000000000..23ca0475a
--- /dev/null
+++ b/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/0001-enable-mhdp-with-etnaviv.patch
@@ -0,0 +1,23 @@
+Tweak MHDP driver Kconfig so it can be enabled with etnaviv
+
+The MHDP driver is needed for using HDMI on the i.MX8MQ EVK, tweak its
+Kconfig entry so that it can be enabled when using etnaviv, not just
+Vivante.
+
+Upstream-Status: pending
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+---
+
+diff --git a/drivers/gpu/drm/imx/Kconfig b/drivers/gpu/drm/imx/Kconfig
+index 63d5f1b532ee..a18ba56aa218 100644
+--- a/drivers/gpu/drm/imx/Kconfig
++++ b/drivers/gpu/drm/imx/Kconfig
+@@ -85,7 +85,7 @@ config DRM_IMX_CDNS_MHDP
+ select DRM_CDNS_DP
+ select DRM_CDNS_HDMI
+ select DRM_CDNS_AUDIO
+- depends on DRM_IMX
++ depends on DRM_IMX || DRM_ETNAVIV
+ help
+ Choose this if you want to use HDMI on i.MX8.
+
diff --git a/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/0002-dts-enable-etnaviv.patch b/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/0002-dts-enable-etnaviv.patch
new file mode 100644
index 000000000..4ce9b9d38
--- /dev/null
+++ b/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/0002-dts-enable-etnaviv.patch
@@ -0,0 +1,23 @@
+Enable etnaviv support in i.MX8MQ EVK devicetree
+
+Some further investigation is required into how to manage this upstream
+in meta-freescale, as it is not required for the i.MX6 platforms AFAIK.
+
+Upstream-Status: pending
+
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+---
+
+diff --git a/arch/arm64/boot/dts/freescale/imx8mq-evk.dts b/arch/arm64/boot/dts/freescale/imx8mq-evk.dts
+index f2a7e4069a0d..c0b6c5052656 100755
+--- a/arch/arm64/boot/dts/freescale/imx8mq-evk.dts
++++ b/arch/arm64/boot/dts/freescale/imx8mq-evk.dts
+@@ -1074,7 +1074,7 @@
+ status = "okay";
+ };
+
+-&gpu3d {
++&gpu {
+ status = "okay";
+ };
+
diff --git a/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/etnaviv.cfg b/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/etnaviv.cfg
new file mode 100644
index 000000000..35602c6d8
--- /dev/null
+++ b/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/etnaviv.cfg
@@ -0,0 +1,4 @@
+CONFIG_DRM_IMX=n
+CONFIG_DRM_IMX_CDNS_MHDP=y
+CONFIG_DRM_ROCKCHIP=n
+CONFIG_DRM_ETNAVIV=y
diff --git a/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx_%.bbappend b/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx_%.bbappend
index 33e72bf7d..549ba3994 100644
--- a/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx_%.bbappend
+++ b/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx_%.bbappend
@@ -1,7 +1,15 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
+FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:${THISDIR}/files:"
require recipes-kernel/linux/linux-agl.inc
+# These patches and the configuration fragment below will need to be
+# revisited if/when using IMX_DEFAULT_BSP = "mainline" with i.MX8
+# becomes more feasible with upstream meta-freescale.
+SRC_URI_append_etnaviv = " \
+ file://0001-enable-mhdp-with-etnaviv.patch \
+ file://0002-dts-enable-etnaviv.patch \
+"
+
# Make sure these are enabled so that AGL configurations work
SRC_URI_append = " file://tmpfs.cfg"
KERNEL_CONFIG_FRAGMENTS_append = " ${WORKDIR}/tmpfs.cfg"
@@ -18,6 +26,10 @@ KERNEL_CONFIG_FRAGMENTS_append = " ${WORKDIR}/cfg80211.cfg"
SRC_URI_append_imx8mqevk = " file://imx8mq-evkb.cfg"
KERNEL_CONFIG_FRAGMENTS_append_imx8mqevk = " ${WORKDIR}/imx8mq-evkb.cfg"
+# Build in etnaviv if required
+SRC_URI_append_etnaviv = " file://etnaviv.cfg"
+KERNEL_CONFIG_FRAGMENTS_append_etnaviv = " ${WORKDIR}/etnaviv.cfg"
+
# Turn off a couple of things enabled by default by Freescale
# (lock debugging and userspace firmware loader fallback)
SRC_URI_append = " file://fixups.cfg"