diff options
42 files changed, 221 insertions, 321 deletions
diff --git a/meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc b/meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc deleted file mode 100644 index 3988fcd6f..000000000 --- a/meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc +++ /dev/null @@ -1,8 +0,0 @@ -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_rk3588.inc b/meta-agl-bsp/conf/include/agl_rk3588.inc index fdd8c9a28..9d7f85090 100644 --- a/meta-agl-bsp/conf/include/agl_rk3588.inc +++ b/meta-agl-bsp/conf/include/agl_rk3588.inc @@ -3,7 +3,7 @@ LICENSE_FLAGS_ACCEPTED:append = " commercial" MACHINE_FEATURES:append:rk3588 = " multimedia" BBMASK += " \ - meta-rockchip/recipes-multimedia/gstreamer/ \ + meta-rockchip/recipes-multimedia/gstreamer/gstreamer1.0-plugins* \ meta-rockchip/recipes-graphics/wayland/weston_%.bbappend \ " diff --git a/meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston_12.0.3.imx.bbappend b/meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston_12.0.3.imx.bbappend deleted file mode 100644 index ca162e28f..000000000 --- a/meta-agl-bsp/meta-freescale-layer/recipes-graphics/wayland/weston_12.0.3.imx.bbappend +++ /dev/null @@ -1,2 +0,0 @@ -# Use provided hook to disable removal of wayland from PACKAGECONFIG -PACKAGECONFIG_IMX_REMOVALS = "x11" diff --git a/meta-agl-bsp/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi/0001-Revert-cgroup-Disable-cgroup-memory-by-default.patch b/meta-agl-bsp/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi/0001-Revert-cgroup-Disable-cgroup-memory-by-default.patch new file mode 100644 index 000000000..3a0be628e --- /dev/null +++ b/meta-agl-bsp/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi/0001-Revert-cgroup-Disable-cgroup-memory-by-default.patch @@ -0,0 +1,86 @@ +From eec171e22de23a8bb7321da2bd405a95d4521f92 Mon Sep 17 00:00:00 2001 +From: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp> +Date: Tue, 4 Feb 2025 00:55:36 +0900 +Subject: [PATCH] Revert "cgroup: Disable cgroup "memory" by default" + +This reverts commit 94a23e978235cd35f38075072b34152b2b667e6e. + +Upstream-Status: Pending + +--- + kernel/cgroup/cgroup.c | 38 -------------------------------------- + 1 file changed, 38 deletions(-) + +diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c +index 5165f5ccd1b4..518725b57200 100644 +--- a/kernel/cgroup/cgroup.c ++++ b/kernel/cgroup/cgroup.c +@@ -6051,9 +6051,6 @@ int __init cgroup_init_early(void) + return 0; + } + +-static u16 cgroup_enable_mask __initdata; +-static int __init cgroup_disable(char *str); +- + /** + * cgroup_init - cgroup initialization + * +@@ -6087,12 +6084,6 @@ int __init cgroup_init(void) + + cgroup_unlock(); + +- /* +- * Apply an implicit disable, knowing that an explicit enable will +- * prevent if from doing anything. +- */ +- cgroup_disable("memory"); +- + for_each_subsys(ss, ssid) { + if (ss->early_init) { + struct cgroup_subsys_state *css = +@@ -6733,10 +6724,6 @@ static int __init cgroup_disable(char *str) + strcmp(token, ss->legacy_name)) + continue; + +- /* An explicit cgroup_enable overrides a disable */ +- if (cgroup_enable_mask & (1 << i)) +- continue; +- + static_branch_disable(cgroup_subsys_enabled_key[i]); + pr_info("Disabling %s control group subsystem\n", + ss->name); +@@ -6755,31 +6742,6 @@ static int __init cgroup_disable(char *str) + } + __setup("cgroup_disable=", cgroup_disable); + +-static int __init cgroup_enable(char *str) +-{ +- struct cgroup_subsys *ss; +- char *token; +- int i; +- +- while ((token = strsep(&str, ",")) != NULL) { +- if (!*token) +- continue; +- +- for_each_subsys(ss, i) { +- if (strcmp(token, ss->name) && +- strcmp(token, ss->legacy_name)) +- continue; +- +- cgroup_enable_mask |= 1 << i; +- static_branch_enable(cgroup_subsys_enabled_key[i]); +- pr_info("Enabling %s control group subsystem\n", +- ss->name); +- } +- } +- return 1; +-} +-__setup("cgroup_enable=", cgroup_enable); +- + void __init __weak enable_debug_cgroup(void) { } + + static int __init enable_cgroup_debug(char *str) +-- +2.43.0 + diff --git a/meta-agl-bsp/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_%.bbappend b/meta-agl-bsp/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_%.bbappend index ec3fa910b..65f760f46 100644 --- a/meta-agl-bsp/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_%.bbappend +++ b/meta-agl-bsp/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_%.bbappend @@ -5,6 +5,7 @@ require recipes-kernel/linux/linux-yocto-agl.inc SRC_URI:append = " \ ${@oe.utils.conditional('USE_FAYTECH_MONITOR', '1', 'file://0002-faytech-fix-rpi.patch', '', d)} \ file://0001-mconf-menuconfig.patch \ + file://0001-Revert-cgroup-Disable-cgroup-memory-by-default.patch \ " # Enable support for Pi foundation touchscreen diff --git a/meta-agl-bsp/riscv-layer/recipes-bsp/u-boot/u-boot-starfive/uEnv-visionfive2.txt b/meta-agl-bsp/riscv-layer/recipes-bsp/u-boot/u-boot-starfive/uEnv-visionfive2.txt new file mode 100644 index 000000000..dac31bf6b --- /dev/null +++ b/meta-agl-bsp/riscv-layer/recipes-bsp/u-boot/u-boot-starfive/uEnv-visionfive2.txt @@ -0,0 +1,22 @@ +# This is the sample jh7110_uEnv.txt file for starfive visionfive U-boot +# The current convention (SUBJECT TO CHANGE) is that this file +# will be loaded from the third partition on the +# MMC card. +#devnum=1 +partnum=3 + +# The FIT file to boot from +fitfile=fitImage + +# for debugging boot +bootargs_ext=if test ${devnum} = 0; then setenv bootargs "console=ttyS0,115200 rootwait root=/dev/mmcblk0p4"; else setenv bootargs "console=ttyS0,115200 rootwait root=/dev/mmcblk1p4"; fi; + +# for addr info +fileaddr=0xa0000000 +fdtaddr=0x46000000 +# boot Linux flat or compressed 'Image' stored at 'kernel_addr_r' +kernel_addr_r=0x40200000 + +bootwait=setenv _delay ${bootdelay}; echo ${_delay}; while test ${_delay} > 0; do sleep 1; setexpr _delay ${_delay} - 1; echo ${_delay}; done + +boot2=run bootargs_ext; mmc dev ${devnum}; fatload mmc ${devnum}:${partnum} ${fileaddr} ${fitfile}; bootm ${fileaddr}
\ No newline at end of file diff --git a/meta-agl-bsp/riscv-layer/recipes-bsp/u-boot/u-boot-starfive_%.bbappend b/meta-agl-bsp/riscv-layer/recipes-bsp/u-boot/u-boot-starfive_%.bbappend new file mode 100644 index 000000000..8dead1283 --- /dev/null +++ b/meta-agl-bsp/riscv-layer/recipes-bsp/u-boot/u-boot-starfive_%.bbappend @@ -0,0 +1 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/u-boot-starfive:" diff --git a/meta-agl-bsp/riscv-layer/recipes-graphics/wayland/agl-compositor-init.bbappend b/meta-agl-bsp/riscv-layer/recipes-graphics/wayland/agl-compositor-init.bbappend new file mode 100644 index 000000000..4cdb74a5e --- /dev/null +++ b/meta-agl-bsp/riscv-layer/recipes-graphics/wayland/agl-compositor-init.bbappend @@ -0,0 +1,7 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" + +SRC_URI:append:jh7110 = " file://agl-compositor-visionfive2.conf " + +do_install:append:jh7110() { + install -m644 ${WORKDIR}/agl-compositor-visionfive2.conf ${D}/${systemd_system_unitdir}/agl-compositor.service.d/agl-compositor-visionfive2.conf +} diff --git a/meta-agl-bsp/riscv-layer/recipes-graphics/wayland/agl-compositor-init/agl-compositor-visionfive2.conf b/meta-agl-bsp/riscv-layer/recipes-graphics/wayland/agl-compositor-init/agl-compositor-visionfive2.conf new file mode 100644 index 000000000..e62c13a89 --- /dev/null +++ b/meta-agl-bsp/riscv-layer/recipes-graphics/wayland/agl-compositor-init/agl-compositor-visionfive2.conf @@ -0,0 +1,2 @@ +[Service] +Environment=WESTON_FORCE_RENDERER=1 diff --git a/meta-agl-bsp/riscv-layer/recipes-kernel/linux/linux-starfive-dev.bbappend b/meta-agl-bsp/riscv-layer/recipes-kernel/linux/linux-starfive-dev.bbappend new file mode 100644 index 000000000..d10ca3517 --- /dev/null +++ b/meta-agl-bsp/riscv-layer/recipes-kernel/linux/linux-starfive-dev.bbappend @@ -0,0 +1 @@ +require recipes-kernel/linux/linux-yocto-agl.inc diff --git a/meta-agl-core/conf/distro/poky-agl.conf b/meta-agl-core/conf/distro/poky-agl.conf index 94e3d6d5c..2a04b28b6 100644 --- a/meta-agl-core/conf/distro/poky-agl.conf +++ b/meta-agl-core/conf/distro/poky-agl.conf @@ -9,9 +9,9 @@ DISTRO_NAME = "Automotive Grade Linux" # Release flags -DISTRO_CODENAME = "salmon" +DISTRO_CODENAME = "trout" AGL_BRANCH = "master" -AGLVERSION = "18.91.0" +AGLVERSION = "19.90.0" # switch devel/release #AGLRELEASETYPE ?= "agldevelopment" @@ -29,8 +29,8 @@ DISTRO_BRANCH_VERSION_TAG = "${DISTRO_CODENAME}/${@'${DISTRO_VERSION}'.replace(' # reproducible builds: # Set the desired timestamps # E.g. update for (major) releases -export SOURCE_DATE_EPOCH = "1732531413" -REPRODUCIBLE_TIMESTAMP_ROOTFS = "1732531413" +export SOURCE_DATE_EPOCH = "1734348334" +REPRODUCIBLE_TIMESTAMP_ROOTFS = "1734348334" # SDK diff --git a/meta-agl-core/recipes-graphics/wayland/agl-compositor-init/agl-compositor-stream-pipewire.service b/meta-agl-core/recipes-graphics/wayland/agl-compositor-init/agl-compositor-stream-pipewire.service index 949162c22..a01edda22 100644 --- a/meta-agl-core/recipes-graphics/wayland/agl-compositor-init/agl-compositor-stream-pipewire.service +++ b/meta-agl-core/recipes-graphics/wayland/agl-compositor-init/agl-compositor-stream-pipewire.service @@ -10,6 +10,11 @@ ConditionPathExists=/usr/bin/agl-stream-pipewire-output [Service] Type=simple EnvironmentFile=-/etc/default/agl-stream-pipewire-output +# need to wait until receiver has its receiver client started; this might be a +# bit controversial but this actually decreases the preceived time when we +# start displaying frames on the receiver side. A proper solution would be +# somehow have a way to convey when it is the best time start the stream +ExecStartPre=sleep 10 ExecStart=/usr/bin/agl-stream-pipewire-output @REMOTE_OUTPUT_IP@ @REMOTE_OUTPUT_PORT@ User=agl-driver diff --git a/meta-agl-core/recipes-graphics/wayland/agl-compositor_git.bb b/meta-agl-core/recipes-graphics/wayland/agl-compositor_git.bb index e0d6e1c93..7a33b125d 100644 --- a/meta-agl-core/recipes-graphics/wayland/agl-compositor_git.bb +++ b/meta-agl-core/recipes-graphics/wayland/agl-compositor_git.bb @@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=fac6abe0003c4d142ff8fa1f18316df0" DEPENDS = "wayland wayland-protocols wayland-native weston" SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/agl-compositor.git;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "0824eb521f8e26e4c0f143ec7850d45c4b2f675b" +SRCREV = "cea35f44d1e60ed2d67c6556eba6b7777d5f66ce" AGL_BRANCH:aglnext = "next" SRCREV:aglnext = "${AUTOREV}" @@ -24,6 +24,7 @@ PACKAGECONFIG ?= "" PACKAGECONFIG[policy-rba] = "-Dpolicy-default=rba,,librba,librba rba-config" PACKAGECONFIG[policy-deny-all] = "-Dpolicy-default=deny-all,," PACKAGECONFIG[grpc-proxy] = "-Dgrpc-proxy=true,-Dgrpc-proxy=false,grpc grpc-native,grpc agl-shell-grpc-server" +PACKAGECONFIG[drm-lease] = "-Ddrm-lease=true,-Ddrm-lease=false,drm-lease-manager" inherit meson pkgconfig python3native diff --git a/meta-agl-core/recipes-graphics/wayland/weston/0001-backend-Add-weston_get_backend_type.patch b/meta-agl-core/recipes-graphics/wayland/weston/0001-backend-Add-weston_get_backend_type.patch new file mode 100644 index 000000000..01d5f91d6 --- /dev/null +++ b/meta-agl-core/recipes-graphics/wayland/weston/0001-backend-Add-weston_get_backend_type.patch @@ -0,0 +1,79 @@ +From fcccf1b63dc3cbf6063238c39a31197f0d32364c Mon Sep 17 00:00:00 2001 +From: Marius Vlad <marius.vlad@collabora.com> +Date: Fri, 13 Dec 2024 17:14:44 +0200 +Subject: [PATCH] backend: Add weston_get_backend_type + +Signed-off-by: Marius Vlad <marius.vlad@collabora.com> +--- + include/libweston/libweston.h | 3 +++ + libweston/backend.h | 5 +++++ + libweston/compositor.c | 19 +++++++++++++++++++ + 3 files changed, 27 insertions(+) + +diff --git a/include/libweston/libweston.h b/include/libweston/libweston.h +index 077c16b..da6200d 100644 +--- a/include/libweston/libweston.h ++++ b/include/libweston/libweston.h +@@ -2685,6 +2685,9 @@ weston_compositor_add_screenshot_authority(struct weston_compositor *compositor, + int + weston_compositor_backends_loaded(struct weston_compositor *compositor); + ++enum weston_compositor_backend ++weston_get_backend_type(struct weston_backend *backend); ++ + #ifdef __cplusplus + } + #endif +diff --git a/libweston/backend.h b/libweston/backend.h +index 495d0a5..9b12544 100644 +--- a/libweston/backend.h ++++ b/libweston/backend.h +@@ -120,6 +120,11 @@ struct weston_backend { + */ + bool (*can_scanout_dmabuf)(struct weston_backend *backend, + struct linux_dmabuf_buffer *buffer); ++ ++ /** Identifies a particular backend_type from one ++ * defined in weston_compositor_backend. ++ */ ++ enum weston_compositor_backend backend_type; + }; + + /* weston_head */ +diff --git a/libweston/compositor.c b/libweston/compositor.c +index 41459eb..ef1932f 100644 +--- a/libweston/compositor.c ++++ b/libweston/compositor.c +@@ -9691,6 +9691,7 @@ weston_compositor_load_backend(struct weston_compositor *compositor, + return NULL; + + b = wl_container_of(compositor->backend_list.next, b, link); ++ b->backend_type = backend; + + /* Return the last loaded backend. */ + return b; +@@ -9954,3 +9955,21 @@ weston_output_finish_frame_from_timer(struct weston_output *output) + + weston_output_finish_frame(output, &ts, 0); + } ++ ++/** Retrieve the backend type of as described in enum ++ * weston_compositor_backend. ++ * ++ * Note that the backend must be loaded, with weston_compositor_load_backend ++ * ++ * \param backend weston_backend in question ++ * \returns a type of enum weston_compositor_backend ++ * ++ * \sa weston_compositor_load_backend ++ * ++ */ ++WL_EXPORT enum weston_compositor_backend ++weston_get_backend_type(struct weston_backend *backend) ++{ ++ assert(backend); ++ return backend->backend_type; ++} +-- +2.43.0 + diff --git a/meta-agl-core/recipes-graphics/wayland/weston_13.0_aglcore.inc b/meta-agl-core/recipes-graphics/wayland/weston_13.0_aglcore.inc index e2e18c18f..f4f5e4c17 100644 --- a/meta-agl-core/recipes-graphics/wayland/weston_13.0_aglcore.inc +++ b/meta-agl-core/recipes-graphics/wayland/weston_13.0_aglcore.inc @@ -4,9 +4,9 @@ SRC_URI:append = " \ file://0001-clients-Handle-missing-pointer_surface-is-there-s-no.patch \ file://0001-backend-drm-don-t-leak-gem_handle_refcnt-in-drm_dest.patch \ file://0002-backend-drm-always-create-gem_handle_refcnt-hash-tab.patch \ + file://0001-backend-Add-weston_get_backend_type.patch \ " -PACKAGECONFIG:append = " pipewire " WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}" # Split weston-terminal out of the main package to allow installing it diff --git a/meta-agl-flutter/conf/include/agl-flutter.inc b/meta-agl-flutter/conf/include/agl-flutter.inc index 6d60bc4a2..50bb7f73b 100644 --- a/meta-agl-flutter/conf/include/agl-flutter.inc +++ b/meta-agl-flutter/conf/include/agl-flutter.inc @@ -1,3 +1,3 @@ AGL_FEATURES += "agl-flutter" -FLUTTER_SDK_TAG = "3.24.2" +FLUTTER_SDK_TAG = "3.27.1" diff --git a/meta-agl-flutter/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-material-3-demo/flutter-samples-material-3-demo.service b/meta-agl-flutter/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-material-3-demo/flutter-samples-material-3-demo.service index f3f4a94b1..f0b475baf 100644 --- a/meta-agl-flutter/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-material-3-demo/flutter-samples-material-3-demo.service +++ b/meta-agl-flutter/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-material-3-demo/flutter-samples-material-3-demo.service @@ -7,7 +7,7 @@ User=agl-driver EnvironmentFile=/etc/default/flutter EnvironmentFile=-/etc/default/flutter-samples-material-3-demo Environment=XDG_RUNTIME_DIR=/run/user/1001/ -ExecStart=/usr/bin/flutter-auto -b /usr/share/flutter/flutter-samples-material-3-demo/${FLUTTER_VERSION}/${FLUTTER_RUNTIME} -xdg-shell-app-id flutter-samples-material-3-demo +ExecStart=/usr/bin/flutter-auto -b /usr/share/flutter/flutter-samples-material-3-demo/${FLUTTER_VERSION}/${FLUTTER_RUNTIME} --xdg-shell-app-id flutter-samples-material-3-demo [Install] WantedBy=graphical.target diff --git a/meta-agl-flutter/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-material-3-demo_aglflutter.inc b/meta-agl-flutter/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-material-3-demo_aglflutter.inc index 971756ad7..ebdf65d42 100644 --- a/meta-agl-flutter/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-material-3-demo_aglflutter.inc +++ b/meta-agl-flutter/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-material-3-demo_aglflutter.inc @@ -1,6 +1,8 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/flutter-samples-material-3-demo:" -SRC_URI += "file://flutter-samples-material-3-demo.service" +SRC_URI += "file://flutter-samples-material-3-demo.service \ + file://flutter-samples-material-3-demo.toml \ +" APP_CONFIG = "flutter-samples-material-3-demo.toml" @@ -8,13 +10,6 @@ inherit systemd do_install:append() { install -D -m 0644 ${WORKDIR}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service - - # determine build type based on what flutter-engine installed. - for runtime_mode in ${FLUTTER_RUNTIME_MODES} - do - install -D -m 0644 ${WORKDIR}/${APP_CONFIG} \ - ${D}${datadir}/flutter/${PUBSPEC_APPNAME}/${FLUTTER_SDK_VERSION}/${runtime_mode}/config.toml - done } RDEPENDS:${PN} += "agl-flutter-env" diff --git a/meta-agl-flutter/recipes-graphics/toyota/files/0001-backend-wayland_egl-Add-a-fallback-eglConfig.patch b/meta-agl-flutter/recipes-graphics/toyota/files/0001-backend-wayland_egl-Add-a-fallback-eglConfig.patch deleted file mode 100644 index f2195dddc..000000000 --- a/meta-agl-flutter/recipes-graphics/toyota/files/0001-backend-wayland_egl-Add-a-fallback-eglConfig.patch +++ /dev/null @@ -1,88 +0,0 @@ -From 372b9c4edd42b67827b75863b978091ba5cff5cd Mon Sep 17 00:00:00 2001 -From: Marius Vlad <marius.vlad@collabora.com> -Date: Thu, 17 Oct 2024 17:25:41 +0300 -Subject: [PATCH 1/2] backend/wayland_egl: Add a fallback eglConfig - -This seems to aid flutter-auto at displaying an image on agl-rdp -with software rendering, and on agl-kvm with virgl. Makes uses of a fallback -eGLConfig (< 24 bit) and tries to use that one rather than the default one (24-bit). - -Bug-AGL: SPEC-5260 -Signed-off-by: Marius Vlad <marius.vlad@collabora.com> ---- - cmake/config_common.h.in | 17 ++++++++++++++++- - shell/backend/wayland_egl/egl.cc | 23 ++++++++++++++++++++--- - 2 files changed, 36 insertions(+), 4 deletions(-) - -diff --git a/cmake/config_common.h.in b/cmake/config_common.h.in -index 07ce9b7..2c54c67 100644 ---- a/cmake/config_common.h.in -+++ b/cmake/config_common.h.in -@@ -155,6 +155,21 @@ static constexpr std::array<EGLint, 27> kEglConfigAttribs = {{ - // clang-format on - }}; - -+ -+static constexpr std::array<EGLint, 27> kEglConfigAttribsFallBack = {{ -+ // clang-format off -+ EGL_SURFACE_TYPE, EGL_WINDOW_BIT, -+ EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT, -+ -+ EGL_RED_SIZE, 1, -+ EGL_GREEN_SIZE, 1, -+ EGL_BLUE_SIZE, 1, -+ EGL_ALPHA_SIZE, 2, -+ EGL_NONE // termination sentinel -+ // clang-format on -+}}; -+ -+ - // All vkCreate* functions take an optional allocator. For now, we select the - // default allocator by passing in a null pointer, and we highlight the argument - // by using the VKALLOC constant. -@@ -181,4 +196,4 @@ constexpr struct VkAllocationCallbacks* VKALLOC = nullptr; - #cmakedefine01 ENV32BIT - #cmakedefine01 ENV64BIT - --#endif //CONFIG_COMMON_H_ -\ No newline at end of file -+#endif //CONFIG_COMMON_H_ -diff --git a/shell/backend/wayland_egl/egl.cc b/shell/backend/wayland_egl/egl.cc -index 99555d6..70164ba 100644 ---- a/shell/backend/wayland_egl/egl.cc -+++ b/shell/backend/wayland_egl/egl.cc -@@ -62,11 +62,28 @@ Egl::Egl(void* native_display, int buffer_size, bool debug) - break; - } - } -- free(configs); - if (m_config == nullptr) { -- spdlog::critical("did not find config with buffer size {}", m_buffer_size); -- assert(false); -+ // try with the fallback one -+ spdlog::critical("Could not use default EGLConfig trying with fallback."); -+ ret = eglChooseConfig(m_dpy, kEglConfigAttribsFallBack.data(), configs, -+ count, &n); -+ assert(ret && n >= 1); -+ -+ for (EGLint i = 0; i < n; i++) { -+ eglGetConfigAttrib(m_dpy, configs[i], EGL_BUFFER_SIZE, &size); -+ SPDLOG_DEBUG("Buffer size for config {} is {}", i, size); -+ if (m_buffer_size <= size) { -+ memcpy(&m_config, &configs[i], sizeof(EGLConfig)); -+ break; -+ } -+ } -+ if (m_config == nullptr) { -+ spdlog::critical("did not find config with buffer size {}", -+ m_buffer_size); -+ assert(false); -+ } - } -+ free(configs); - - m_context = eglCreateContext(m_dpy, m_config, EGL_NO_CONTEXT, - kEglContextAttribs.data()); --- -2.43.0 - diff --git a/meta-agl-flutter/recipes-graphics/toyota/files/0001-flutter_desktop-Remove-asio-post-call.patch b/meta-agl-flutter/recipes-graphics/toyota/files/0001-flutter_desktop-Remove-asio-post-call.patch deleted file mode 100644 index f9cfea44d..000000000 --- a/meta-agl-flutter/recipes-graphics/toyota/files/0001-flutter_desktop-Remove-asio-post-call.patch +++ /dev/null @@ -1,94 +0,0 @@ -From a69dfff93b41b30ae8e237817548baf50d0c1287 Mon Sep 17 00:00:00 2001 -From: Marius Vlad <marius.vlad@collabora.com> -Date: Thu, 24 Oct 2024 14:45:35 +0300 -Subject: [PATCH] flutter_desktop: Remove asio::post call - -Do not dispatch/post the key event keycode using asio::post as that -seems to cause crashes as the messenger pointer seems to be go out of -scope or seems to be invalid. - -Bug-AGL: SPEC-5272 -Signed-off-by: Marius Vlad <marius.vlad@collabora.com> ---- - shell/platform/homescreen/flutter_desktop.cc | 65 ++++++++++---------- - 1 file changed, 31 insertions(+), 34 deletions(-) - -diff --git a/shell/platform/homescreen/flutter_desktop.cc b/shell/platform/homescreen/flutter_desktop.cc -index bb5be4b..5d26dd9 100644 ---- a/shell/platform/homescreen/flutter_desktop.cc -+++ b/shell/platform/homescreen/flutter_desktop.cc -@@ -161,40 +161,37 @@ std::future<bool> PostMessengerSendWithReply( - void* user_data) { - const auto promise(std::make_shared<std::promise<bool>>()); - auto promise_future(promise->get_future()); -- asio::post(*messenger->GetEngine()->platform_task_runner->GetStrandContext(), -- [&, promise, channel, message, message_size, reply, user_data]() { -- FlutterPlatformMessageResponseHandle* response_handle = nullptr; -- if (reply != nullptr && user_data != nullptr) { -- const FlutterEngineResult result = -- LibFlutterEngine->PlatformMessageCreateResponseHandle( -- messenger->GetEngine()->flutter_engine, reply, -- user_data, &response_handle); -- if (result != kSuccess) { -- spdlog::error("Failed to create response handle"); -- promise->set_value(false); -- return; -- } -- } -- -- auto platform_message = std::make_unique<FlutterPlatformMessage>(); -- platform_message->struct_size = sizeof(FlutterPlatformMessage); -- platform_message->channel = channel; -- platform_message->message = message; -- platform_message->message_size = message_size; -- platform_message->response_handle = response_handle; -- -- const FlutterEngineResult message_result = -- LibFlutterEngine->SendPlatformMessage( -- messenger->GetEngine()->flutter_engine, -- platform_message.release()); -- -- if (response_handle != nullptr) { -- LibFlutterEngine->PlatformMessageReleaseResponseHandle( -- messenger->GetEngine()->flutter_engine, response_handle); -- } -- -- promise->set_value(message_result == kSuccess); -- }); -+ -+ FlutterPlatformMessageResponseHandle* response_handle = nullptr; -+ if (reply != nullptr && user_data != nullptr) { -+ const FlutterEngineResult result = -+ LibFlutterEngine->PlatformMessageCreateResponseHandle( -+ messenger->GetEngine()->flutter_engine, reply, user_data, -+ &response_handle); -+ if (result != kSuccess) { -+ spdlog::error("Failed to create response handle"); -+ promise->set_value(false); -+ return promise_future; -+ } -+ } -+ -+ auto platform_message = std::make_unique<FlutterPlatformMessage>(); -+ platform_message->struct_size = sizeof(FlutterPlatformMessage); -+ platform_message->channel = channel; -+ platform_message->message = message; -+ platform_message->message_size = message_size; -+ platform_message->response_handle = response_handle; -+ -+ const FlutterEngineResult message_result = -+ LibFlutterEngine->SendPlatformMessage( -+ messenger->GetEngine()->flutter_engine, platform_message.release()); -+ -+ if (response_handle != nullptr) { -+ LibFlutterEngine->PlatformMessageReleaseResponseHandle( -+ messenger->GetEngine()->flutter_engine, response_handle); -+ } -+ -+ promise->set_value(message_result == kSuccess); - return promise_future; - } - --- -2.43.0 - diff --git a/meta-agl-flutter/recipes-graphics/toyota/flutter-auto_aglflutter.inc b/meta-agl-flutter/recipes-graphics/toyota/flutter-auto_aglflutter.inc index 29c023fca..0b4610c02 100644 --- a/meta-agl-flutter/recipes-graphics/toyota/flutter-auto_aglflutter.inc +++ b/meta-agl-flutter/recipes-graphics/toyota/flutter-auto_aglflutter.inc @@ -1,12 +1,4 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/files:" -EGLCONFIG_FALLBACK = "${@bb.utils.contains_any('AGL_FEATURES', 'agl-rdp agl-kvm-guest', '', 'file://0001-backend-wayland_egl-Add-a-fallback-eglConfig.patch', d)}" SRC_URI:append:use-nxp-bsp = " file://0001-Disable-on_frame_base_surface-wl_surface_commit.patch" -SRC_URI:append = " ${EGLCONFIG_FALLBACK}" -# necessary to avoid crashing flutter-auto when a key keyboard event is emitted -SRC_URI:append = " file://0001-flutter_desktop-Remove-asio-post-call.patch" - -# Disable WIP webview plugin on 32-bit ARM platforms for now, as build -# failures have been seen on qemuarm and beaglebone. -PACKAGECONFIG:remove:arm = "webview_flutter_view" diff --git a/meta-agl-flutter/tools/configs/_globals.json b/meta-agl-flutter/tools/configs/_globals.json index 1830c8d40..0418e629f 100644 --- a/meta-agl-flutter/tools/configs/_globals.json +++ b/meta-agl-flutter/tools/configs/_globals.json @@ -1,5 +1,5 @@ { - "flutter-version": "3.24.1", + "flutter-version": "3.27.1", "github_token": "", "cookie_file": "" } diff --git a/meta-agl-flutter/tools/configs/_repos.json b/meta-agl-flutter/tools/configs/_repos.json index 5fb8aa047..8fcac4b30 100644 --- a/meta-agl-flutter/tools/configs/_repos.json +++ b/meta-agl-flutter/tools/configs/_repos.json @@ -1,12 +1,12 @@ [ { "uri": "https://github.com/toyota-connected/ivi-homescreen.git", - "rev": "e87c1797f838e20f0a4c1af309541d63986058ca", + "rev": "2341312e5118a9b96a3f0e7c13a2813b4a7e779c", "branch": "v2.0" }, { "uri": "https://github.com/toyota-connected/ivi-homescreen-plugins.git", - "rev": "41d00635f89c064aa32f2cef3147c59b8f61694f", + "rev": "f2a7336c34ed4720742a42245b84de56729d56e3", "branch": "v2.0" }, { diff --git a/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-flutter@.service b/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-flutter@.service index a9a2527e0..b0018f791 100644 --- a/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-flutter@.service +++ b/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-flutter@.service @@ -4,9 +4,7 @@ Description=%I [Service] Type=simple User=agl-driver -Environment=FLUTTER_VERSION=3.3.7 -Environment=FLUTTER_RUNTIME=release EnvironmentFile=-/etc/default/flutter EnvironmentFile=-/etc/default/%I Environment=XDG_RUNTIME_DIR=/run/user/1001/ -ExecStart=/usr/bin/flutter-auto --b=/usr/share/flutter/%I/${FLUTTER_VERSION}/${FLUTTER_RUNTIME} --xdg-shell-app-id=%I +ExecStart=/usr/bin/flutter-auto -b /usr/share/flutter/%I/${FLUTTER_VERSION}/${FLUTTER_RUNTIME} --xdg-shell-app-id %I diff --git a/templates/machine/bbe/20_local.conf.inc b/templates/machine/bbe/20_local.conf.inc deleted file mode 100644 index 7f378e5cb..000000000 --- a/templates/machine/bbe/20_local.conf.inc +++ /dev/null @@ -1,2 +0,0 @@ -MACHINE = "bbe" -require conf/include/agl_bbe.inc diff --git a/templates/machine/bbe/50_bblayers.conf.inc b/templates/machine/bbe/50_bblayers.conf.inc deleted file mode 100644 index c94c1db8f..000000000 --- a/templates/machine/bbe/50_bblayers.conf.inc +++ /dev/null @@ -1,7 +0,0 @@ -BBLAYERS =+ " \ - ${METADIR}/bsp/meta-arm/meta-arm \ - ${METADIR}/bsp/meta-arm/meta-arm-toolchain \ - ${METADIR}/bsp/meta-ti/meta-ti-bsp \ - ${METADIR}/bsp/meta-sancloud \ - ${METADIR}/bsp/meta-rtlwifi \ - " diff --git a/templates/machine/bbe/README_machine_bbe.md b/templates/machine/bbe/README_machine_bbe.md deleted file mode 100644 index 3161a0195..000000000 --- a/templates/machine/bbe/README_machine_bbe.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -description: SanCloud BeagleBone Enhanced (BBE) -authors: SanCloud Ltd <yocto@sancloud.co.uk> ---- - -### SanCloud BeagleBone Enhanced (BBE) - -* [SanCloud website](https://www.sancloud.co.uk/) - -* [BeagleBone Enhanced Description](https://www.sancloud.co.uk/beaglebone-enhanced-bbe) - -* [Sancloud repositories on GitHub](https://github.com/SanCloudLtd) diff --git a/templates/machine/beaglebone/20_local.conf.inc b/templates/machine/beaglebone/20_local.conf.inc deleted file mode 100644 index 54edffefd..000000000 --- a/templates/machine/beaglebone/20_local.conf.inc +++ /dev/null @@ -1,3 +0,0 @@ -MACHINE = "beaglebone" -#see meta-agl/meta-agl-bsp/conf/include/agl_beaglebone.inc -require conf/include/agl_beaglebone.inc diff --git a/templates/machine/beaglebone/50_bblayers.conf.inc b/templates/machine/beaglebone/50_bblayers.conf.inc deleted file mode 100644 index 6ef08c43e..000000000 --- a/templates/machine/beaglebone/50_bblayers.conf.inc +++ /dev/null @@ -1,5 +0,0 @@ -BBLAYERS =+ "\ - ${METADIR}/bsp/meta-arm/meta-arm \ - ${METADIR}/bsp/meta-arm/meta-arm-toolchain \ - ${METADIR}/bsp/meta-ti/meta-ti-bsp \ - " diff --git a/templates/machine/beaglebone/README_machine_beaglebone.md b/templates/machine/beaglebone/README_machine_beaglebone.md deleted file mode 100644 index 06fbcee2f..000000000 --- a/templates/machine/beaglebone/README_machine_beaglebone.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -description: Machine beaglebone -authors: Jan-Simon Möller <jsmoeller@linuxfoundation.org> ---- - -### Machine beaglebone - -*Description is missing - please complete file meta-agl/templates/machine/beaglebone/README_machine_beaglebone.md* - diff --git a/templates/machine/cubox-i/20_local.conf.inc b/templates/machine/cubox-i/20_local.conf.inc deleted file mode 100644 index b0835bf6e..000000000 --- a/templates/machine/cubox-i/20_local.conf.inc +++ /dev/null @@ -1,4 +0,0 @@ -MACHINE = "cubox-i" -#see meta-agl/meta-agl-bsp/conf/include/agl_cubox-i.inc -require conf/include/agl_cubox-i.inc - diff --git a/templates/machine/cubox-i/40_bblayers.conf.inc b/templates/machine/cubox-i/40_bblayers.conf.inc deleted file mode 100644 index a4323be1a..000000000 --- a/templates/machine/cubox-i/40_bblayers.conf.inc +++ /dev/null @@ -1,6 +0,0 @@ -# This must be parsed after qt5, etc. layers so that they are correctly -# recognized by meta-freescale/dynamic-layers -BBLAYERS =+ "\ - ${METADIR}/bsp/meta-freescale \ - ${METADIR}/bsp/meta-freescale-3rdparty \ - " diff --git a/templates/machine/cubox-i/50_setup.sh b/templates/machine/cubox-i/50_setup.sh deleted file mode 100644 index eefd1eb7f..000000000 --- a/templates/machine/cubox-i/50_setup.sh +++ /dev/null @@ -1,2 +0,0 @@ -find_and_ack_eula $METADIR/bsp/meta-freescale EULA -export EULA_FLAG_NAME="ACCEPT_FSL_EULA" diff --git a/templates/machine/cubox-i/README_machine_cubox-i.md b/templates/machine/cubox-i/README_machine_cubox-i.md deleted file mode 100644 index 2d264d5d8..000000000 --- a/templates/machine/cubox-i/README_machine_cubox-i.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -description: Machine cubox-i -authors: Scott Murray <scott.murray@konsulko.com> ---- - -### Machine cubox-i - -*Description is missing - please complete file meta-agl/templates/machine/cubox-i/README_machine_cubox-i.md* - diff --git a/templates/machine/imx6qdlsabreauto/20_local.conf.inc b/templates/machine/imx6qdlsabreauto/20_local.conf.inc deleted file mode 100644 index 58e3c7d02..000000000 --- a/templates/machine/imx6qdlsabreauto/20_local.conf.inc +++ /dev/null @@ -1,4 +0,0 @@ -MACHINE = "imx6qdlsabreauto" -#see meta-agl/meta-agl-bsp/conf/include/agl_imx6qsabreauto.inc -require conf/include/agl_imx6qdlsabreauto.inc - diff --git a/templates/machine/imx6qdlsabreauto/40_bblayers.conf.inc b/templates/machine/imx6qdlsabreauto/40_bblayers.conf.inc deleted file mode 100644 index edcb6a3a2..000000000 --- a/templates/machine/imx6qdlsabreauto/40_bblayers.conf.inc +++ /dev/null @@ -1,5 +0,0 @@ -# This must be parsed after qt5, etc. layers so that they are correctly -# recognized by meta-freescale/dynamic-layers -BBLAYERS =+ "\ - ${METADIR}/bsp/meta-freescale \ - " diff --git a/templates/machine/imx6qdlsabreauto/50_setup.sh b/templates/machine/imx6qdlsabreauto/50_setup.sh deleted file mode 100644 index eefd1eb7f..000000000 --- a/templates/machine/imx6qdlsabreauto/50_setup.sh +++ /dev/null @@ -1,2 +0,0 @@ -find_and_ack_eula $METADIR/bsp/meta-freescale EULA -export EULA_FLAG_NAME="ACCEPT_FSL_EULA" diff --git a/templates/machine/imx6qdlsabreauto/README_machine_imx6qdlsabreauto.md b/templates/machine/imx6qdlsabreauto/README_machine_imx6qdlsabreauto.md deleted file mode 100644 index 6b354e9fa..000000000 --- a/templates/machine/imx6qdlsabreauto/README_machine_imx6qdlsabreauto.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -description: Machine imx6qdlsabreauto -authors: Bechir Mghirbi <bechir.mghirbi@grammer.com>, Jan-Simon Möller <jsmoeller@linuxfoundation.org> ---- - -### Machine imx6qdlsabreauto - -*Description is missing - please complete file meta-agl/templates/machine/imx6qdlsabreauto/README_machine_imx6qdlsabreauto.md* - diff --git a/templates/machine/imx8mq-evk-viv/20_local.conf.inc b/templates/machine/imx8mq-evk-viv/20_local.conf.inc deleted file mode 100644 index 7504c1120..000000000 --- a/templates/machine/imx8mq-evk-viv/20_local.conf.inc +++ /dev/null @@ -1,3 +0,0 @@ -MACHINE = "imx8mq-evk" -#see meta-agl/meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc -require conf/include/agl_imx8mq-evk-viv.inc diff --git a/templates/machine/imx8mq-evk-viv/40_bblayers.conf.inc b/templates/machine/imx8mq-evk-viv/40_bblayers.conf.inc deleted file mode 100644 index edcb6a3a2..000000000 --- a/templates/machine/imx8mq-evk-viv/40_bblayers.conf.inc +++ /dev/null @@ -1,5 +0,0 @@ -# This must be parsed after qt5, etc. layers so that they are correctly -# recognized by meta-freescale/dynamic-layers -BBLAYERS =+ "\ - ${METADIR}/bsp/meta-freescale \ - " diff --git a/templates/machine/imx8mq-evk-viv/50_setup.sh b/templates/machine/imx8mq-evk-viv/50_setup.sh deleted file mode 100644 index eefd1eb7f..000000000 --- a/templates/machine/imx8mq-evk-viv/50_setup.sh +++ /dev/null @@ -1,2 +0,0 @@ -find_and_ack_eula $METADIR/bsp/meta-freescale EULA -export EULA_FLAG_NAME="ACCEPT_FSL_EULA" diff --git a/templates/machine/imx8mq-evk-viv/README_machine_imx8mq-evk-viv.md b/templates/machine/imx8mq-evk-viv/README_machine_imx8mq-evk-viv.md deleted file mode 100644 index be30e00fe..000000000 --- a/templates/machine/imx8mq-evk-viv/README_machine_imx8mq-evk-viv.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -description: i.MX8MQ EVK with Vivante GPU driver -authors: Scott Murray <scott.murray@konsulko.com> ---- - -### Machine imx8mqevk-viv - -i.MX8MQ EVK and EVKB boards with Vivante GPU driver support. - |