diff options
author | Scott Murray <scott.murray@konsulko.com> | 2024-04-30 17:57:39 -0400 |
---|---|---|
committer | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2024-05-02 22:04:23 +0000 |
commit | 23841bb0e11260b7c2660be55c0de02c7d59f886 (patch) | |
tree | 0d31d24ee35f1d108e6be44c3555ea2f2014f390 | |
parent | ae05f86cb03c47a6a68e0f7ef644319155435d6e (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>
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" |