From 6e6c06eb48b2221418eecce4a46de1146a2063ef Mon Sep 17 00:00:00 2001 From: Scott Murray Date: Tue, 23 May 2023 17:48:49 -0400 Subject: Fix up i.MX8MQ EVK configuration Changes: - Since linux-fslc-lts does not boot on the EVK at the moment, and both it and linux-fslc still do not have support for the HDMI output, switch back to using linux-fslc-imx with tweaks to use etnaviv as we did pre-kirkstone. - A bbappend has been added for linux-fslc-lts since that was missed in a previous upgrade, and even though we are not using it now, it is possibly useful for other i.MX variants. - A machine template for using the NXP BSP with the Vivante GPU driver, imx8mq-evk-viv, has been restored, as testing shows it now works with the current panel-less homescreens. As before, the intent of this configuration is for testing or as an example of potential production use of meta-freescale where NXP support is available. - Start up of Bluetooth support has been disabled, as it currently causes kernel oopses or panics (both have been seen in testing). This happens with both machine templates. SPEC-4807 has been opened to track this issue. Bug-AGL: SPEC-4799 Change-Id: I38e4e720643714541efb0fed08d5ab64545bb02d Signed-off-by: Scott Murray Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28925 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller --- .../conf/include/agl_imx8mq-evk-common.inc | 11 ++----- meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc | 8 +++++ meta-agl-bsp/conf/include/agl_imx8mq-evk.inc | 38 +++++++++++----------- 3 files changed, 30 insertions(+), 27 deletions(-) create mode 100644 meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc (limited to 'meta-agl-bsp/conf/include') diff --git a/meta-agl-bsp/conf/include/agl_imx8mq-evk-common.inc b/meta-agl-bsp/conf/include/agl_imx8mq-evk-common.inc index ac7fc0edc..b3faadd0a 100644 --- a/meta-agl-bsp/conf/include/agl_imx8mq-evk-common.inc +++ b/meta-agl-bsp/conf/include/agl_imx8mq-evk-common.inc @@ -1,13 +1,8 @@ require agl_imx-common.inc -# Force use of the community supported LTS kernel instead of the -# default linux-fslc -IMX_DEFAULT_KERNEL:imx8mq-evk = "linux-fslc-lts" - -# For EVKB wifi support -#MACHINE_FEATURES:append = " bcm4356" - # Add helper to drive setting up HCI UART device -MACHINE_EXTRA_RRECOMMENDS:append = " hci-uart-helper" +# NOTE: Disabled 2023/05 due to kernel oops, further investigation +# required, see SPEC-4807 in JIRA. +#MACHINE_EXTRA_RRECOMMENDS:append = " hci-uart-helper" AGL_DEFAULT_INITRAMFS_FSTYPES := "" diff --git a/meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc b/meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc new file mode 100644 index 000000000..3988fcd6f --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc @@ -0,0 +1,8 @@ +require agl_imx8mq-evk-common.inc + +IMX_DEFAULT_BSP = "nxp" + +# NOTE: +# There is some potential benefit to using the community supported +# linux-fslc-imx hybrid kernel here, but keeping the configuration +# close to upstream to ease maintenance seems worthwhile. diff --git a/meta-agl-bsp/conf/include/agl_imx8mq-evk.inc b/meta-agl-bsp/conf/include/agl_imx8mq-evk.inc index d04ee41a7..620ee0fdd 100644 --- a/meta-agl-bsp/conf/include/agl_imx8mq-evk.inc +++ b/meta-agl-bsp/conf/include/agl_imx8mq-evk.inc @@ -1,23 +1,23 @@ -include agl_imx8mq-evk-common.inc +require agl_imx8mq-evk-common.inc -# NOTE: currently not using IMX_DEFAULT_BSP = "mainline", as it -# requires more changes than this approach of disabling -# Vivante. +# NOTE: +# Currently using the upstream default of IMX_DEFAULT_BSP = "mainline", +# since we want to use the etnaviv driver and upstream Mesa + weston +# stack. More tweaks are required to accomplish that if the BSP is set +# to "nxp". -# Add our own over-ride for use in a few recipes where there is -# conflicting Vivante vs etnaviv configuration. -#MACHINEOVERRIDES .= ":etnaviv" - -# Knock out Vivante overrides -#MACHINEOVERRIDES_EXTENDER:mx8mq:forcevariable = "" -#PREFERRED_VERSION_weston_mx8 = "8.0.0" -#PREFERRED_VERSION_wayland-protocols_mx8 = "1.20" -#PREFERRED_VERSION_libdrm_mx8 = "2.4.101" +# Force use of the community supported hybrid NXP/LTS kernel instead of +# the default linux-fslc. This is required to get the drivers required +# for HDMI output. +IMX_DEFAULT_KERNEL:imx8mq-evk = "linux-fslc-imx" -#CORE_IMAGE_EXTRA_INSTALL += "libdrm-etnaviv" +# Tweaks to allow using linux-fslc-imx on its own without the whole +# NXP BSP. Just the DISTROOVERRIDES change on its own is not enough, +# as COMPATIBLE_MACHINE is evaluated early enough that the recipe is +# not seen as compatible without an explicit override. +COMPATIBLE_MACHINE:pn-linux-fslc-imx = "(imx8mq-evk)" +DISTROOVERRIDES:pn-linux-fslc-imx:append = "mx8-nxp-bsp" -#PREFERRED_VERSION_gstreamer1.0_mx8 = "1.16.3" -#PREFERRED_VERSION_gstreamer1.0-plugins-base_mx8 = "1.16.3" -#PREFERRED_VERSION_gstreamer1.0-plugins-good_mx8 = "1.16.3" -#PREFERRED_VERSION_gstreamer1.0-plugins-bad_mx8 = "1.16.3" -#PREFERRED_VERSION_gstreamer1.0-plugins-ugly_mx8 = "1.16.3" +# Add our own over-ride for use in a few recipes where there is +# conflicting Vivante vs etnaviv configuration. +MACHINEOVERRIDES .= ":etnaviv" -- cgit 1.2.3-korg