summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScott Murray <scott.murray@konsulko.com>2024-05-27 12:30:46 -0400
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2024-05-29 10:27:17 +0000
commit6ed7c8437f9fb979dca29bd8643fc19e8470e041 (patch)
tree166003efbe279e819e1eb28f88dfbe3931718b78
parent19872cdb6a805eebfe286b6576f0b6a3ec215bd1 (diff)
Add preconfigured demo control panel images
Changes: - Add kuksa-dbc-feeder configuration package for the gateway flavor of the control panel image. - Split out the agl-demo-control-panel configuration into a separate package, and add alternative versions for running against the regular and gateway versions of the full demo. - Add -preconfigured and -preconfigured-gateway flavors of the agl-ivi-demo-control-panel image that add the appropriate tweaks to support the full demo setups. Bug-AGL: SPEC-5107, SPEC-5138 Change-Id: I290d08c0f7234f951b822b161bce8166fb62d346 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl-demo/+/29943 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
-rw-r--r--recipes-connectivity/kuksa-val/kuksa-dbc-feeder-conf-control-panel.bb25
-rw-r--r--recipes-connectivity/kuksa-val/kuksa-dbc-feeder-conf-control-panel/kuksa-dbc-feeder.control-panel4
-rw-r--r--recipes-demo/agl-demo-control-panel/agl-demo-control-panel_git.bb42
-rw-r--r--recipes-platform/images/agl-ivi-demo-control-panel-preconfigured-gateway.bb11
-rw-r--r--recipes-platform/images/agl-ivi-demo-control-panel-preconfigured.bb7
-rw-r--r--recipes-platform/images/agl-ivi-demo-control-panel.bb2
6 files changed, 83 insertions, 8 deletions
diff --git a/recipes-connectivity/kuksa-val/kuksa-dbc-feeder-conf-control-panel.bb b/recipes-connectivity/kuksa-val/kuksa-dbc-feeder-conf-control-panel.bb
new file mode 100644
index 00000000..3148721e
--- /dev/null
+++ b/recipes-connectivity/kuksa-val/kuksa-dbc-feeder-conf-control-panel.bb
@@ -0,0 +1,25 @@
+SUMMARY = "KUKSA.val DBC feeder configuration for gateway demo control panel"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+SRC_URI = "file://kuksa-dbc-feeder.control-panel"
+
+S = "${WORKDIR}"
+
+inherit update-alternatives
+
+do_compile[noexec] = "1"
+
+do_install() {
+ install -d ${D}${sysconfdir}/default
+ install -m 0644 ${WORKDIR}/kuksa-dbc-feeder.control-panel ${D}${sysconfdir}/default/
+}
+
+ALTERNATIVE_LINK_NAME[kuksa-dbc-feeder.env] = "${sysconfdir}/default/kuksa-dbc-feeder"
+
+RPROVIDES:${PN} = "kuksa-dbc-feeder.env"
+ALTERNATIVE:${PN} = "kuksa-dbc-feeder.env"
+ALTERNATIVE_TARGET_${PN} = "${sysconfdir}/default/kuksa-dbc-feeder.control-panel"
+
+RDEPENDS:${PN} += "kuksa-dbc-feeder"
diff --git a/recipes-connectivity/kuksa-val/kuksa-dbc-feeder-conf-control-panel/kuksa-dbc-feeder.control-panel b/recipes-connectivity/kuksa-val/kuksa-dbc-feeder-conf-control-panel/kuksa-dbc-feeder.control-panel
new file mode 100644
index 00000000..8e73a890
--- /dev/null
+++ b/recipes-connectivity/kuksa-val/kuksa-dbc-feeder-conf-control-panel/kuksa-dbc-feeder.control-panel
@@ -0,0 +1,4 @@
+# Leave DBC input disabled until cruise support is added to the
+# control panel simulator
+EXTRA_ARGS="--val2dbc --no-dbc2val --dbc-default /etc/kuksa-dbc-feeder/dbc_default_values.json"
+#LOG_LEVEL=debug
diff --git a/recipes-demo/agl-demo-control-panel/agl-demo-control-panel_git.bb b/recipes-demo/agl-demo-control-panel/agl-demo-control-panel_git.bb
index 87f55636..e9f35765 100644
--- a/recipes-demo/agl-demo-control-panel/agl-demo-control-panel_git.bb
+++ b/recipes-demo/agl-demo-control-panel/agl-demo-control-panel_git.bb
@@ -11,9 +11,7 @@ SRCREV = "262fd5529462617cbb65747585498c8977cdd9db"
S = "${WORKDIR}/git"
-inherit systemd allarch
-
-require recipes-config/agl-users/agl-users.inc
+inherit systemd allarch update-alternatives
SYSTEMD_SERVICE:${PN} = "${BPN}.service"
@@ -33,10 +31,14 @@ do_install() {
install -D -m 0644 ${WORKDIR}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service
# Install conf file
- install -d ${D}/home/agl-driver/.local/share/agl-demo-control-panel
- sed 's/=user-session/=AGL-databroker/' ${S}/extras/config.ini > \
- ${D}/home/agl-driver/.local/share/agl-demo-control-panel/config.ini
- chown -R agl-driver:agl-driver ${D}/home/agl-driver
+ install -d ${D}${sysconfdir}/agl-demo-control-panel
+ install -m 0644 ${S}/extras/config.ini ${D}${sysconfdir}/agl-demo-control-panel/config.ini.default
+ sed 's/ip = localhost/ip = 192.168.10.2/' ${S}/extras/config.ini > \
+ ${D}${sysconfdir}/agl-demo-control-panel/config.ini.demo
+ sed -e 's/hvac-enabled = true/hvac-enabled = false/' \
+ -e 's/steering-wheel-enabled = true/steering-wheel-enabled = false/' \
+ ${S}/extras/config.ini > \
+ ${D}${sysconfdir}/agl-demo-control-panel/config.ini.gateway-demo
}
# For now generate resource wrapper on first boot, as it looks non-trivial
@@ -46,9 +48,10 @@ pkg_postinst_ontarget:${PN} () {
true
}
-FILES:${PN} += "/home/agl-driver"
+ALTERNATIVE_LINK_NAME[agl-demo-control-panel.ini] = "${sysconfdir}/agl-demo-control-panel/config.ini"
RDEPENDS:${PN} += " \
+ ${PN}-conf \
python3 \
python3-modules \
python3-packaging \
@@ -57,3 +60,26 @@ RDEPENDS:${PN} += " \
agl-users \
weston \
"
+
+PACKAGE_BEFORE_PN += "${PN}-conf"
+FILES:${PN}-conf += "${sysconfdir}/agl-demo-control-panel/config.ini.default"
+RDEPENDS:${PN}-conf = "${PN}"
+RPROVIDES:${PN}-conf = "agl-demo-control-panel.ini"
+ALTERNATIVE:${PN}-conf = "agl-demo-control-panel.ini"
+ALTERNATIVE_TARGET_${PN}-conf = "${sysconfdir}/agl-demo-control-panel/config.ini.default"
+
+PACKAGE_BEFORE_PN += "${PN}-conf-demo"
+FILES:${PN}-conf-demo += "${sysconfdir}/agl-demo-control-panel/config.ini.demo"
+RDEPENDS:${PN}-conf-demo = "${PN}"
+RPROVIDES:${PN}-conf-demo = "agl-demo-control-panel.ini"
+ALTERNATIVE:${PN}-conf-demo = "agl-demo-control-panel.ini"
+ALTERNATIVE_TARGET_${PN}-conf-demo = "${sysconfdir}/agl-demo-control-panel/config.ini.demo"
+ALTERNATIVE_PRIORITY_${PN}-conf-demo = "20"
+
+PACKAGE_BEFORE_PN += "${PN}-conf-gateway-demo"
+FILES:${PN}-conf-gateway-demo += "${sysconfdir}/agl-demo-control-panel/config.ini.gateway-demo"
+RDEPENDS:${PN}-conf-gateway-demo = "${PN}"
+RPROVIDES:${PN}-conf-gateway-demo = "agl-demo-control-panel.ini"
+ALTERNATIVE:${PN}-conf-gateway-demo = "agl-demo-control-panel.ini"
+ALTERNATIVE_TARGET_${PN}-conf-gateway-demo = "${sysconfdir}/agl-demo-control-panel/config.ini.gateway-demo"
+ALTERNATIVE_PRIORITY_${PN}-conf-gateway-demo = "30"
diff --git a/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured-gateway.bb b/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured-gateway.bb
new file mode 100644
index 00000000..19575a8e
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured-gateway.bb
@@ -0,0 +1,11 @@
+require agl-ivi-demo-control-panel.bb
+
+SUMMARY = "AGL gateway demo control panel image"
+
+IMAGE_FEATURES += "kuksa-val-databroker"
+
+IMAGE_INSTALL += " \
+ agl-demo-control-panel-conf-gateway-demo \
+ vss-agl-control-panel \
+ kuksa-dbc-feeder-conf-control-panel \
+"
diff --git a/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured.bb b/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured.bb
new file mode 100644
index 00000000..1107b9c7
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured.bb
@@ -0,0 +1,7 @@
+require agl-ivi-demo-control-panel.bb
+
+SUMMARY = "AGL full demo control panel image"
+
+IMAGE_INSTALL += " \
+ agl-demo-control-panel-conf-demo \
+"
diff --git a/recipes-platform/images/agl-ivi-demo-control-panel.bb b/recipes-platform/images/agl-ivi-demo-control-panel.bb
index 21785cae..7524ada5 100644
--- a/recipes-platform/images/agl-ivi-demo-control-panel.bb
+++ b/recipes-platform/images/agl-ivi-demo-control-panel.bb
@@ -2,6 +2,8 @@ require recipes-platform/images/agl-image-weston.bb
SUMMARY = "AGL demo control panel image"
+require agl-demo-features.inc
+
IMAGE_FEATURES += "splash package-management ssh-server-openssh"
# NOTE: The client key and certificate in kuksa-certificates-agl-client