aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNaoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>2021-10-07 07:22:31 +0900
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2021-11-16 21:40:16 +0100
commitc3ae7f9849428a49c077e4b4d212c44ba916c0fb (patch)
tree1ec5708d6e031d5c959fbc879f03e746adc07265
parentcc75df812ffae7ae20fe7917de74fd1667b32c75 (diff)
Create new image for ivi container demo
AGL IC integration will have two guests, one of the cluster demo, one of the simple ivi demo. This patch add initial support for ivi container for demo. Bug-AGL: SPEC-4099 Signed-off-by: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp> Change-Id: I4a1da6e30aee99e8ce2e2c404da78a413c647fd2
-rw-r--r--meta-agl-lxc/conf/multiconfig/agl-container-ivi.conf23
-rw-r--r--meta-agl-lxc/dynamic-layers/meta-rcar-gen3/recipes-container/lxc-config/lxc-config-cluster-demo_1.0.bbappend1
-rw-r--r--meta-agl-lxc/dynamic-layers/meta-rcar-gen3/recipes-container/lxc-config/lxc-config-ivi-demo_1.0.bbappend3
-rw-r--r--meta-agl-lxc/recipes-container/lxc-config/files/config.ivi-demo.in33
-rw-r--r--meta-agl-lxc/recipes-container/lxc-config/files/system.conf.ivi-demo.in8
-rw-r--r--meta-agl-lxc/recipes-container/lxc-config/lxc-config-cluster-demo_1.0.bb2
-rw-r--r--meta-agl-lxc/recipes-container/lxc-config/lxc-config-ivi-demo_1.0.bb7
-rw-r--r--meta-agl-lxc/recipes-platform/images/guest-image-ivi-demo.bb9
-rw-r--r--meta-agl-lxc/recipes-platform/images/lxc-host-image-demo.bb4
-rw-r--r--templates/feature/agl-lxc/50_local.conf.inc2
10 files changed, 89 insertions, 3 deletions
diff --git a/meta-agl-lxc/conf/multiconfig/agl-container-ivi.conf b/meta-agl-lxc/conf/multiconfig/agl-container-ivi.conf
new file mode 100644
index 00000000..d5bc5c41
--- /dev/null
+++ b/meta-agl-lxc/conf/multiconfig/agl-container-ivi.conf
@@ -0,0 +1,23 @@
+OVERRIDES:append = ":aglcontainerivi"
+
+TMPDIR = "${TOPDIR}/tmp-${BB_CURRENT_MC}"
+
+# Can be blank as container image type results in a .tar.bz2
+AGL_DEFAULT_IMAGE_FSTYPES:aglcontainerivi = ""
+AGL_EXTRA_IMAGE_FSTYPES:aglcontainerivi = ""
+
+IMAGE_FSTYPES:aglcontainerivi = "container"
+
+IMAGE_LINGUAS:append:aglcontainerivi = " en-us"
+
+PREFERRED_PROVIDER_virtual/kernel_aglcontainerguest = "linux-dummy"
+KERNEL_DEVICETREE:aglcontainerivi = ""
+
+# Disable serial consoles
+SERIAL_CONSOLES:aglcontainerivi = ""
+
+# Remove unneeded firmware packages
+EXTRA_IMAGEDEPENDS:remove:aglcontainerivi = "arm-trusted-firmware optee-os u-boot"
+
+# We assume rngd is running on the host, so unnecessary in container
+VIRTUAL-RUNTIME_rngd = ""
diff --git a/meta-agl-lxc/dynamic-layers/meta-rcar-gen3/recipes-container/lxc-config/lxc-config-cluster-demo_1.0.bbappend b/meta-agl-lxc/dynamic-layers/meta-rcar-gen3/recipes-container/lxc-config/lxc-config-cluster-demo_1.0.bbappend
index 63c45261..b795a9bf 100644
--- a/meta-agl-lxc/dynamic-layers/meta-rcar-gen3/recipes-container/lxc-config/lxc-config-cluster-demo_1.0.bbappend
+++ b/meta-agl-lxc/dynamic-layers/meta-rcar-gen3/recipes-container/lxc-config/lxc-config-cluster-demo_1.0.bbappend
@@ -1,2 +1,3 @@
+# If you want to change display assign in your board, please change this line in your recipe.
DRM_LEASE_DEVICE ?= "${@bb.utils.contains("AGL_FEATURES", "kingfisher", "card0-HDMI-A-2", "card0-HDMI-A-1" ,d)}"
diff --git a/meta-agl-lxc/dynamic-layers/meta-rcar-gen3/recipes-container/lxc-config/lxc-config-ivi-demo_1.0.bbappend b/meta-agl-lxc/dynamic-layers/meta-rcar-gen3/recipes-container/lxc-config/lxc-config-ivi-demo_1.0.bbappend
new file mode 100644
index 00000000..d38dd3ef
--- /dev/null
+++ b/meta-agl-lxc/dynamic-layers/meta-rcar-gen3/recipes-container/lxc-config/lxc-config-ivi-demo_1.0.bbappend
@@ -0,0 +1,3 @@
+
+# If you want to change display assign in your board, please change this line in your recipe.
+DRM_LEASE_DEVICE ?= "${@bb.utils.contains("AGL_FEATURES", "kingfisher", "card0-HDMI-A-1", "card0-HDMI-A-1" ,d)}"
diff --git a/meta-agl-lxc/recipes-container/lxc-config/files/config.ivi-demo.in b/meta-agl-lxc/recipes-container/lxc-config/files/config.ivi-demo.in
new file mode 100644
index 00000000..01b42802
--- /dev/null
+++ b/meta-agl-lxc/recipes-container/lxc-config/files/config.ivi-demo.in
@@ -0,0 +1,33 @@
+lxc.rootfs.path = dir:/var/lib/machines/ivi-demo
+lxc.signal.halt = SIGRTMIN+3
+lxc.signal.reboot = SIGTERM
+lxc.uts.name = "ivi"
+lxc.tty.max = 1
+lxc.pty.max = 1
+lxc.cap.drop = sys_module mac_admin mac_override sys_time
+
+lxc.mount.entry = /var/lib/lxc/ivi-demo/system.conf etc/systemd/system.conf.d/10-environment.conf none bind,optional,create=file
+
+lxc.mount.auto = cgroup:mixed proc:mixed sys:mixed
+lxc.mount.entry = shm /dev/shm tmpfs defaults 0 0
+lxc.mount.entry = /sys/kernel/security sys/kernel/security none ro,bind,optional 0 0
+
+lxc.cgroup.devices.allow = c 226:* rwm
+lxc.mount.entry = /dev/dri dev/dri none bind,optional,create=dir
+
+#lxc.mount.entry = /lxc/share lxc/share none bind,optional,create=dir
+lxc.mount.entry = /run/drm-lease-manager/@DRM_LEASE_DEVICE@ var/display/drm-lease-manager/@DRM_LEASE_DEVICE@ none bind,create=file
+
+lxc.cgroup.devices.allow = c 10:* rwm
+lxc.mount.entry = /dev/pvr_sync dev/pvr_sync none bind,optional,create=file
+
+lxc.net.0.type = empty
+
+lxc.environment = QT_QPA_PLATFORM=wayland
+lxc.environment = QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/plugins/
+#lxc.environment = QT_DEBUG_PLUGINS=1
+lxc.environment = QML_IMPORT_PATH=/usr/lib/qml/
+lxc.environment = QML2_IMPORT_PATH=/usr/lib/qml/
+lxc.environment = QT_WAYLAND_SHELL_INTEGRATION=xdg-shell
+
+lxc.start.auto = @LXC_AUTO_START@
diff --git a/meta-agl-lxc/recipes-container/lxc-config/files/system.conf.ivi-demo.in b/meta-agl-lxc/recipes-container/lxc-config/files/system.conf.ivi-demo.in
new file mode 100644
index 00000000..29a49b6c
--- /dev/null
+++ b/meta-agl-lxc/recipes-container/lxc-config/files/system.conf.ivi-demo.in
@@ -0,0 +1,8 @@
+[Manager]
+DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager
+DefaultEnvironment = DRM_LEASE_DEVICE=@DRM_LEASE_DEVICE@
+DefaultEnvironment = QT_QPA_PLATFORM=wayland
+DefaultEnvironment = QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/plugins/
+DefaultEnvironment = QML_IMPORT_PATH=/usr/lib/qml/
+DefaultEnvironment = QML2_IMPORT_PATH=/usr/lib/qml/
+DefaultEnvironment = QT_WAYLAND_SHELL_INTEGRATION=xdg-shell
diff --git a/meta-agl-lxc/recipes-container/lxc-config/lxc-config-cluster-demo_1.0.bb b/meta-agl-lxc/recipes-container/lxc-config/lxc-config-cluster-demo_1.0.bb
index 5657785b..57101f7a 100644
--- a/meta-agl-lxc/recipes-container/lxc-config/lxc-config-cluster-demo_1.0.bb
+++ b/meta-agl-lxc/recipes-container/lxc-config/lxc-config-cluster-demo_1.0.bb
@@ -1,4 +1,4 @@
-DESCRIPTION = "AGL demo container LXC config"
+DESCRIPTION = "AGL cluster demo container LXC config"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD;md5=3775480a712fc46a69647678acb234cb"
diff --git a/meta-agl-lxc/recipes-container/lxc-config/lxc-config-ivi-demo_1.0.bb b/meta-agl-lxc/recipes-container/lxc-config/lxc-config-ivi-demo_1.0.bb
new file mode 100644
index 00000000..6c387def
--- /dev/null
+++ b/meta-agl-lxc/recipes-container/lxc-config/lxc-config-ivi-demo_1.0.bb
@@ -0,0 +1,7 @@
+DESCRIPTION = "AGL simple IVI demo container LXC config"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD;md5=3775480a712fc46a69647678acb234cb"
+
+inherit lxc-config
+
+LXC_AUTO_START = "0"
diff --git a/meta-agl-lxc/recipes-platform/images/guest-image-ivi-demo.bb b/meta-agl-lxc/recipes-platform/images/guest-image-ivi-demo.bb
new file mode 100644
index 00000000..0eb73102
--- /dev/null
+++ b/meta-agl-lxc/recipes-platform/images/guest-image-ivi-demo.bb
@@ -0,0 +1,9 @@
+SUMMARY = "LXC ivi demo guest image"
+LICENSE = "MIT"
+
+require guest-image-minimal.bb
+
+IMAGE_INSTALL += " \
+ weston \
+ weston-init-guest \
+"
diff --git a/meta-agl-lxc/recipes-platform/images/lxc-host-image-demo.bb b/meta-agl-lxc/recipes-platform/images/lxc-host-image-demo.bb
index f03875b9..b109b1fc 100644
--- a/meta-agl-lxc/recipes-platform/images/lxc-host-image-demo.bb
+++ b/meta-agl-lxc/recipes-platform/images/lxc-host-image-demo.bb
@@ -3,7 +3,9 @@ LICENSE = "MIT"
require lxc-host-image-minimal.bb
-CONTAINER_IMAGES ?= "agl-container-guest:guest-image-cluster-demo"
+CONTAINER_IMAGES ?= "agl-container-guest:guest-image-cluster-demo \
+ agl-container-ivi:guest-image-ivi-demo \
+ "
IMAGE_INSTALL += " \
kernel-modules \
diff --git a/templates/feature/agl-lxc/50_local.conf.inc b/templates/feature/agl-lxc/50_local.conf.inc
index 5c5fc4ac..317937bf 100644
--- a/templates/feature/agl-lxc/50_local.conf.inc
+++ b/templates/feature/agl-lxc/50_local.conf.inc
@@ -1,4 +1,4 @@
-BBMULTICONFIG = "agl-container-guest"
+BBMULTICONFIG = "agl-container-guest agl-container-ivi"
# The meta-virtualization has a sanity-meta-virt check.
# This checker check 'DISTRO_FEATURES has virtualization', but