Add RAS data support for 'callout_self' and 'callout_unit'
With this change, 'callout_self' and 'callout_unit' actions will add a
callout with location code into the PEL.
Change-Id: I975f2059a71f7b529a40fae03273cc3c387c4cef
Signed-off-by: Zane Shelley <zshelle@us.ibm.com>
diff --git a/analyzer/ras-data/ras-data-parser.cpp b/analyzer/ras-data/ras-data-parser.cpp
index 6386b6b..78ec9d2 100644
--- a/analyzer/ras-data/ras-data-parser.cpp
+++ b/analyzer/ras-data/ras-data-parser.cpp
@@ -146,9 +146,10 @@
auto priority = a.at("priority").get<std::string>();
auto guard = a.at("guard").get<bool>();
- // TODO
- trace::inf("callout_self: priority=%s guard=%c", priority.c_str(),
- guard ? 'T' : 'F');
+ std::string path{}; // Must be empty to callout the chip.
+
+ o_list->push(std::make_shared<HardwareCalloutResolution>(
+ path, getPriority(priority), guard));
}
else if ("callout_unit" == type)
{
@@ -156,9 +157,10 @@
auto priority = a.at("priority").get<std::string>();
auto guard = a.at("guard").get<bool>();
- // TODO
- trace::inf("callout_unit: name=%s priority=%s guard=%c",
- name.c_str(), priority.c_str(), guard ? 'T' : 'F');
+ auto path = i_data.at("units").at(name).get<std::string>();
+
+ o_list->push(std::make_shared<HardwareCalloutResolution>(
+ path, getPriority(priority), guard));
}
else if ("callout_connected" == type)
{