summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScott Murray <scott.murray@konsulko.com>2024-04-30 17:57:39 -0400
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2024-05-02 22:04:23 +0000
commit23841bb0e11260b7c2660be55c0de02c7d59f886 (patch)
tree0d31d24ee35f1d108e6be44c3555ea2f2014f390
parentae05f86cb03c47a6a68e0f7ef644319155435d6e (diff)
meta-agl-bsp: NXP i.MX6 and i.MX8 fixes
These changes should allow the etnaviv GPU driver using NXP i.MX6 and i.MX8 machines (e.g. cubox-i, imx8mq-evk) to build. Testing on hardware is required for the i.MX6, and etnaviv does not seem to be working on the i.MX8MQ-EVK as the previous devicetree tweak being used no longer seems applicable. Further investigation will be done in the near future as time permits. Notable changes: - The i.MX6 configurations have been switched to using the linux-fslc kernel instead of linux-fslc-lts, as the latter is older (6.1 vs 6.6). - The kernel patch against linux-fslc-imx to enable the MHDP driver when using etnaviv has been removed since it is no longer required. - The local workaround to allow enabling the "wayland" PACKAGECONFIG when building weston-imx has been replaced with use of the now provided upstream variable that allows that. Note that building with this version of Weston has not been tested since it is tied to using the Vivante GPU driver. Bug-AGL: SPEC-5122 Change-Id: I75810dd152197f9435158839fad00327ed7e42e7 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/29878 ci-image-build: Jenkins Job builder account Tested-by: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
-rw-r--r--meta-agl-bsp/conf/include/agl_cubox-i.inc24
-rw-r--r--meta-agl-bsp/conf/include/agl_imx6qdlsabreauto.inc4
-rw-r--r--meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston_10.0.1.imx.bbappend10
-rw-r--r--meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston_11.0.3.imx.bbappend2
-rw-r--r--meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/0001-enable-mhdp-with-etnaviv.patch22
-rw-r--r--meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx_%.bbappend9
6 files changed, 21 insertions, 50 deletions
diff --git a/meta-agl-bsp/conf/include/agl_cubox-i.inc b/meta-agl-bsp/conf/include/agl_cubox-i.inc
index ee5e759e4..fc0e14b5f 100644
--- a/meta-agl-bsp/conf/include/agl_cubox-i.inc
+++ b/meta-agl-bsp/conf/include/agl_cubox-i.inc
@@ -1,15 +1,21 @@
require agl_imx6-common.inc
-# Force use of the community supported LTS kernel instead of the
-# default linux-fslc
-PREFERRED_PROVIDER_virtual/kernel = "linux-fslc-lts"
+# Temporary fix for upstream breakage
+# Note that the :cubox-i override is needed because we're
+# overriding a definition done in the machine .conf.
+KERNEL_DEVICETREE:cubox-i = " \
+ nxp/imx/imx6dl-cubox-i.dtb \
+ nxp/imx/imx6q-cubox-i.dtb \
+ nxp/imx/imx6dl-hummingboard.dtb \
+ nxp/imx/imx6q-hummingboard.dtb \
+"
# Include devicetrees for SOM 1.5 and Hummingboard 2 hardware
KERNEL_DEVICETREE:append = " \
- imx6dl-hummingboard-som-v15.dtb \
- imx6q-hummingboard-som-v15.dtb \
- imx6dl-hummingboard2.dtb \
- imx6q-hummingboard2.dtb \
- imx6dl-hummingboard2-som-v15.dtb \
- imx6q-hummingboard2-som-v15.dtb \
+ nxp/imx/imx6dl-hummingboard-som-v15.dtb \
+ nxp/imx/imx6q-hummingboard-som-v15.dtb \
+ nxp/imx/imx6dl-hummingboard2.dtb \
+ nxp/imx/imx6q-hummingboard2.dtb \
+ nxp/imx/imx6dl-hummingboard2-som-v15.dtb \
+ nxp/imx/imx6q-hummingboard2-som-v15.dtb \
"
diff --git a/meta-agl-bsp/conf/include/agl_imx6qdlsabreauto.inc b/meta-agl-bsp/conf/include/agl_imx6qdlsabreauto.inc
index f058ba1a5..cb13de713 100644
--- a/meta-agl-bsp/conf/include/agl_imx6qdlsabreauto.inc
+++ b/meta-agl-bsp/conf/include/agl_imx6qdlsabreauto.inc
@@ -1,5 +1 @@
require agl_imx6-common.inc
-
-# Force use of the community supported LTS kernel instead of the
-# default linux-fslc
-IMX_DEFAULT_KERNEL:imx6qdlsabreauto = "linux-fslc-lts"
diff --git a/meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston_10.0.1.imx.bbappend b/meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston_10.0.1.imx.bbappend
deleted file mode 100644
index 07a43f958..000000000
--- a/meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston_10.0.1.imx.bbappend
+++ /dev/null
@@ -1,10 +0,0 @@
-# Work around PACKAGECONFIG:remove of "x11 wayland" added to the recipe
-# in meta-freescale commit 5a5c5dd. This can be removed once the issue
-# has been resolved by a revert of that breakage upstream.
-# What is done below is effectively a disabling of the "wayland"
-# PACKAGECONFIG option and then open coding what its effects would
-# normally be, since the :remove prevents specifying it in the usual way.
-PACKAGECONFIG[wayland] = ""
-DEPENDS:append = " virtual/egl virtual/libgles2"
-PACKAGECONFIG_CONFARGS:append = " -Dbackend-wayland=true"
-
diff --git a/meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston_11.0.3.imx.bbappend b/meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston_11.0.3.imx.bbappend
new file mode 100644
index 000000000..ca162e28f
--- /dev/null
+++ b/meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston_11.0.3.imx.bbappend
@@ -0,0 +1,2 @@
+# Use provided hook to disable removal of wayland from PACKAGECONFIG
+PACKAGECONFIG_IMX_REMOVALS = "x11"
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
deleted file mode 100644
index f95891a2f..000000000
--- a/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx/0001-enable-mhdp-with-etnaviv.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-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/mhdp/Kconfig b/drivers/gpu/drm/imx/mhdp/Kconfig
-index 225ccc3638a8..164b42f04e94 100644
---- a/drivers/gpu/drm/imx/mhdp/Kconfig
-+++ b/drivers/gpu/drm/imx/mhdp/Kconfig
-@@ -7,6 +7,6 @@ config DRM_IMX_CDNS_MHDP
- select DRM_CDNS_HDMI
- select DRM_CDNS_AUDIO
- select DRM_CDNS_HDMI_HDCP
-- 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_%.bbappend b/meta-agl-bsp/meta-freescale-layer/recipes-kernel/linux/linux-fslc-imx_%.bbappend
index 0772a98a8..7fa055b40 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
@@ -4,11 +4,10 @@ require linux-fslc.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 \
-"
+# becomes feasible with the linux-fslc kernel.
+#SRC_URI:append:etnaviv = " \
+# file://0002-dts-enable-etnaviv.patch \
+#"
# Support for i.MX8MQ EVKB (e.g. Broadcom wifi)
AGL_KCONFIG_FRAGMENTS:append:imx8mq-evk = " imx8mq-evkb.cfg"