summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorPatrick Williams <patrick@stwcx.xyz>2017-06-01 19:00:43 -0500
committerPatrick Williams <patrick@stwcx.xyz>2017-06-02 15:13:42 +0000
commitaeb726df2fb7e0a3510242337c79994592ed1523 (patch)
tree2229e8343191c2c1d80159198b5d1105e83fd3cf /scripts
parent5098b03916fd7a90605b6e3774ee536ef9108a94 (diff)
downloadipmi-fru-parser-aeb726df2fb7e0a3510242337c79994592ed1523.tar.gz
ipmi-fru-parser-aeb726df2fb7e0a3510242337c79994592ed1523.zip
fru_gen: reduce map in generated data
Eliminate one level of the generated "frus" map by creating a structure for the lowest-level member. This should reduce the impact of a gcc bug that consumes excessive memory when compiling the generated map. Also removed the runtime calculation of the 'delimiter' character and instead generated it in the fru_gen python script. Resolves openbmc/openbmc#1441. Resolves openbmc/openbmc#1166. Change-Id: Iafe049d034354d58b68d357b4f49fd5e21b2c8c7 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/writefru.mako.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/scripts/writefru.mako.cpp b/scripts/writefru.mako.cpp
index 6180e13..82941a4 100644
--- a/scripts/writefru.mako.cpp
+++ b/scripts/writefru.mako.cpp
@@ -14,9 +14,16 @@ extern const FruMap frus = {
{"${interface}",{
% for dbus_property,property_value in properties.items():
{"${dbus_property}",{
- % for name,value in property_value.items():
- {"${name}","${value}"},
- % endfor
+ "${property_value.get("IPMIFruSection", "")}",
+ "${property_value.get("IPMIFruProperty", "")}", \
+<%
+ delimiter = property_value.get("IPMIFruValueDelimiter")
+ if not delimiter:
+ delimiter = ""
+ else:
+ delimiter = '\\' + hex(delimiter)[1:]
+%>
+ "${delimiter}"
}},
% endfor
}},
OpenPOWER on IntegriCloud