summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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/conf/include/agl_raspberrypi4.inc12
-rw-r--r--meta-agl-bsp/conf/include/agl_raspberrypi5.inc29
-rw-r--r--meta-agl-bsp/conf/include/agl_rcar-nogfx.inc10
-rw-r--r--meta-agl-bsp/conf/include/agl_rcar.inc7
-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
-rw-r--r--meta-agl-bsp/meta-sifive/recipes-bsp/u-boot/files/0001-WIP-Make-BSP-work-under-YP-kirkstone.patch46
-rw-r--r--meta-agl-bsp/meta-sifive/recipes-bsp/u-boot/u-boot-sifive_2023.07.02.bbappend3
-rw-r--r--meta-agl-bsp/openembedded-layer/recipes-devtools/abseil-cpp/abseil-cpp/0001-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch82
-rw-r--r--meta-agl-bsp/openembedded-layer/recipes-devtools/abseil-cpp/abseil-cpp_20240116.2.bbappend3
-rw-r--r--meta-agl-bsp/openembedded-layer/recipes-devtools/python/python3-grpcio/0001-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch82
-rw-r--r--meta-agl-bsp/openembedded-layer/recipes-devtools/python/python3-grpcio_1.62.%.bbappend3
-rw-r--r--meta-agl-bsp/virtualization-layer/recipes-graphics/mesa/mesa/0001-virgl-virgl_driinfo.h.in-Disable-by-default-emulated.patch12
-rw-r--r--meta-agl-bsp/virtualization-layer/recipes-graphics/mesa/mesa_24.%.bbappend (renamed from meta-agl-bsp/virtualization-layer/recipes-graphics/mesa/mesa_22.%.bbappend)0
-rw-r--r--meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_6.6.bbappend (renamed from meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_5.15.bbappend)0
-rw-r--r--meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bb38
-rw-r--r--meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bbappend2
-rw-r--r--meta-agl-core/recipes-graphics/wayland/weston-ini-conf/remote-output.cfg.in5
-rw-r--r--templates/feature/agl-ci/99_local.conf.inc3
-rw-r--r--templates/feature/agl-selinux/50_bblayers.conf.inc3
-rw-r--r--templates/feature/agl-weston-remoting/included.dep1
-rw-r--r--templates/machine/raspberrypi5/50_bblayers.conf.inc5
-rw-r--r--templates/machine/unmatched/50_bblayers.conf.inc4
27 files changed, 242 insertions, 179 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/conf/include/agl_raspberrypi4.inc b/meta-agl-bsp/conf/include/agl_raspberrypi4.inc
index 4ba7ff0f6..998ffedc8 100644
--- a/meta-agl-bsp/conf/include/agl_raspberrypi4.inc
+++ b/meta-agl-bsp/conf/include/agl_raspberrypi4.inc
@@ -21,17 +21,5 @@ IMAGE_INSTALL:append = " kernel-modules linux-firmware-rpidistro-bcm43430 linux-
# Psplash causes crash on first boot on RPi
IMAGE_FEATURES:remove = "splash"
-# Build updatable image. Only takes effect when sota.bbclass is inherited
-DISTRO_FEATURES:append = " sota"
-
-# Add xen build, if the xen feature activated
-DISTRO_FEATURES:append = " ${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen', '', d)}"
-
-# add xen-tools to build
-IMAGE_INSTALL:append = " ${@bb.utils.contains('AGL_XEN_WANTED', '1', 'xen-tools xen-mkimage-rpi4', '', d)}"
-
-# Add xen-raspberry binary to boot files
-IMAGE_BOOT_FILES:append = " ${@bb.utils.contains('AGL_XEN_WANTED','1', 'xen-${MACHINE}', '',d)}"
-
#DISPLAY CONFIGURATION
WESTON_DISPLAYS:raspberrypi4 = " hdmi-a-1-90 hdmi-a-2-90"
diff --git a/meta-agl-bsp/conf/include/agl_raspberrypi5.inc b/meta-agl-bsp/conf/include/agl_raspberrypi5.inc
index a0e675956..212c9ff1b 100644
--- a/meta-agl-bsp/conf/include/agl_raspberrypi5.inc
+++ b/meta-agl-bsp/conf/include/agl_raspberrypi5.inc
@@ -4,8 +4,16 @@ GPU_MEM = "256"
# Add CMA to the kernel arguments for SOTA
OSTREE_KERNEL_ARGS:sota:append = " cma=256M"
-# use u-boot always (RPi5 U-boot is not ready yet)
-RPI_USE_U_BOOT = "0"
+# use u-boot always
+RPI_USE_U_BOOT = "1"
+
+# Re-enable U-Boot for raspberrypi5 here until upstream is fixed.
+# Note that this assumes the use of scarthgap/u-boot meta-lts-mixins
+# branch.
+UBOOT_MACHINE = "rpi_arm64_config"
+COMPATIBLE_MACHINE:pn-u-boot:forcevariable = ""
+KERNEL_IMAGETYPE_UBOOT ?= "Image"
+KERNEL_BOOTCMD ?= "booti"
# Use UART for serial console
ENABLE_UART ?= "1"
@@ -13,22 +21,13 @@ ENABLE_UART ?= "1"
# For libomxil
#LICENSE_FLAGS_ACCEPTED = "commercial"
-IMAGE_INSTALL:append = " kernel-modules linux-firmware-rpidistro-bcm43430 linux-firmware-rpidistro-bcm43455 create-combined-dtb "
+# For linux-firmware-rpidistro
+LICENSE_FLAGS_ACCEPTED += "synaptics-killswitch"
+
+IMAGE_INSTALL:append = " kernel-modules create-combined-dtb "
# Psplash causes crash on first boot on RPi
IMAGE_FEATURES:remove = "splash"
-# Build updatable image. Only takes effect when sota.bbclass is inherited
-DISTRO_FEATURES:append = " sota"
-
-# Add xen build, if the xen feature activated
-DISTRO_FEATURES:append = " ${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen', '', d)}"
-
-# add xen-tools to build
-IMAGE_INSTALL:append = " ${@bb.utils.contains('AGL_XEN_WANTED', '1', 'xen-tools xen-mkimage-rpi4', '', d)}"
-
-# Add xen-raspberry binary to boot files
-IMAGE_BOOT_FILES:append = " ${@bb.utils.contains('AGL_XEN_WANTED','1', 'xen-${MACHINE}', '',d)}"
-
#DISPLAY CONFIGURATION
WESTON_DISPLAYS:raspberrypi5 = " hdmi-a-1-90 hdmi-a-2-90"
diff --git a/meta-agl-bsp/conf/include/agl_rcar-nogfx.inc b/meta-agl-bsp/conf/include/agl_rcar-nogfx.inc
index fb67fd976..64e13642e 100644
--- a/meta-agl-bsp/conf/include/agl_rcar-nogfx.inc
+++ b/meta-agl-bsp/conf/include/agl_rcar-nogfx.inc
@@ -58,3 +58,13 @@ BBMASK += "meta-renesas/meta-rcar-gen3/recipes-graphics/cogl/cogl-1.0_1.%.bbappe
# packagegroup bbclass is inherited. This can be removed when upstream
# is fixed to add the required PACKAGE_ARCH = "${MACHINE_ARCH}".
PACKAGE_ARCH:pn-packagegroup-multimedia-libs = "${MACHINE_ARCH}"
+
+# Mask out BSP layer gstreamer* 1.22.x bbappends for now, as the BSP
+# effectively is building 1.20.x plugins and packaging them as 1.22,
+# which breaks building various things. The whole directory is not
+# commented out because we still want the vspfilter plugin.
+# The BBMASKs need to be here instead of agl_rcar.ing since without
+# them there are issues with the gstreamer1.0-plugins-bad patches in
+# meta-agl-core not applying.
+BBMASK += "meta-renesas/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx"
+BBMASK += "meta-renesas/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-"
diff --git a/meta-agl-bsp/conf/include/agl_rcar.inc b/meta-agl-bsp/conf/include/agl_rcar.inc
index 01314f8c9..ce3b8a8f9 100644
--- a/meta-agl-bsp/conf/include/agl_rcar.inc
+++ b/meta-agl-bsp/conf/include/agl_rcar.inc
@@ -52,10 +52,3 @@ MACHINE_EXTRA_RRECOMMENDS:append:rcar-gen3 = " \
kernel-module-vspm-if \
omx-user-module \
"
-
-# Mask out BSP layer gstreamer* 1.22.x bbappends for now, as the BSP
-# effectively is building 1.20.x plugins and packaging them as 1.22,
-# which breaks building various things. The whole directory is not
-# commented out because we still want the vspfilter plugin.
-BBMASK += "meta-renesas/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx"
-BBMASK += "meta-renesas/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-"
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"
diff --git a/meta-agl-bsp/meta-sifive/recipes-bsp/u-boot/files/0001-WIP-Make-BSP-work-under-YP-kirkstone.patch b/meta-agl-bsp/meta-sifive/recipes-bsp/u-boot/files/0001-WIP-Make-BSP-work-under-YP-kirkstone.patch
deleted file mode 100644
index 7fce516f0..000000000
--- a/meta-agl-bsp/meta-sifive/recipes-bsp/u-boot/files/0001-WIP-Make-BSP-work-under-YP-kirkstone.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 57575ce80a96411bce828be6fc84ebd2ed003810 Mon Sep 17 00:00:00 2001
-From: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
-Date: Tue, 12 Sep 2023 22:50:28 +0200
-Subject: [PATCH] [WIP] Make BSP work under YP kirkstone
-
-This fixes build issues when using the layer with YP 'kirkstone' branch.
-
-check-config.sh can be solved differently as well.
-binman/control.py needs a little investigation
-
-Upstream-Status: Inappropriate
-Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
----
- scripts/check-config.sh | 2 +-
- tools/binman/control.py | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/scripts/check-config.sh b/scripts/check-config.sh
-index cc1c9a54d9..633c69eb76 100755
---- a/scripts/check-config.sh
-+++ b/scripts/check-config.sh
-@@ -57,7 +57,7 @@ if [ -s ${new_adhoc} ]; then
- echo >&2 "Please add these via Kconfig instead. Find a suitable Kconfig"
- echo >&2 "file and add a 'config' or 'menuconfig' option."
- # Don't delete the temporary files in case they are useful
-- exit 1
-+ exit 0
- else
- rm ${suspects} ${ok} ${new_adhoc}
- fi
-diff --git a/tools/binman/control.py b/tools/binman/control.py
-index 47aac207b4..3d013dea17 100644
---- a/tools/binman/control.py
-+++ b/tools/binman/control.py
-@@ -8,7 +8,7 @@
- from collections import OrderedDict
- import glob
- import os
--import pkg_resources
-+#import pkg_resources
- import re
-
- import sys
---
-2.35.3
-
diff --git a/meta-agl-bsp/meta-sifive/recipes-bsp/u-boot/u-boot-sifive_2023.07.02.bbappend b/meta-agl-bsp/meta-sifive/recipes-bsp/u-boot/u-boot-sifive_2023.07.02.bbappend
deleted file mode 100644
index 30bf957cf..000000000
--- a/meta-agl-bsp/meta-sifive/recipes-bsp/u-boot/u-boot-sifive_2023.07.02.bbappend
+++ /dev/null
@@ -1,3 +0,0 @@
-FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
-
-SRC_URI:append = " file://0001-WIP-Make-BSP-work-under-YP-kirkstone.patch "
diff --git a/meta-agl-bsp/openembedded-layer/recipes-devtools/abseil-cpp/abseil-cpp/0001-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch b/meta-agl-bsp/openembedded-layer/recipes-devtools/abseil-cpp/abseil-cpp/0001-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch
new file mode 100644
index 000000000..461df7a60
--- /dev/null
+++ b/meta-agl-bsp/openembedded-layer/recipes-devtools/abseil-cpp/abseil-cpp/0001-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch
@@ -0,0 +1,82 @@
+From 7335a36d0b5c1c597566f9aa3f458a5b6817c3b4 Mon Sep 17 00:00:00 2001
+From: aurel32 <aurelien@aurel32.net>
+Date: Fri, 22 Mar 2024 14:21:13 -0700
+Subject: [PATCH] PR #1644: unscaledcycleclock: remove RISC-V support
+
+Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1644
+
+Starting with Linux 6.6 [1], RDCYCLE is a privileged instruction on RISC-V and can't be used directly from userland. There is a sysctl option to change that as a transition period, but it will eventually disappear.
+
+The RDTIME instruction is another less accurate alternative, however its frequency varies from board to board, and there is currently now way to get its frequency from userland [2].
+
+Therefore this patch just removes the code for unscaledcycleclock on RISC-V. Without processor specific implementation, abseil relies on std::chrono::steady_clock::now().time_since_epoch() which is basically a wrapper around clock_gettime (CLOCK_MONOTONIC), which in turns use __vdso_clock_gettime(). On RISC-V this VDSO is just a wrapper around RDTIME correctly scaled to use nanoseconds units.
+
+This fixes the testsuite on riscv64, tested on a VisionFive 2 board.
+
+[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=cc4c07c89aada16229084eeb93895c95b7eabaa3
+[2] https://github.com/abseil/abseil-cpp/pull/1631
+Merge 43356a2548cfde76e164d446cb69004b488c6a71 into 76f8011beabdaee872b5fde7546e02407b220cb1
+
+Merging this change closes #1644
+
+COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1644 from aurel32:rv64-no-unscaledcycleclock 43356a2548cfde76e164d446cb69004b488c6a71
+PiperOrigin-RevId: 618286262
+Change-Id: Ie4120a727e7d0bb185df6e06ea145c780ebe6652
+
+Upstream-Status: Backport [https://github.com/abseil/abseil-cpp/commit/7335a36d]
+[Adapted to apply on top of meta-oe's patch stack]
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+---
+ absl/base/internal/unscaledcycleclock.cc | 12 ------------
+ absl/base/internal/unscaledcycleclock_config.h | 5 ++---
+ 2 files changed, 2 insertions(+), 15 deletions(-)
+
+diff --git a/absl/base/internal/unscaledcycleclock.cc b/absl/base/internal/unscaledcycleclock.cc
+index f11fecb3..103b4f6a 100644
+--- a/absl/base/internal/unscaledcycleclock.cc
++++ b/absl/base/internal/unscaledcycleclock.cc
+@@ -121,18 +121,6 @@ double UnscaledCycleClock::Frequency() {
+ return aarch64_timer_frequency;
+ }
+
+-#elif defined(__riscv)
+-
+-int64_t UnscaledCycleClock::Now() {
+- int64_t virtual_timer_value;
+- asm volatile("rdcycle %0" : "=r"(virtual_timer_value));
+- return virtual_timer_value;
+-}
+-
+-double UnscaledCycleClock::Frequency() {
+- return base_internal::NominalCPUFrequency();
+-}
+-
+ #elif defined(_M_IX86) || defined(_M_X64)
+
+ #pragma intrinsic(__rdtsc)
+diff --git a/absl/base/internal/unscaledcycleclock_config.h b/absl/base/internal/unscaledcycleclock_config.h
+index 5e232c1a..83552fc5 100644
+--- a/absl/base/internal/unscaledcycleclock_config.h
++++ b/absl/base/internal/unscaledcycleclock_config.h
+@@ -22,7 +22,6 @@
+ // The following platforms have an implementation of a hardware counter.
+ #if defined(__i386__) || defined(__x86_64__) || defined(__aarch64__) || \
+ ((defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)) || \
+- defined(__riscv) || \
+ defined(_M_IX86) || (defined(_M_X64) && !defined(_M_ARM64EC))
+ #define ABSL_HAVE_UNSCALED_CYCLECLOCK_IMPLEMENTATION 1
+ #else
+@@ -54,8 +53,8 @@
+ #if ABSL_USE_UNSCALED_CYCLECLOCK
+ // This macro can be used to test if UnscaledCycleClock::Frequency()
+ // is NominalCPUFrequency() on a particular platform.
+-#if (defined(__i386__) || defined(__x86_64__) || defined(__riscv) || \
+- defined(_M_IX86) || defined(_M_X64))
++#if (defined(__i386__) || defined(__x86_64__) || defined(_M_IX86) || \
++ defined(_M_X64))
+ #define ABSL_INTERNAL_UNSCALED_CYCLECLOCK_FREQUENCY_IS_CPU_FREQUENCY
+ #endif
+ #endif
+--
+2.44.0
+
diff --git a/meta-agl-bsp/openembedded-layer/recipes-devtools/abseil-cpp/abseil-cpp_20240116.2.bbappend b/meta-agl-bsp/openembedded-layer/recipes-devtools/abseil-cpp/abseil-cpp_20240116.2.bbappend
new file mode 100644
index 000000000..2bf47126f
--- /dev/null
+++ b/meta-agl-bsp/openembedded-layer/recipes-devtools/abseil-cpp/abseil-cpp_20240116.2.bbappend
@@ -0,0 +1,3 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
+
+SRC_URI += "file://0001-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch"
diff --git a/meta-agl-bsp/openembedded-layer/recipes-devtools/python/python3-grpcio/0001-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch b/meta-agl-bsp/openembedded-layer/recipes-devtools/python/python3-grpcio/0001-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch
new file mode 100644
index 000000000..82f15f88c
--- /dev/null
+++ b/meta-agl-bsp/openembedded-layer/recipes-devtools/python/python3-grpcio/0001-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch
@@ -0,0 +1,82 @@
+From 7335a36d0b5c1c597566f9aa3f458a5b6817c3b4 Mon Sep 17 00:00:00 2001
+From: aurel32 <aurelien@aurel32.net>
+Date: Fri, 22 Mar 2024 14:21:13 -0700
+Subject: [PATCH] PR #1644: unscaledcycleclock: remove RISC-V support
+
+Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1644
+
+Starting with Linux 6.6 [1], RDCYCLE is a privileged instruction on RISC-V and can't be used directly from userland. There is a sysctl option to change that as a transition period, but it will eventually disappear.
+
+The RDTIME instruction is another less accurate alternative, however its frequency varies from board to board, and there is currently now way to get its frequency from userland [2].
+
+Therefore this patch just removes the code for unscaledcycleclock on RISC-V. Without processor specific implementation, abseil relies on std::chrono::steady_clock::now().time_since_epoch() which is basically a wrapper around clock_gettime (CLOCK_MONOTONIC), which in turns use __vdso_clock_gettime(). On RISC-V this VDSO is just a wrapper around RDTIME correctly scaled to use nanoseconds units.
+
+This fixes the testsuite on riscv64, tested on a VisionFive 2 board.
+
+[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=cc4c07c89aada16229084eeb93895c95b7eabaa3
+[2] https://github.com/abseil/abseil-cpp/pull/1631
+Merge 43356a2548cfde76e164d446cb69004b488c6a71 into 76f8011beabdaee872b5fde7546e02407b220cb1
+
+Merging this change closes #1644
+
+COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1644 from aurel32:rv64-no-unscaledcycleclock 43356a2548cfde76e164d446cb69004b488c6a71
+PiperOrigin-RevId: 618286262
+Change-Id: Ie4120a727e7d0bb185df6e06ea145c780ebe6652
+
+Upstream-Status: Backport [https://github.com/abseil/abseil-cpp/commit/7335a36d]
+[Adapted to apply on top of meta-oe's patch stack]
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+---
+ .../absl/base/internal/unscaledcycleclock.cc | 12 ------------
+ .../absl/base/internal/unscaledcycleclock_config.h | 5 ++---
+ 2 files changed, 2 insertions(+), 15 deletions(-)
+
+diff --git a/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc b/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc
+index f11fecb..103b4f6 100644
+--- a/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc
++++ b/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc
+@@ -121,18 +121,6 @@ double UnscaledCycleClock::Frequency() {
+ return aarch64_timer_frequency;
+ }
+
+-#elif defined(__riscv)
+-
+-int64_t UnscaledCycleClock::Now() {
+- int64_t virtual_timer_value;
+- asm volatile("rdcycle %0" : "=r"(virtual_timer_value));
+- return virtual_timer_value;
+-}
+-
+-double UnscaledCycleClock::Frequency() {
+- return base_internal::NominalCPUFrequency();
+-}
+-
+ #elif defined(_M_IX86) || defined(_M_X64)
+
+ #pragma intrinsic(__rdtsc)
+diff --git a/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h b/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h
+index 5e232c1..83552fc 100644
+--- a/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h
++++ b/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h
+@@ -22,7 +22,6 @@
+ // The following platforms have an implementation of a hardware counter.
+ #if defined(__i386__) || defined(__x86_64__) || defined(__aarch64__) || \
+ ((defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)) || \
+- defined(__riscv) || \
+ defined(_M_IX86) || (defined(_M_X64) && !defined(_M_ARM64EC))
+ #define ABSL_HAVE_UNSCALED_CYCLECLOCK_IMPLEMENTATION 1
+ #else
+@@ -54,8 +53,8 @@
+ #if ABSL_USE_UNSCALED_CYCLECLOCK
+ // This macro can be used to test if UnscaledCycleClock::Frequency()
+ // is NominalCPUFrequency() on a particular platform.
+-#if (defined(__i386__) || defined(__x86_64__) || defined(__riscv) || \
+- defined(_M_IX86) || defined(_M_X64))
++#if (defined(__i386__) || defined(__x86_64__) || defined(_M_IX86) || \
++ defined(_M_X64))
+ #define ABSL_INTERNAL_UNSCALED_CYCLECLOCK_FREQUENCY_IS_CPU_FREQUENCY
+ #endif
+ #endif
+--
+2.44.0
+
diff --git a/meta-agl-bsp/openembedded-layer/recipes-devtools/python/python3-grpcio_1.62.%.bbappend b/meta-agl-bsp/openembedded-layer/recipes-devtools/python/python3-grpcio_1.62.%.bbappend
new file mode 100644
index 000000000..2bf47126f
--- /dev/null
+++ b/meta-agl-bsp/openembedded-layer/recipes-devtools/python/python3-grpcio_1.62.%.bbappend
@@ -0,0 +1,3 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
+
+SRC_URI += "file://0001-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch"
diff --git a/meta-agl-bsp/virtualization-layer/recipes-graphics/mesa/mesa/0001-virgl-virgl_driinfo.h.in-Disable-by-default-emulated.patch b/meta-agl-bsp/virtualization-layer/recipes-graphics/mesa/mesa/0001-virgl-virgl_driinfo.h.in-Disable-by-default-emulated.patch
index 8bc102c92..d27696056 100644
--- a/meta-agl-bsp/virtualization-layer/recipes-graphics/mesa/mesa/0001-virgl-virgl_driinfo.h.in-Disable-by-default-emulated.patch
+++ b/meta-agl-bsp/virtualization-layer/recipes-graphics/mesa/mesa/0001-virgl-virgl_driinfo.h.in-Disable-by-default-emulated.patch
@@ -1,7 +1,8 @@
-From 39dea63ebce2764c683c8c2eddbb10cf07a970c4 Mon Sep 17 00:00:00 2001
+From 737ccb36c0faf275037e5e96a263c89a44886ddd Mon Sep 17 00:00:00 2001
From: Marius Vlad <marius.vlad@collabora.com>
Date: Mon, 19 Dec 2022 11:51:28 +0200
Subject: [PATCH] virgl/virgl_driinfo.h.in: Disable by default emulated BGRA
+
and swizzling
Workaround in place for virtio aarch64 to avoid graphical artefacts when
@@ -16,10 +17,10 @@ Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/virgl/virgl_driinfo.h.in b/src/gallium/drivers/virgl/virgl_driinfo.h.in
-index f57e5880965..1c06f932c5c 100644
+index ec688f5..244021e 100644
--- a/src/gallium/drivers/virgl/virgl_driinfo.h.in
+++ b/src/gallium/drivers/virgl/virgl_driinfo.h.in
-@@ -8,7 +8,7 @@
+@@ -8,8 +8,8 @@
// 5. Implement the tweak in virglrenderer
DRI_CONF_SECTION_MISCELLANEOUS
DRI_CONF_FORMAT_L8_SRGB_ENABLE_READBACK(false)
@@ -28,7 +29,8 @@ index f57e5880965..1c06f932c5c 100644
+ DRI_CONF_GLES_EMULATE_BGRA(false)
+ DRI_CONF_GLES_APPLY_BGRA_DEST_SWIZZLE(false)
DRI_CONF_GLES_SAMPLES_PASSED_VALUE(1024, 1, 400000000)
- DRI_CONF_SECTION_END
+
+ /*
--
-2.35.1
+2.30.2
diff --git a/meta-agl-bsp/virtualization-layer/recipes-graphics/mesa/mesa_22.%.bbappend b/meta-agl-bsp/virtualization-layer/recipes-graphics/mesa/mesa_24.%.bbappend
index 0a6606ebf..0a6606ebf 100644
--- a/meta-agl-bsp/virtualization-layer/recipes-graphics/mesa/mesa_22.%.bbappend
+++ b/meta-agl-bsp/virtualization-layer/recipes-graphics/mesa/mesa_24.%.bbappend
diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_5.15.bbappend b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_6.6.bbappend
index 6952436a3..6952436a3 100644
--- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_5.15.bbappend
+++ b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_6.6.bbappend
diff --git a/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bb b/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bb
index 0611ec5b4..574f89f2b 100644
--- a/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bb
+++ b/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bb
@@ -13,7 +13,6 @@ SRC_URI = " \
file://hdmi-a-2-90.cfg \
file://hdmi-a-2-180.cfg \
file://hdmi-a-2-270.cfg \
- file://remote-output.cfg.in \
file://virtual-0.cfg \
file://virtual-90.cfg \
file://virtual-180.cfg \
@@ -36,18 +35,6 @@ WESTON_FRAGMENTS = "core shell grpc-proxy ${WESTON_DISPLAYS}"
# On-target weston.ini directory
weston_ini_dir = "${sysconfdir}/xdg/weston"
-# Options for the user to change in local.conf
-# e.g. REMOTING_OUTPUT_MODE = "1080x1488"
-REMOTING_OUTPUT_MODE ??= "640x720@30"
-REMOTING_OUTPUT_HOST ??= "192.168.10.3"
-REMOTING_OUTPUT_PORT ??= "5005"
-
-do_configure() {
- sed -e "s#host=.*#host=${REMOTING_OUTPUT_HOST}#" \
- -e "s#port=.*#port=${REMOTING_OUTPUT_PORT}#" \
- ${WORKDIR}/remote-output.cfg.in > ${WORKDIR}/remote-output.cfg
-}
-
do_compile() {
# Put all of our cfg files together for a default portrait
# orientation configuration
@@ -109,47 +96,42 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
ALTERNATIVE_LINK_NAME[weston.ini] = "${weston_ini_dir}/weston.ini"
RPROVIDES:${PN} = "weston-ini"
-RCONFLICTS:${PN} = "${PN}-landscape"
ALTERNATIVE:${PN} = "weston.ini"
ALTERNATIVE_TARGET_${PN} = "${weston_ini_dir}/weston.ini.default"
-PACKAGE_BEFORE_PN += "${PN}-landscape"
+# landscape
+PACKAGE_BEFORE_PN += "${PN}-landscape"
FILES:${PN}-landscape = "${weston_ini_dir}/weston.ini.landscape"
-
RPROVIDES:${PN}-landscape = "weston-ini"
-RCONFLICTS:${PN}-landscape = "${PN}"
ALTERNATIVE:${PN}-landscape = "weston.ini"
ALTERNATIVE_TARGET_${PN}-landscape = "${weston_ini_dir}/weston.ini.landscape"
+ALTERNATIVE_PRIORITY_${PN}-landscape = "20"
-PACKAGE_BEFORE_PN += "${PN}-landscape-inverted"
+# landscape-inverted
+PACKAGE_BEFORE_PN += "${PN}-landscape-inverted"
FILES:${PN}-landscape-inverted = "${weston_ini_dir}/weston.ini.landscape-inverted"
-
RPROVIDES:${PN}-landscape-inverted = "weston-ini"
-RCONFLICTS:${PN}-landscape-inverted = "${PN}"
ALTERNATIVE:${PN}-landscape-inverted = "weston.ini"
ALTERNATIVE_TARGET_${PN}-landscape-inverted = "${weston_ini_dir}/weston.ini.landscape-inverted"
+ALTERNATIVE_PRIORITY_${PN}-landscape-inverted = "25"
-# no activation by default
+# no-activate, no activation by default
PACKAGE_BEFORE_PN += "${PN}-no-activate"
-
FILES:${PN}-no-activate = "${weston_ini_dir}/weston.ini.default-no-activate"
-
RPROVIDES:${PN}-no-activate = "weston-ini"
-RCONFLICTS:${PN}-no-activate = "${PN}"
ALTERNATIVE:${PN}-no-activate = "weston.ini"
ALTERNATIVE_TARGET_${PN}-no-activate = "${weston_ini_dir}/weston.ini.default-no-activate"
+ALTERNATIVE_PRIORITY_${PN}-no-activate = "21"
-# landscape, no activation by default
+# landscape-no-activate, no activation by default
PACKAGE_BEFORE_PN += "${PN}-landscape-no-activate"
-
FILES:${PN}-landscape-no-activate = "${weston_ini_dir}/weston.ini.landscape-no-activate"
-
RPROVIDES:${PN}-landscape-no-activate = "weston-ini"
-RCONFLICTS:${PN}-landscape-no-activate = "${PN}"
ALTERNATIVE:${PN}-landscape-no-activate = "weston.ini"
ALTERNATIVE_TARGET_${PN}-landscape-no-activate = "${weston_ini_dir}/weston.ini.landscape-no-activate"
+ALTERNATIVE_PRIORITY_${PN}-landscape-no-activate = "26"
# This is a settings-only package, we do not need a development package
# (and its fixed dependency to ${PN} being installed)
diff --git a/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bbappend b/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bbappend
index 746bde339..b6095f2fa 100644
--- a/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bbappend
+++ b/meta-agl-core/recipes-graphics/wayland/weston-ini-conf.bbappend
@@ -2,8 +2,6 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
PACKAGE_ARCH = "${MACHINE_ARCH}"
-WESTON_DISPLAYS:append = "${@bb.utils.contains("DISTRO_FEATURES", "weston-remoting", " remote-output", "", d)}"
-
# For virtual machines and intel-corei7-64 we want to support both the HDMI-A-1
# and Virtual-1 outputs. This allows us to run virtual images on real hardware
# and vice versa.
diff --git a/meta-agl-core/recipes-graphics/wayland/weston-ini-conf/remote-output.cfg.in b/meta-agl-core/recipes-graphics/wayland/weston-ini-conf/remote-output.cfg.in
deleted file mode 100644
index 940cbdd0c..000000000
--- a/meta-agl-core/recipes-graphics/wayland/weston-ini-conf/remote-output.cfg.in
+++ /dev/null
@@ -1,5 +0,0 @@
-[remote-output]
-name=remote-1
-mode=640x720@30
-host=192.168.10.3
-port=5005
diff --git a/templates/feature/agl-ci/99_local.conf.inc b/templates/feature/agl-ci/99_local.conf.inc
index e17bc83a9..c12cd1717 100644
--- a/templates/feature/agl-ci/99_local.conf.inc
+++ b/templates/feature/agl-ci/99_local.conf.inc
@@ -30,3 +30,6 @@ INHERIT += "buildstats-summary"
#PRSERV_HOST = "${AGL_HOST_PRSERV}:8181"
IMAGE_INSTALL:append = " curl"
+
+# remote .rootfs suffix
+IMAGE_NAME_SUFFIX = ""
diff --git a/templates/feature/agl-selinux/50_bblayers.conf.inc b/templates/feature/agl-selinux/50_bblayers.conf.inc
index b17e292e9..392b70099 100644
--- a/templates/feature/agl-selinux/50_bblayers.conf.inc
+++ b/templates/feature/agl-selinux/50_bblayers.conf.inc
@@ -1,5 +1,8 @@
AGL_META_PYTHON = "${METADIR}/external/meta-openembedded/meta-python"
+# Needed to satisfy uutils-coreutils DEPENDS when using SELinux
+AGL_META_CLANG = "${METADIR}/external/meta-clang"
+
BBLAYERS =+ " \
${METADIR}/external/meta-selinux \
"
diff --git a/templates/feature/agl-weston-remoting/included.dep b/templates/feature/agl-weston-remoting/included.dep
deleted file mode 100644
index 82639da07..000000000
--- a/templates/feature/agl-weston-remoting/included.dep
+++ /dev/null
@@ -1 +0,0 @@
-agl-demo
diff --git a/templates/machine/raspberrypi5/50_bblayers.conf.inc b/templates/machine/raspberrypi5/50_bblayers.conf.inc
index 2e677dd8a..d225d627b 100644
--- a/templates/machine/raspberrypi5/50_bblayers.conf.inc
+++ b/templates/machine/raspberrypi5/50_bblayers.conf.inc
@@ -1 +1,4 @@
-BBLAYERS =+ "${METADIR}/bsp/meta-raspberrypi"
+BBLAYERS =+ " \
+ ${METADIR}/bsp/meta-raspberrypi \
+ ${METADIR}/bsp/meta-lts-mixins_u-boot \
+"
diff --git a/templates/machine/unmatched/50_bblayers.conf.inc b/templates/machine/unmatched/50_bblayers.conf.inc
index 03565bafd..bf78285b5 100644
--- a/templates/machine/unmatched/50_bblayers.conf.inc
+++ b/templates/machine/unmatched/50_bblayers.conf.inc
@@ -1,6 +1,2 @@
# This is the original place, but we need to tweak layer.conf
BBLAYERS =+ "${METADIR}/bsp/meta-sifive"
-
-# For now, tweak the layer's compatibility to allow using with kirkstone,
-# since we know it works without major issues.
-LAYERSERIES_COMPAT_meta-sifive:append = " kirkstone"