aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNaoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>2021-10-07 07:22:31 +0900
committerNaoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>2021-11-22 15:38:05 +0900
commit2df877da915944438a13eb2ce269be7b603ede21 (patch)
tree8c5a22f893ce1c0968b84f7c29c9479c15ffdd73
parent361e2d2d5fa10ad3385460035dde4b597b69156d (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 f4d263e9..89b08aca 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 964376de..37076877 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"
# Disable the meta-virtualization configuration support enabled by
# agl-virt. This should be revisited when upgrading past dunfell,