From aeb726df2fb7e0a3510242337c79994592ed1523 Mon Sep 17 00:00:00 2001 From: Patrick Williams Date: Thu, 1 Jun 2017 19:00:43 -0500 Subject: 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 --- scripts/writefru.mako.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'scripts') 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 }}, -- cgit v1.2.1