diff options
37 files changed, 531 insertions, 253 deletions
diff --git a/meta-agl-drm-lease/dynamic-layers/meta-agl-core/recipes-graphics/agl-compositor/agl-compositor/0001-Add-drm-lease-support.patch b/meta-agl-drm-lease/dynamic-layers/meta-agl-core/recipes-graphics/agl-compositor/agl-compositor/0001-Add-drm-lease-support.patch deleted file mode 100644 index a535664f..00000000 --- a/meta-agl-drm-lease/dynamic-layers/meta-agl-core/recipes-graphics/agl-compositor/agl-compositor/0001-Add-drm-lease-support.patch +++ /dev/null @@ -1,225 +0,0 @@ -From a1168c605680a106f52b4c926d473e8d9f6ae453 Mon Sep 17 00:00:00 2001 -From: Marius Vlad <marius.vlad@collabora.com> -Date: Fri, 3 May 2024 14:29:13 +0300 -Subject: [PATCH] Add drm-lease support - -Add an option to use a DRM lease instead of a DRM device -as the video output. This will allow agl-compositor to -operate alongside other applications output via a DRM -lease. - -Signed-off-by: Marius Vlad <marius.vlad@collabora.com> -Signed-off-by: Damian Hobson-Garcia <dhobsong@igel.co.jp> -Change-Id: I78f8b9425280d4c0606003cd86f4cf30c065b888 ---- - meson.build | 6 +++++ - meson_options.txt | 8 +++++++ - src/compositor.c | 8 +++++++ - src/drm-lease.c | 52 ++++++++++++++++++++++++++++++++++++++++++++ - src/drm-lease.h | 19 ++++++++++++++++ - src/ivi-compositor.h | 2 ++ - 6 files changed, 95 insertions(+) - create mode 100644 src/drm-lease.c - create mode 100644 src/drm-lease.h - -diff --git a/meson.build b/meson.build -index 215b5ac..f25833b 100644 ---- a/meson.build -+++ b/meson.build -@@ -159,6 +159,12 @@ elif policy_to_install == 'rba' - message('Installing rba policy') - endif - -+if get_option('drm-lease') -+ deps_libweston += dependency('libdlmclient') -+ srcs_agl_compositor += 'src/drm-lease.c' -+ config_h.set('HAVE_DRM_LEASE', '1') -+endif -+ - # From meson documentation: - # In order to look for headers in a specific directory you can use args : - # '-I/extra/include/dir, but this should only be used in exceptional cases for -diff --git a/meson_options.txt b/meson_options.txt -index 7c0e103..e0463f4 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -5,6 +5,7 @@ option( - value: 'allow-all', - description: 'Default policy when no specific policy was set' - ) -+ - option( - 'grpc-proxy', - type: 'boolean', -@@ -24,3 +25,10 @@ option( - value: '/usr/bin/Xwayland', - description: 'Xwayland: path to installed Xwayland binary' - ) -+ -+option( -+ 'drm-lease', -+ type: 'boolean', -+ value: false, -+ description: 'Support for running weston with a leased DRM Master' -+) -diff --git a/src/compositor.c b/src/compositor.c -index 6aec416..a6db5e0 100644 ---- a/src/compositor.c -+++ b/src/compositor.c -@@ -57,6 +57,7 @@ - #include "config.h" - #include "agl-shell-server-protocol.h" - -+#include "drm-lease.h" - - #define WINDOWED_DEFAULT_WIDTH 1024 - #define WINDOWED_DEFAULT_HEIGHT 768 -@@ -905,10 +906,12 @@ load_drm_backend(struct ivi_compositor *ivi, int *argc, char *argv[], - bool use_shadow; - bool without_input = false; - struct ivi_backend *ivi_backend = NULL; -+ char *drm_lease_name = NULL; - - const struct weston_option options[] = { - { WESTON_OPTION_STRING, "seat", 0, &config.seat_id }, - { WESTON_OPTION_STRING, "drm-device", 0, &config.specific_device }, -+ { WESTON_OPTION_STRING, "drm-lease", 0, &drm_lease_name }, - { WESTON_OPTION_BOOLEAN, "current-mode", 0, &use_current_mode }, - { WESTON_OPTION_BOOLEAN, "use-pixman", 0, &force_pixman }, - { WESTON_OPTION_BOOLEAN, "continue-without-input", false, &without_input } -@@ -930,6 +933,7 @@ load_drm_backend(struct ivi_compositor *ivi, int *argc, char *argv[], - &config.pageflip_timeout, 0); - weston_config_section_get_bool(section, "pixman-shadow", &use_shadow, 1); - config.use_pixman_shadow = use_shadow; -+ config.device_fd = get_drm_lease(&ivi->drm_lease, drm_lease_name); - - if (without_input) - ivi->compositor->require_input = !without_input; -@@ -954,10 +958,13 @@ load_drm_backend(struct ivi_compositor *ivi, int *argc, char *argv[], - goto error; - } - -+ free(drm_lease_name); -+ - return 0; - - error: - free(config.gbm_format); -+ free(drm_lease_name); - free(config.seat_id); - return -1; - } -@@ -2271,6 +2278,7 @@ error_compositor: - free(modules); - modules = NULL; - -+ release_drm_lease(ivi.drm_lease); - weston_compositor_destroy(ivi.compositor); - - weston_log_scope_destroy(log_scope); -diff --git a/src/drm-lease.c b/src/drm-lease.c -new file mode 100644 -index 0000000..887277d ---- /dev/null -+++ b/src/drm-lease.c -@@ -0,0 +1,52 @@ -+/* -+ * Copyright © 2022 IGEL Co., Ltd. -+ * -+ * Permission is hereby granted, free of charge, to any person obtaining -+ * a copy of this software and associated documentation files (the -+ * "Software"), to deal in the Software without restriction, including -+ * without limitation the rights to use, copy, modify, merge, publish, -+ * distribute, sublicense, and/or sell copies of the Software, and to -+ * permit persons to whom the Software is furnished to do so, subject to -+ * the following conditions: -+ * -+ * The above copyright notice and this permission notice (including the -+ * next paragraph) shall be included in all copies or substantial -+ * portions of the Software. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS -+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN -+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -+ * SOFTWARE. -+ */ -+ -+#include "drm-lease.h" -+ -+#include <libweston/libweston.h> -+ -+int get_drm_lease(struct dlm_lease **drm_lease, const char *drm_lease_name) { -+ if (!drm_lease_name) -+ return -1; -+ -+ int drm_fd = -1; -+ struct dlm_lease *lease = dlm_get_lease(drm_lease_name); -+ if (lease) { -+ drm_fd = dlm_lease_fd(lease); -+ if (drm_fd < 0) -+ dlm_release_lease(lease); -+ } -+ if (drm_fd < 0) -+ weston_log("Could not get DRM lease %s\n", drm_lease_name); -+ -+ *drm_lease = lease; -+ return drm_fd; -+} -+ -+void release_drm_lease(struct dlm_lease *lease) { -+ if (lease) -+ dlm_release_lease(lease); -+} -+ -diff --git a/src/drm-lease.h b/src/drm-lease.h -new file mode 100644 -index 0000000..9fdc428 ---- /dev/null -+++ b/src/drm-lease.h -@@ -0,0 +1,19 @@ -+#ifndef DRM_LEASE_H -+#define DRM_LEASE_H -+ -+#include "config.h" -+ -+#ifdef HAVE_DRM_LEASE -+#include <dlmclient.h> -+int get_drm_lease(struct dlm_lease **drm_lease, const char *drm_lease_name); -+void release_drm_lease(struct dlm_lease *drm_lease); -+#else -+struct dlm_lease; -+static int get_drm_lease(struct dlm_lease **drm_lease, const char *drm_lease_name) { -+ return -1; -+} -+static void release_drm_lease(struct dlm_lease *drm_lease) { -+} -+ -+#endif -+#endif /* DRM_LEASE_H */ -diff --git a/src/ivi-compositor.h b/src/ivi-compositor.h -index 1e8c55a..ea8138a 100644 ---- a/src/ivi-compositor.h -+++ b/src/ivi-compositor.h -@@ -36,6 +36,7 @@ - #include <libweston/desktop.h> - - #include "remote.h" -+#include "drm-lease.h" - - #include "agl-shell-server-protocol.h" - -@@ -148,6 +149,7 @@ struct ivi_compositor { - - bool need_ivi_output_relayout; - struct wl_list child_process_list; -+ struct dlm_lease *drm_lease; - }; - - struct ivi_surface; --- -2.43.0 - diff --git a/meta-agl-drm-lease/dynamic-layers/meta-agl-core/recipes-graphics/agl-compositor/agl-compositor_git.bbappend b/meta-agl-drm-lease/dynamic-layers/meta-agl-core/recipes-graphics/agl-compositor/agl-compositor_git.bbappend index 3c64ce1f..e84635f4 100644 --- a/meta-agl-drm-lease/dynamic-layers/meta-agl-core/recipes-graphics/agl-compositor/agl-compositor_git.bbappend +++ b/meta-agl-drm-lease/dynamic-layers/meta-agl-core/recipes-graphics/agl-compositor/agl-compositor_git.bbappend @@ -1,6 +1 @@ -FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" - -SRC_URI += "file://0001-Add-drm-lease-support.patch" - -PACKAGECONFIG[drm-lease] = "-Ddrm-lease=true,-Ddrm-lease=false,drm-lease-manager" PACKAGECONFIG:append = " drm-lease" diff --git a/meta-agl-ic-container/recipes-multimedia/pulseaudio/pulseaudio/raspberrypi4-64/system.pa b/meta-agl-ic-container/recipes-multimedia/pulseaudio/pulseaudio/rpi/system.pa index 5bb33743..5bb33743 100644 --- a/meta-agl-ic-container/recipes-multimedia/pulseaudio/pulseaudio/raspberrypi4-64/system.pa +++ b/meta-agl-ic-container/recipes-multimedia/pulseaudio/pulseaudio/rpi/system.pa diff --git a/meta-egvirt/recipes-extended/vhost-device-sound/vhost-device-sound_0.2.0.bb b/meta-egvirt/recipes-extended/vhost-device-sound/vhost-device-sound_0.2.0.bb index 2520e481..eaafe9de 100644 --- a/meta-egvirt/recipes-extended/vhost-device-sound/vhost-device-sound_0.2.0.bb +++ b/meta-egvirt/recipes-extended/vhost-device-sound/vhost-device-sound_0.2.0.bb @@ -27,4 +27,6 @@ inherit cargo inherit cargo-update-recipe-crates inherit pkgconfig +export BINDGEN_EXTRA_CLANG_ARGS= "--sysroot=${STAGING_DIR_TARGET}" + include vhost-device-sound-crates.inc diff --git a/meta-egvirt/recipes-kernel/kernel-module-virtio-loopback/virtio-loopback-driver_git.bb b/meta-egvirt/recipes-kernel/kernel-module-virtio-loopback/virtio-loopback-driver_git.bb index ba0f7e24..86e82b4a 100644 --- a/meta-egvirt/recipes-kernel/kernel-module-virtio-loopback/virtio-loopback-driver_git.bb +++ b/meta-egvirt/recipes-kernel/kernel-module-virtio-loopback/virtio-loopback-driver_git.bb @@ -1,13 +1,13 @@ SUMMARY = "Virtio-loopback driver" DESCRIPTION = "Virtio-Loopback kernel driver" LICENSE = "GPL-2.0-or-later" -LIC_FILES_CHKSUM = "file://README.md;md5=a504d51f03528972061035344480790b" +LIC_FILES_CHKSUM = "file://COPYING;md5=570a9b3749dd0463a1778803b12a6dce" inherit module SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/virtio/virtio-loopback-driver.git;protocol=http;branch=${AGL_BRANCH}" -SRCREV = "8948c9808eded80772de98cd4e8dd0cc71fdbe17" +SRCREV = "6dbaa892941dcb7cde05094f29425bc0533a579c" S = "${WORKDIR}/git" UNPACKDIR = "${S}" diff --git a/meta-egvirt/recipes-virtioloopback/virtio-loopback-adapter/virtio-loopback-adapter.bb b/meta-egvirt/recipes-virtioloopback/virtio-loopback-adapter/virtio-loopback-adapter.bb index 556e6850..a9391cc3 100644 --- a/meta-egvirt/recipes-virtioloopback/virtio-loopback-adapter/virtio-loopback-adapter.bb +++ b/meta-egvirt/recipes-virtioloopback/virtio-loopback-adapter/virtio-loopback-adapter.bb @@ -1,11 +1,11 @@ SUMMARY = "Virtio-loopback-adapter application" DESCRIPTION = "Adapter bridge for virtio-loopback" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://README.md;md5=ecc9c54ada6f0c33054d3bde010744f7" +LICENSE = "GPL-2.0-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=570a9b3749dd0463a1778803b12a6dce" FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-${PV}:" SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/virtio/virtio-loopback-adapter;protocol=http;branch=${AGL_BRANCH}" -SRCREV = "5d3c11bfab25ba6ffc37182df25c82d23dfcfb36" +SRCREV = "4bf3f656b9d58b4b99f6ddbe5ca27f4a39876ed0" S = "${WORKDIR}/git" TARGET_CC_ARCH += "${LDFLAGS}" diff --git a/meta-uhmi/meta-agl-uhmi-demo/README.md b/meta-uhmi/meta-agl-uhmi-demo/README.md new file mode 100644 index 00000000..df956f04 --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/README.md @@ -0,0 +1,53 @@ +# Unified HMI preconfigured demo images + +## Introduction +Unified HMI needs a litle complex environment setup, so here we provide a recipe that allow you to create a pre-configured images. + +## Unified HMI frameworks +For a detailed explanation of Unified HMI, please refer to the [AGL Documentation](https://docs.automotivelinux.org/en/master/#06_Component_Documentation/11_Unified_HMI/) + +## Demo environment +Demo images supports three boards: qemux-86-64, raspberrypi4, and agl-refhw. +Please prepare two boards, one is the sender and the other is the receiver, on any boards and build the respective images for each. + +* sender +``` +IP: 192.168.0.100 +HOSTNAME: agl-host0 +``` + +* receiver +``` +IP: 192.168.0.101 +HOSTNAME: agl-host1 +``` + +## How to build +Follow the [AGL documentation](https://docs.automotivelinux.org/en/master/#01_Getting_Started/02_Building_AGL_Image/01_Build_Process_Overview/) for the build process, and set up the "[Initializing Your Build Environment](https://docs.automotivelinux.org/en/master/#01_Getting_Started/02_Building_AGL_Image/04_Initializing_Your_Build_Environment/)" section as described below to enable the AGL feature 'agl-uhmi-demo'. + +For example: +``` +$ cd $AGL_TOP/master +$ source ./meta-agl/scripts/aglsetup.sh -m qemux86-64 -b qemux86-64 agl-devel agl-uhmi-demo +``` + +After adding the feature, execute the bitbake command: + +for sender +``` +$ bitbake agl-uhmi-demo-preconfigured-sender +``` + +for receiver +``` +$ bitbake agl-uhmi-demo-preconfigured-receiver +``` + +## How to use +After both the sender and receiver have successfully booted, you can execute the following commands on the sender to confirm that the application is displayed across two displays each connected to diferrent boards. + +on sender (IP:192.168.0.100, hostname:agl-host0): +``` +$ cat /var/local/uhmi-app/glmark2/app.json | ucl-distrib-com /etc/uhmi-framework/virtual-screen-def.json & +$ cat /var/local/uhmi-app/glmark2/initial_vscreen.json | ula-distrib-com +``` diff --git a/meta-uhmi/meta-agl-uhmi-demo/conf/layer.conf b/meta-uhmi/meta-agl-uhmi-demo/conf/layer.conf new file mode 100644 index 00000000..3d3466b1 --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/conf/layer.conf @@ -0,0 +1,14 @@ +# We have a conf and classes directory, add to BBPATH +BBPATH =. "${LAYERDIR}:" + +# We have recipes-* directories, add to BBFILES +BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ + ${LAYERDIR}/recipes-*/*/*.bbappend" + +BBFILE_COLLECTIONS += "agl-uhmi-demo-layer" +BBFILE_PATTERN_agl-uhmi-demo-layer = "^${LAYERDIR}/" +BBFILE_PRIORITY_agl-uhmi-demo-layer = "70" + +LAYERSERIES_COMPAT_agl-uhmi-demo-layer = "scarthgap" + +LAYERDEPENDS_agl-uhmi-demo-layer = "agldemo" diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-config/udev/uhmi-udev-conf/99-uhmi-user.rules b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/udev/uhmi-udev-conf/99-uhmi-user.rules new file mode 100644 index 00000000..bf75adf1 --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/udev/uhmi-udev-conf/99-uhmi-user.rules @@ -0,0 +1,4 @@ +KERNEL=="virtio-lo", GROUP="video", MODE="0660" +KERNEL=="uinput", RUN="/usr/bin/chown agl-driver:input /dev/uinput" +SUBSYSTEM=="drm", KERNEL=="card[1-9]*", ACTION=="add", PROGRAM="/bin/bash -c '[ -f /tmp/rvgpu-index ] && cat /tmp/rvgpu-index || echo \"\"'", RUN="/usr/bin/chown agl-driver:video /dev/dri/rvgpu_virtio%c" +SUBSYSTEM=="input", KERNEL=="event[1-9]*", ACTION=="add", ATTRS{name}=="rvgpu*", PROGRAM="/bin/bash -c '[ -f /tmp/rvgpu-index ] && cat /tmp/rvgpu-index || echo \"\"'", RUN="/usr/bin/chown agl-driver:input /dev/input/%s{name}%c" diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-config/udev/uhmi-udev-conf_1.0.bb b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/udev/uhmi-udev-conf_1.0.bb new file mode 100644 index 00000000..6566208d --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/udev/uhmi-udev-conf_1.0.bb @@ -0,0 +1,18 @@ +SUMMARY = "UHMI kernel devices user udev configuration" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" + +SRC_URI = "file://99-uhmi-user.rules" + +do_compile[noexec] = "1" + +do_install() { + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/udev/rules.d + install -m 0644 ${WORKDIR}/99-uhmi-user.rules ${D}${sysconfdir}/udev/rules.d/ + fi +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} += "udev" diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/files/app.json b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/files/app.json new file mode 100644 index 00000000..488e1f4a --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/files/app.json @@ -0,0 +1,51 @@ +{ + "format_v1": { + "command_type" : "remote_virtio_gpu", + "appli_name" : "glmark2", + "sender" : { + "launcher" : "agl-host0", + "command" : "/usr/bin/ucl-virtio-gpu-wl-send", + "frontend_params" : { + "scanout_x" : 0, + "scanout_y" : 0, + "scanout_w" : 1920, + "scanout_h" : 1080, + "server_port" : 33445 + }, + "appli" : "/usr/bin/glmark2-es2-wayland -s 1920x1080", + "env" : "LD_LIBRARY_PATH=/usr/lib/mesa-virtio" + }, + "receivers" : [ + { + "launcher" : "agl-host0", + "command" : "/usr/bin/ucl-virtio-gpu-wl-recv", + "backend_params" : { + "ivi_surface_id" : 101000, + "app_id" : "com.github.glmark2.glmark2", + "scanout_x" : 0, + "scanout_y" : 0, + "scanout_w" : 1920, + "scanout_h" : 1080, + "listen_port" : 33445, + "initial_screen_color" : "0x33333333" + }, + "env" : "" + }, + { + "launcher" : "agl-host1", + "command" : "/usr/bin/ucl-virtio-gpu-wl-recv", + "backend_params" : { + "ivi_surface_id" : 101000, + "app_id" : "com.github.glmark2.glmark2", + "scanout_x" : 0, + "scanout_y" : 0, + "scanout_w" : 1920, + "scanout_h" : 1080, + "listen_port" : 33445, + "initial_screen_color" : "0x33333333" + }, + "env" : "" + } + ] + } +} diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/files/initial_vscreen.json b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/files/initial_vscreen.json new file mode 100644 index 00000000..766de472 --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/files/initial_vscreen.json @@ -0,0 +1,21 @@ +{ + "command": "initial_vscreen", + "vlayer": [ + { + "VID": 1010000, + "coord": "global", + "virtual_w": 1920, "virtual_h": 1080, + "vsrc_x": 0, "vsrc_y": 0, "vsrc_w": 1920, "vsrc_h": 1080, + "vdst_x": 960, "vdst_y": 0, "vdst_w": 1920, "vdst_h": 1080, + "vsurface": [ + { + "VID": 101000, + "APPID": "com.github.glmark2.glmark2", + "pixel_w": 1920, "pixel_h": 1080, + "psrc_x": 0, "psrc_y": 0, "psrc_w": 1920, "psrc_h": 1080, + "vdst_x": 0, "vdst_y": 0, "vdst_w": 1920, "vdst_h": 1080 + } + ] + } + ] +} diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/files/uhmi-ivi-wm.conf b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/files/uhmi-ivi-wm.conf new file mode 100644 index 00000000..546a61c4 --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/files/uhmi-ivi-wm.conf @@ -0,0 +1,3 @@ +[Service] +Environment="XDG_RUNTIME_DIR=/run/user/200" +Environment="WAYLAND_DISPLAY=wayland-1" diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/set-hostname.inc b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/set-hostname.inc new file mode 100644 index 00000000..9ff5339e --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/set-hostname.inc @@ -0,0 +1,5 @@ +set_hostname() { + UHMI_HOSTNAME=${UHMI_HOSTNAME:-agl-host} + echo "${UHMI_HOSTNAME}" > ${IMAGE_ROOTFS}/${sysconfdir}/hostname +} +ROOTFS_POSTPROCESS_COMMAND:append = " set_hostname;" diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/uhmi-config-receiver.bb b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/uhmi-config-receiver.bb new file mode 100644 index 00000000..b0b9a17e --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/uhmi-config-receiver.bb @@ -0,0 +1,13 @@ +SUMMARY = "Setting files for UHMI receiver" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +SRC_URI = " \ + file://uhmi-ivi-wm.conf \ +" + +do_install() { + install -d ${D}/etc/systemd/system/uhmi-ivi-wm.service.d/ + install -m 0644 ${WORKDIR}/uhmi-ivi-wm.conf ${D}/etc/systemd/system/uhmi-ivi-wm.service.d/ +} + diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/uhmi-config-sender.bb b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/uhmi-config-sender.bb new file mode 100644 index 00000000..04b20671 --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-config/uhmi-config/uhmi-config-sender.bb @@ -0,0 +1,22 @@ +SUMMARY = "Setting files for UHMI sender" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +SRC_URI = " \ + file://app.json \ + file://initial_vscreen.json \ + file://uhmi-ivi-wm.conf \ +" + +do_install() { + install -d ${D}/var/local/uhmi-app/glmark2 + install -m 644 ${WORKDIR}/app.json ${D}/var/local/uhmi-app/glmark2/ + install -m 644 ${WORKDIR}/initial_vscreen.json ${D}/var/local/uhmi-app/glmark2/ + + install -d ${D}/etc/systemd/system/uhmi-ivi-wm.service.d/ + install -m 0644 ${WORKDIR}/uhmi-ivi-wm.conf ${D}/etc/systemd/system/uhmi-ivi-wm.service.d/ +} + +FILES:${PN} += " \ + /var/local/uhmi-app/glmark2 \ +" diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-graphics/wayland/files/weston_ivi-shell.ini b/meta-uhmi/meta-agl-uhmi-demo/recipes-graphics/wayland/files/weston_ivi-shell.ini new file mode 100644 index 00000000..5001d11e --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-graphics/wayland/files/weston_ivi-shell.ini @@ -0,0 +1,50 @@ +[core] +shell=ivi-shell.so +modules=ivi-controller.so +require-input=false + +[output] +name=HDMI-A-1 +mode=1920x1080@60 + +[output] +name=HDMI-A-2 +mode=1920x1080@60 + +[output] +name=HDMI-A-3 +mode=1920x1080@60 + +[output] +name=DSI-1 +mode=1920x1080@60 + +[output] +name=DSI-2 +mode=1920x1080@60 + +[output] +name=DP-1 +mode=1920x1080@60 + +[output] +name=Virtual-1 +mode=1920x1080 + +[output] +name=Virtual-2 +mode=1920x1080 + +[output] +name=VGA-1 +mode=1920x1080 + +[output] +name=VGA-2 +mode=1920x1080 + +[ivi-shell] +ivi-input-module=ivi-input-controller.so +#ivi-client-name=/usr/bin/simple-weston-client +bkgnd-surface-id=1000000 +bkgnd-color=0xFF000000 diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-graphics/wayland/weston-init.bbappend b/meta-uhmi/meta-agl-uhmi-demo/recipes-graphics/wayland/weston-init.bbappend new file mode 100644 index 00000000..1cc6091c --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-graphics/wayland/weston-init.bbappend @@ -0,0 +1,13 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/files:" + +WESTON_INIT_IVI_SHELL ?= "weston_ivi-shell.ini" + +SRC_URI:append = " \ + file://${WESTON_INIT_IVI_SHELL} \ +" + +do_install:append () { + install -d ${D}/${sysconfdir}/xdg/weston + install -m 644 ${WORKDIR}/${WESTON_INIT_IVI_SHELL} ${D}/${sysconfdir}/xdg/weston/ + ln -nfs ${sysconfdir}/xdg/weston/${WESTON_INIT_IVI_SHELL} ${D}/${sysconfdir}/xdg/weston/weston.ini +} diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-receiver-agl.bb b/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-receiver-agl.bb new file mode 100644 index 00000000..89f19073 --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-receiver-agl.bb @@ -0,0 +1,22 @@ +SUMMARY = "AGL Unified HMI demo preconfigured AGL receiver image" +LICENSE = "MIT" + +DEPENDS = "uhmi-agl-wm" + +require recipes-platform/images/agl-image-compositor.bb +require recipes-platform/images/agl-demo-features.inc + +IMAGE_FEATURES += "ssh-server-openssh" + +# Add packages for Unified HMI demo platform here +IMAGE_INSTALL += " \ + packagegroup-rvgpu \ + packagegroup-ddfw-agl \ + uhmi-config-receiver \ + agl-compositor \ + native-shell-client \ + uhmi-udev-conf \ +" + +UHMI_HOSTNAME ?= "agl-host1" +require recipes-config/uhmi-config/set-hostname.inc diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-receiver.bb b/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-receiver.bb new file mode 100644 index 00000000..1e7de2c0 --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-receiver.bb @@ -0,0 +1,18 @@ +SUMMARY = "AGL Unified HMI demo preconfigured weston receiver image" +LICENSE = "MIT" + +DEPENDS = "uhmi-ivi-wm" + +require recipes-platform/images/agl-image-weston.bb + +IMAGE_FEATURES += "ssh-server-openssh" + +# Add packages for Unified HMI demo platform here +IMAGE_INSTALL += " \ + packagegroup-rvgpu \ + packagegroup-ddfw \ + uhmi-config-receiver \ +" + +UHMI_HOSTNAME ?= "agl-host1" +require recipes-config/uhmi-config/set-hostname.inc diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-sender-agl.bb b/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-sender-agl.bb new file mode 100644 index 00000000..ce47aff6 --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-sender-agl.bb @@ -0,0 +1,23 @@ +SUMMARY = "AGL Unified HMI demo preconfigured AGL sender image" +LICENSE = "MIT" + +DEPENDS = "uhmi-agl-wm" + +require recipes-platform/images/agl-image-compositor.bb +require recipes-platform/images/agl-demo-features.inc + +IMAGE_FEATURES += "ssh-server-openssh package-management" + +# Add packages for Unified HMI demo platform here +IMAGE_INSTALL += " \ + packagegroup-rvgpu \ + packagegroup-ddfw-agl \ + uhmi-config-sender \ + agl-compositor \ + native-shell-client \ + glmark2 \ + uhmi-udev-conf \ +" + +UHMI_HOSTNAME ?= "agl-host0" +require recipes-config/uhmi-config/set-hostname.inc diff --git a/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-sender.bb b/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-sender.bb new file mode 100644 index 00000000..5c9d6a2b --- /dev/null +++ b/meta-uhmi/meta-agl-uhmi-demo/recipes-platform/images/agl-uhmi-demo-preconfigured-sender.bb @@ -0,0 +1,19 @@ +SUMMARY = "AGL Unified HMI demo preconfigured weston sender image" +LICENSE = "MIT" + +DEPENDS = "uhmi-ivi-wm" + +require recipes-platform/images/agl-image-weston.bb + +IMAGE_FEATURES += "ssh-server-openssh" + +# Add packages for Unified HMI demo platform here +IMAGE_INSTALL += " \ + packagegroup-rvgpu \ + packagegroup-ddfw \ + uhmi-config-sender \ + glmark2 \ +" + +UHMI_HOSTNAME ?= "agl-host0" +require recipes-config/uhmi-config/set-hostname.inc diff --git a/meta-uhmi/recipes-core/ucl-tools/files/ucl-launcher.service b/meta-uhmi/recipes-core/ucl-tools/files/ucl-launcher.service index 37f289e6..a954c90f 100644 --- a/meta-uhmi/recipes-core/ucl-tools/files/ucl-launcher.service +++ b/meta-uhmi/recipes-core/ucl-tools/files/ucl-launcher.service @@ -2,7 +2,9 @@ Description=ucl-launcher [Service] -Type=idle +Type=simple +User=agl-driver +Environment=XDG_RUNTIME_DIR=/run/user/1001 ExecStart=/usr/bin/ucl-launcher KillSignal=SIGTERM TimeoutStopSec=10 diff --git a/meta-uhmi/recipes-core/ucl-tools/ucl-tools_git.bb b/meta-uhmi/recipes-core/ucl-tools/ucl-tools_git.bb index cc26678b..bb24cd66 100644 --- a/meta-uhmi/recipes-core/ucl-tools/ucl-tools_git.bb +++ b/meta-uhmi/recipes-core/ucl-tools/ucl-tools_git.bb @@ -9,8 +9,8 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/files:" PN="ucl-tools" PROVIDES += "ucl-tools" -SRCREV = "80e83132834b5ab62875bc294332bd00cd559d5d" -BRANCH ?= "main" +SRCREV = "8a95c5412ff90507e33f9c5d4e57e3a5b4bb7205" +BRANCH ?= "agl" SRC_URI = " \ git://github.com/unified-hmi/ucl-tools.git;protocol=https;branch=${BRANCH} \ " @@ -28,7 +28,7 @@ inherit go RDEPENDS:${PN} = "bash" RDEPENDS:${PN}-dev = "bash" -inherit systemd +inherit systemd features_check SRC_URI += " file://ucl-launcher.service" REQUIRED_DISTRO_FEATURES = "systemd" diff --git a/meta-uhmi/recipes-core/uhmi-agl-wm/files/uhmi-agl-wm.service b/meta-uhmi/recipes-core/uhmi-agl-wm/files/uhmi-agl-wm.service new file mode 100644 index 00000000..39ca19d8 --- /dev/null +++ b/meta-uhmi/recipes-core/uhmi-agl-wm/files/uhmi-agl-wm.service @@ -0,0 +1,16 @@ +[Unit] +Description=uhmi AGL window manager +After=agl-compositor.service + +[Service] +Type=simple +User=agl-driver +Environment=XDG_RUNTIME_DIR=/run/user/1001 +EnvironmentFile=-/etc/default/uhmi-agl-wm +ExecStart=/usr/bin/uhmi-agl-wm +KillSignal=SIGKILL +Restart=always +RestartSec=1s + +[Install] +WantedBy=multi-user.target diff --git a/meta-uhmi/recipes-core/uhmi-agl-wm/uhmi-agl-wm_git.bb b/meta-uhmi/recipes-core/uhmi-agl-wm/uhmi-agl-wm_git.bb new file mode 100644 index 00000000..2329c0be --- /dev/null +++ b/meta-uhmi/recipes-core/uhmi-agl-wm/uhmi-agl-wm_git.bb @@ -0,0 +1,41 @@ +DESCRIPTION = "UHMI AGL window-manager" +DEPENDS = " agl-compositor grpc grpc-native jansson" + +RDEPENDS:${PN} = " jansson" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.md;md5=fb8ec92f12228c45a207d99abba9d6c9" + +FILESEXTRAPATHS:prepend := "${THISDIR}/files:" + +PN="uhmi-agl-wm" + +SRCREV = "20c1228834f141bbbb6c0ee71d4f3c4149f87b66" +BRANCH ?= "master" +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/uhmi-agl-wm.git;protocol=https;branch=${AGL_BRANCH}" +PV = "0.0+git${SRCPV}" + +S = "${WORKDIR}/git" + +inherit meson pkgconfig systemd features_check + +SRC_URI += " file://uhmi-agl-wm.service" + +REQUIRED_DISTRO_FEATURES = "systemd" +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE:${PN} = "uhmi-agl-wm.service" +SYSTEMD_AUTO_ENABLE:${PN} = "enable" + +FILES:${PN} += " \ + ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${systemd_system_unitdir}/${SYSTEMD_SERVICE}', '', d)} \ + " + +do_install:append() { + if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then + install -d ${D}${systemd_system_unitdir} + install -m 644 ${WORKDIR}/*.service ${D}/${systemd_system_unitdir} + fi +} + +FILES:${PN} += " /usr/bin/uhmi-agl-wm" +FILES:${PN} += " /usr/share/*" diff --git a/meta-uhmi/recipes-core/uhmi-ivi-wm/uhmi-ivi-wm_git.bb b/meta-uhmi/recipes-core/uhmi-ivi-wm/uhmi-ivi-wm_git.bb index daa5fff4..57af74ef 100644 --- a/meta-uhmi/recipes-core/uhmi-ivi-wm/uhmi-ivi-wm_git.bb +++ b/meta-uhmi/recipes-core/uhmi-ivi-wm/uhmi-ivi-wm_git.bb @@ -19,10 +19,8 @@ PV = "0.0+git${SRCPV}" S = "${WORKDIR}/git" -inherit cmake +inherit cmake systemd features_check - -inherit systemd SRC_URI += " file://uhmi-ivi-wm.service" REQUIRED_DISTRO_FEATURES = "systemd" SYSTEMD_PACKAGES = "${PN}" @@ -39,6 +37,5 @@ do_install:append() { fi } - FILES:${PN} += " /usr/bin/uhmi-ivi-wm" FILES:${PN} += " /usr/share/*" diff --git a/meta-uhmi/recipes-core/ula-tools/files/ula-node-agl.service b/meta-uhmi/recipes-core/ula-tools/files/ula-node-agl.service new file mode 100644 index 00000000..2d01b7c2 --- /dev/null +++ b/meta-uhmi/recipes-core/ula-tools/files/ula-node-agl.service @@ -0,0 +1,17 @@ +[Unit] +Description=ula-node +Requires=uhmi-agl-wm.service +After=uhmi-agl-wm.service + +[Service] +Type=simple +User=agl-driver +Environment=XDG_RUNTIME_DIR=/run/user/1001 +ExecStart=/usr/bin/ula-node +KillSignal=SIGTERM +TimeoutStopSec=10 +Restart=always +RestartSec=2 + +[Install] +WantedBy=multi-user.target diff --git a/meta-uhmi/recipes-core/ula-tools/files/ula-node.service b/meta-uhmi/recipes-core/ula-tools/files/ula-node.service index edf69f3d..44a3af48 100644 --- a/meta-uhmi/recipes-core/ula-tools/files/ula-node.service +++ b/meta-uhmi/recipes-core/ula-tools/files/ula-node.service @@ -4,7 +4,9 @@ Requires=uhmi-ivi-wm.service After=uhmi-ivi-wm.service [Service] -Type=idle +Type=simple +User=agl-driver +Environment=XDG_RUNTIME_DIR=/run/user/1001 ExecStart=/usr/bin/ula-node KillSignal=SIGTERM TimeoutStopSec=10 diff --git a/meta-uhmi/recipes-core/ula-tools/ula-tools-agl_git.bb b/meta-uhmi/recipes-core/ula-tools/ula-tools-agl_git.bb new file mode 100644 index 00000000..744bff4a --- /dev/null +++ b/meta-uhmi/recipes-core/ula-tools/ula-tools-agl_git.bb @@ -0,0 +1,69 @@ +SUMMARY = "Unified HMI Layout Tools" +SECTION = "graphics" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://src/ula-tools/LICENSE.md;md5=e789951aab02a3028d2e58b90fc933ba" + +FILESEXTRAPATHS:prepend := "${THISDIR}/files:" + +PN="ula-tools-agl" +PROVIDES += "ula-tools-agl" + +SRCREV = "3591690087d8267a79d3d0714ef5f4abc4bffc8d" +BRANCH ?= "agl" +SRC_URI = " \ + git://github.com/unified-hmi/ula-tools.git;protocol=https;branch=${BRANCH} \ +" +PV = "0.0+git${SRCPV}" + +S = "${WORKDIR}/git" + +export GO111MODULE="auto" + +GO_IMPORT = "ula-tools" +GO_INSTALL = " ${GO_IMPORT}/cmd/ula-distrib-com ${GO_IMPORT}/cmd/ula-node" + +inherit go +RDEPENDS:${PN} = "jq bash" +RDEPENDS:${PN}-dev = "bash" + +inherit systemd features_check + +SRC_URI += " \ + file://ula-node-agl.service \ + file://virtual-screen-def.json \ + " + +REQUIRED_DISTRO_FEATURES = "systemd" +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE:${PN} = "ula-node.service" +SYSTEMD_AUTO_ENABLE:${PN} = "enable" +FILES:${PN} += " \ + ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${systemd_system_unitdir}/${SYSTEMD_SERVICE}', '', d)} \ + /etc/uhmi-framework/virtual-screen-def.json \ + " + +do_compile:append() { + export CGO_ENABLED="1" + export GOFLAGS="-mod=vendor -trimpath" + ${GO} build -buildmode=c-shared -o ${GOPATH}/pkg/libulaclient.so -v -ldflags '-extldflags "-Wl,-soname=libulaclient.so"' ${GO_IMPORT}/pkg/ula-client-lib +} + +do_install:append() { + if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then + install -d ${D}${systemd_system_unitdir} + install -m 644 ${WORKDIR}/*.service ${D}/${systemd_system_unitdir}/ula-node.service + fi + + install -d ${D}/etc/uhmi-framework + install -m 644 ${WORKDIR}/virtual-screen-def.json ${D}/etc/uhmi-framework + + install -d ${D}${libdir} + install -m 0755 ${GOPATH}/pkg/libulaclient.so ${D}${libdir} + + install -d ${D}${includedir} + install -m 644 ${GOPATH}/pkg/libulaclient.h ${D}${includedir} +} + +FILES:${PN} += "${libdir}" +FILES:${PN} += "${includedir}" diff --git a/meta-uhmi/recipes-core/ula-tools/ula-tools_git.bb b/meta-uhmi/recipes-core/ula-tools/ula-tools_git.bb index 9b945a3f..1dc26e20 100644 --- a/meta-uhmi/recipes-core/ula-tools/ula-tools_git.bb +++ b/meta-uhmi/recipes-core/ula-tools/ula-tools_git.bb @@ -18,18 +18,16 @@ PV = "0.0+git${SRCPV}" S = "${WORKDIR}/git" - export GO111MODULE="auto" GO_IMPORT = "ula-tools" GO_INSTALL = " ${GO_IMPORT}/cmd/ula-distrib-com ${GO_IMPORT}/cmd/ula-node" - inherit go RDEPENDS:${PN} = "jq bash" RDEPENDS:${PN}-dev = "bash" -inherit systemd +inherit systemd features_check SRC_URI += " \ file://ula-node.service \ @@ -47,10 +45,10 @@ FILES:${PN} += " \ do_compile:append() { export CGO_ENABLED="1" + export GOFLAGS="-mod=vendor -trimpath" ${GO} build -buildmode=c-shared -o ${GOPATH}/pkg/libulaclient.so -v -ldflags '-extldflags "-Wl,-soname=libulaclient.so"' ${GO_IMPORT}/pkg/ula-client-lib } - do_install:append() { if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then install -d ${D}${systemd_system_unitdir} @@ -65,7 +63,6 @@ do_install:append() { install -d ${D}${includedir} install -m 644 ${GOPATH}/pkg/libulaclient.h ${D}${includedir} - } FILES:${PN} += "${libdir}" diff --git a/meta-uhmi/recipes-graphics/mesa-virtio/mesa-virtio_20.3.5.bb b/meta-uhmi/recipes-graphics/mesa-virtio/mesa-virtio_20.3.5.bb index 9a0dab2f..03d8ddc2 100644 --- a/meta-uhmi/recipes-graphics/mesa-virtio/mesa-virtio_20.3.5.bb +++ b/meta-uhmi/recipes-graphics/mesa-virtio/mesa-virtio_20.3.5.bb @@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://docs/license.rst;md5=9aa1bc48c9826ad9fdb16661f6930496 DEPENDS = "expat makedepend-native flex-native bison-native libxml2-native zlib chrpath-replacement-native python3-mako-native gettext-native" DEPENDS:append = " libdrm wayland wayland-native wayland-protocols python3-native" -SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz" +SRC_URI = "https://mesa.freedesktop.org/archive/older-versions/20.x/mesa-${PV}.tar.xz" SRC_URI[md5] = "224d7576618ef4dd8ac69f30b5b90b38" SRC_URI[sha256sum] = "909a72df63dfa3c0844ccf44a26ac028d148297ed333ab51560893923d7691ce" diff --git a/meta-uhmi/recipes-graphics/remote-virtio-gpu/remote-virtio-gpu.inc b/meta-uhmi/recipes-graphics/remote-virtio-gpu/remote-virtio-gpu.inc index ddd6dbab..47866ca6 100644 --- a/meta-uhmi/recipes-graphics/remote-virtio-gpu/remote-virtio-gpu.inc +++ b/meta-uhmi/recipes-graphics/remote-virtio-gpu/remote-virtio-gpu.inc @@ -1,6 +1,6 @@ PV = "0.0+git${SRCPV}" -SRCREV = "bce1f77f189dacf3e57d2f4edc37be4ff63b9e4b" -BRANCH ?= "main" +SRCREV = "f9e5d64f61a646849a835232998f6cf079176fb3" +BRANCH ?= "agl" SRC_URI = " \ git://github.com/unified-hmi/remote-virtio-gpu.git;protocol=https;branch=${BRANCH} \ " diff --git a/meta-uhmi/recipes-kernel/virtio-loopback-driver/virtio-loopback-driver.inc b/meta-uhmi/recipes-kernel/virtio-loopback-driver/virtio-loopback-driver.inc index a7c0111b..a6fb033a 100644 --- a/meta-uhmi/recipes-kernel/virtio-loopback-driver/virtio-loopback-driver.inc +++ b/meta-uhmi/recipes-kernel/virtio-loopback-driver/virtio-loopback-driver.inc @@ -1,5 +1,5 @@ PV = "0.0+git${SRCPV}" -SRCREV = "cf40e4d295c75567cb7d1d03f9fe291e9593e882" +SRCREV = "52da5c41c45b7bbc8f042d40d3c2daa3c779e06c" BRANCH ?= "main" SRC_URI = " \ git://github.com/unified-hmi/virtio-loopback-driver.git;protocol=https;branch=${BRANCH} \ diff --git a/meta-uhmi/recipes-platform/packagegroups/packagegroup-ddfw-agl.bb b/meta-uhmi/recipes-platform/packagegroups/packagegroup-ddfw-agl.bb new file mode 100644 index 00000000..88a65d6a --- /dev/null +++ b/meta-uhmi/recipes-platform/packagegroups/packagegroup-ddfw-agl.bb @@ -0,0 +1,11 @@ +SUMMARY = "Unified AGL HMI Package Groups" +LICENSE = "Apache-2.0" + +inherit packagegroup + +RDEPENDS:${PN} += " \ + ucl-tools \ + ula-tools-agl \ + uhmi-agl-wm \ + agl-compositor \ +" diff --git a/templates/feature/agl-uhmi-demo/50_bblayers.conf.inc b/templates/feature/agl-uhmi-demo/50_bblayers.conf.inc new file mode 100644 index 00000000..9048d828 --- /dev/null +++ b/templates/feature/agl-uhmi-demo/50_bblayers.conf.inc @@ -0,0 +1,3 @@ +BBLAYERS =+ " \ + ${METADIR}/meta-agl-devel/meta-uhmi/meta-agl-uhmi-demo \ +" diff --git a/templates/feature/agl-uhmi-demo/included.dep b/templates/feature/agl-uhmi-demo/included.dep new file mode 100644 index 00000000..9d33e122 --- /dev/null +++ b/templates/feature/agl-uhmi-demo/included.dep @@ -0,0 +1,2 @@ +agl-demo +agl-uhmi |