meta-facebook: ventura2: add modbus register dump
Add a dreport plugin for the ventura2 platform that collects the
registers of every Modbus device the platform allows. The script runs
`modbus-tool dump --all` and stores the output in `modbus.json`, which
becomes part of the dump tarball generated by phosphor-debug-collector.
Tested:
```
o "/xyz/openbmc_project/dump/bmc/entry/6"
obmcdump_6_1789172297.tar.zst
obmcdump_6_1789172297/
obmcdump_6_1789172297/ventura2-rmc-cpld-dump.log
obmcdump_6_1789172297/modbus.json
obmcdump_6_1789172297/trace
obmcdump_6_1789172297/softIRQs.log
obmcdump_6_1789172297/perf.log
obmcdump_6_1789172297/mctp-tree.log
obmcdump_6_1789172297/mctp-route.log
obmcdump_6_1789172297/mctp-neigh.log
obmcdump_6_1789172297/mctp-links.log
obmcdump_6_1789172297/mctp-addresses.log
obmcdump_6_1789172297/procfd.log
obmcdump_6_1789172297/host0-state.log
obmcdump_6_1789172297/host-state.log
obmcdump_6_1789172297/hostnamectl.log
obmcdump_6_1789172297/chassis0-state.log
obmcdump_6_1789172297/chassis-state.log
obmcdump_6_1789172297/bmc-state.log
obmcdump_6_1789172297/uptime.log
obmcdump_6_1789172297/hwmon.log
obmcdump_6_1789172297/dbusstats.log
obmcdump_6_1789172297/dbus-list.log
obmcdump_6_1789172297/cpuinfo
obmcdump_6_1789172297/fw-printenv.log
obmcdump_6_1789172297/timedate.log
obmcdump_6_1789172297/network.log
obmcdump_6_1789172297/mountinfo.log
obmcdump_6_1789172297/kernalcmdline.log
obmcdump_6_1789172297/settings.log
obmcdump_6_1789172297/ledgroups.log
obmcdump_6_1789172297/inventory.log
obmcdump_6_1789172297/fan_monitor_dump.json
obmcdump_6_1789172297/em-system.json
obmcdump_6_1789172297/elogall.log
obmcdump_6_1789172297/dmesg.log
obmcdump_6_1789172297/os-release
obmcdump_6_1789172297/top.log
obmcdump_6_1789172297/meminfo
obmcdump_6_1789172297/failed-services.log
obmcdump_6_1789172297/dreport.log
obmcdump_6_1789172297/disk-usage.log
obmcdump_6_1789172297/summary.log
modbus.json
{
"Metadata": {
"SchemaVersion": "1.0.0",
"Tool": "modbus-tool",
```
Change-Id: I113cc973da981790ebc11ed84d57e8bacb3d1b7e
Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>
diff --git a/meta-facebook/meta-ventura2/recipes-phosphor/dump/phosphor-debug-collector/ventura2-modbus-dump b/meta-facebook/meta-ventura2/recipes-phosphor/dump/phosphor-debug-collector/ventura2-modbus-dump
new file mode 100644
index 0000000..a1b62dc
--- /dev/null
+++ b/meta-facebook/meta-ventura2/recipes-phosphor/dump/phosphor-debug-collector/ventura2-modbus-dump
@@ -0,0 +1,17 @@
+#!/bin/bash
+#
+# config: 2 99
+# @brief: Collect the registers of every Modbus device on Ventura2.
+#
+
+# The sourced `functions` file is not
+# available during shellcheck linting
+#
+# shellcheck disable=SC1091
+. "$DREPORT_INCLUDE/functions"
+
+cmd="modbus-tool dump --all --yes"
+file_name="modbus.json"
+desc="'$cmd' output"
+
+add_cmd_output "$cmd" "$file_name" "$desc"
diff --git a/meta-facebook/meta-ventura2/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend b/meta-facebook/meta-ventura2/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend
index 5497bd7..c6707b9 100644
--- a/meta-facebook/meta-ventura2/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend
+++ b/meta-facebook/meta-ventura2/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend
@@ -1,7 +1,9 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
SRC_URI:append = " file://ventura2-rmc-cpld-dump"
+SRC_URI:append = " file://ventura2-modbus-dump"
do_install:append() {
install -m 0755 ${UNPACKDIR}/ventura2-rmc-cpld-dump ${S}/tools/dreport.d/plugins.d/
+ install -m 0755 ${UNPACKDIR}/ventura2-modbus-dump ${S}/tools/dreport.d/plugins.d/
}