summaryrefslogtreecommitdiff
path: root/meta-ibs/meta-common/recipes-ibs
diff options
context:
space:
mode:
Diffstat (limited to 'meta-ibs/meta-common/recipes-ibs')
-rw-r--r--meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog.bb2
-rw-r--r--meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog/set-asset-tag32
-rw-r--r--meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog/virtual-asset-tag13
3 files changed, 41 insertions, 6 deletions
diff --git a/meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog.bb b/meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog.bb
index 330508956b..0a45caea9a 100644
--- a/meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog.bb
+++ b/meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog.bb
@@ -21,11 +21,13 @@ SRC_URI += "file://firmware-watchdog \
file://logrotate \
file://post-install \
file://post-upgrade \
+ file://set-asset-tag \
file://virtual-asset-tag \
"
do_install:append(){
install -d ${D}${bindir}
+ install -m 0755 ${WORKDIR}/set-asset-tag ${D}${bindir}
install -m 0755 ${WORKDIR}/virtual-asset-tag ${D}${bindir}
install -d ${D}${sbindir}
diff --git a/meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog/set-asset-tag b/meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog/set-asset-tag
new file mode 100644
index 0000000000..7e7d96d130
--- /dev/null
+++ b/meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog/set-asset-tag
@@ -0,0 +1,32 @@
+#!/bin/bash
+#
+# Set AssetTag:
+# ============
+#
+
+model="CP2.*"
+interface=xyz.openbmc_project.FruDevice
+asset_tag_var=PRODUCT_ASSET_TAG
+
+tag="${1}"
+
+if [ "x${tag}" = "x" ] ; then
+ tag="...................."
+fi
+
+# exactly 20 chars:
+# ----------------
+asset_tag=$(printf "'%*s'" 20 "${tag}")
+asset_tag=$(echo "${asset_tag}" | sed 's, ,\.,g')
+
+run_cmd() {
+ local cmd="${*}"
+ eval $cmd
+}
+
+get_model_path() {
+ local path=$(/usr/bin/busctl tree ${interface} | grep "/FruDevice/${model}" | sed 's,^[ \t`-]*,,' | sed 's,[ \t]*$,,')
+ echo "${path}"
+}
+
+run_cmd /usr/bin/busctl set-property ${interface} $(get_model_path) ${interface} ${asset_tag_var} s "${asset_tag}"
diff --git a/meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog/virtual-asset-tag b/meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog/virtual-asset-tag
index 3df85785ce..a911e551c1 100644
--- a/meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog/virtual-asset-tag
+++ b/meta-ibs/meta-common/recipes-ibs/firmware-watchdog/firmware-watchdog/virtual-asset-tag
@@ -8,10 +8,11 @@ spi_flash_model="mx25l25635e"
interface=xyz.openbmc_project.FruDevice
asset_tag_var=PRODUCT_ASSET_TAG
-# no more than 20 chars:
-# ---------------------
-asset_tag_vm='"Virtual BMC"'
-asset_tag_hw='"BMC"'
+# exactly 20 chars:
+# ----------------
+asset_tag_vm=$(printf "'%*s'" 20 ".........Virtual.BMC")
+asset_tag_hw=$(printf "'%*s'" 20 ".................BMC")
+
run_cmd() {
local cmd="${*}";
@@ -29,9 +30,9 @@ get_asset_tag() {
}
if `dmesg | grep -q "aspeed-smc 1e620000.spi: ${spi_flash_model}"` ; then
- run_cmd /usr/bin/busctl set-property ${interface} $(get_model_path) ${interface} ${asset_tag_var} s ${asset_tag_vm}
+ run_cmd /usr/bin/busctl set-property ${interface} $(get_model_path) ${interface} ${asset_tag_var} s "${asset_tag_vm}"
else
if [ "$(get_asset_tag)" = "...................." ] ; then
- run_cmd /usr/bin/busctl set-property ${interface} $(get_model_path) ${interface} ${asset_tag_var} s ${asset_tag_hw}
+ run_cmd /usr/bin/busctl set-property ${interface} $(get_model_path) ${interface} ${asset_tag_var} s "${asset_tag_hw}"
fi
fi