summaryrefslogtreecommitdiffstats
path: root/src/usr/targeting/xmltohb
diff options
context:
space:
mode:
authorMatt Derksen <v2cibmd@us.ibm.com>2016-07-15 15:46:19 -0500
committerStephen Cprek <smcprek@us.ibm.com>2016-07-18 15:32:41 -0500
commit36aad266d20de46dffc81afbc991afeb580a4f99 (patch)
treea08dd0d3e5fe363c0200095f67b0a1c06215985c /src/usr/targeting/xmltohb
parentbbfd420eb2ca567925b97816cfc7eb79a8cbcdde (diff)
downloadblackbird-hostboot-36aad266d20de46dffc81afbc991afeb580a4f99.tar.gz
blackbird-hostboot-36aad266d20de46dffc81afbc991afeb580a4f99.zip
Fix temporary attribute script
1) allow enums without a value (like C++) 2) don't allow enum type if in an array (just use generic array type) 3) change int8 to int8_t Change-Id: Ic9b4d033dcbf2f3fe4a74817fbec0233138aa9a3 RTC:157764 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/27111 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/targeting/xmltohb')
-rwxr-xr-xsrc/usr/targeting/xmltohb/updatetempsxml.pl10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/usr/targeting/xmltohb/updatetempsxml.pl b/src/usr/targeting/xmltohb/updatetempsxml.pl
index 0777e489c..b28b26d22 100755
--- a/src/usr/targeting/xmltohb/updatetempsxml.pl
+++ b/src/usr/targeting/xmltohb/updatetempsxml.pl
@@ -273,6 +273,7 @@ foreach my $TempAttr ( @{$fwDfltsXml->{attribute}} )
my $valueType = $fapi_attr->{valueType}->[0];
$valueType =~ s/(uint\d*)/$1_t/ if($valueType =~ /^uint\d*/);
+ $valueType =~ s/(int\d+)/$1_t/ if ($valueType =~ /^int\d+$/);
my $fwDefault = "";
if (exists $TempAttr->{default})
@@ -295,7 +296,7 @@ foreach my $TempAttr ( @{$fwDfltsXml->{attribute}} )
# attribute associated with temp FW default uses enum
my $enum_id = "";
my $enumDefault = "";
- if(exists $fapi_attr->{enum})
+ if(exists $fapi_attr->{enum} && (!exists $fapi_attr->{array}))
{
$enum_id = $generic_id;
push @NewAttr, [ "<enumerationType>\n" ];
@@ -305,11 +306,18 @@ foreach my $TempAttr ( @{$fwDfltsXml->{attribute}} )
push @NewAttr, [ " </description>\n" ];
my @enum_defs = split(',',$fapi_attr->{enum}->[0]);
+ my $previous_value = -1;
for my $i ( 0 .. $#enum_defs )
{
$enum_defs[$i] =~ /^\s*(.*)\s*=\s*(.*)\s*/;
my $enumName = $1;
my $enumValue = $2;
+ unless ($enumValue) # non-specified enum values (first enum = 0)
+ {
+ ($enumName) = $enum_defs[$i] =~ m/^\s*(.*)\s*/;
+ $enumValue = 1 + $previous_value;
+ }
+ $previous_value = $enumValue;
$enumName =~ s/ //;
$enumDefault = $enumName if($fwDefault eq $enumValue);
push @NewAttr, [ " <enumerator>\n" ];
OpenPOWER on IntegriCloud