path: root/control/templates
diff options
authorMatthew Barth <>2019-02-18 12:23:38 -0600
committerMatthew Barth <>2019-02-18 13:01:02 -0600
commit59096e50db52d85d2252bb5c7de054bd3c8156c5 (patch)
tree5773a3401c7f9f6eb1a698594ce3c65964565d21 /control/templates
parent70b2e7da829b9b11f4fa4d9141383a5dbc63e6e1 (diff)
Generate zone property persist configs
Each zone object's hosted interfaces' properties can be configured to be persisted or not at compile time. Those properties configured to be persisted are set to be persisted after the initial value is set. When this value doesnt change on a system, there's no need to persist it since the initial value is compiled into the fan control application per zone. Once this value is changed and therefore persisted, upon a application restart, initially the value would be what's compiled in until its configured again to be persisted and then restored. Tested: Current property always set to what's persisted between restarts Nothing persisted when Current property doesnt change from default Change-Id: I93109730796af2058ecab0e78e612b7919886b33 Signed-off-by: Matthew Barth <>
Diffstat (limited to 'control/templates')
1 files changed, 7 insertions, 4 deletions
diff --git a/control/templates/fan_zone_defs.mako.cpp b/control/templates/fan_zone_defs.mako.cpp
index cb46986..e05d1fc 100644
--- a/control/templates/fan_zone_defs.mako.cpp
+++ b/control/templates/fan_zone_defs.mako.cpp
@@ -54,13 +54,15 @@ const std::vector<ZoneGroup> Manager::_zoneLayouts
%for p in i['props']:
- &Zone::${p['name']},
+ "${i['name']}",
+ "${p['name']}",
+ &Zone::${p['func']},
%if "vector" in p['type'] or "map" in p['type']:
- %for i, v in enumerate(p['values']):
- %if (i+1) != len(p['values']):
+ %for j, v in enumerate(p['values']):
+ %if (j+1) != len(p['values']):
@@ -69,7 +71,8 @@ const std::vector<ZoneGroup> Manager::_zoneLayouts
%if "vector" in p['type'] or "map" in p['type']:
- )
+ ),
+ ${p['persist']}
OpenPOWER on IntegriCloud