diff options
author | Richard J. Knight <rjknight@us.ibm.com> | 2016-09-07 15:04:45 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2016-09-25 18:54:21 -0400 |
commit | cf46efa6fe5872c6cdec227b48899aa6aec8393a (patch) | |
tree | e5686d9606c633f930b2eb496b86eaa73d644ffb /src/usr/fapi2/platCreateHwpErrParser.pl | |
parent | 6e2400171de03911d1ab3e79f576b8b1b7949511 (diff) | |
download | talos-hostboot-cf46efa6fe5872c6cdec227b48899aa6aec8393a.tar.gz talos-hostboot-cf46efa6fe5872c6cdec227b48899aa6aec8393a.zip |
Update errorlog parser to handle platScomFail tag
-Added code to parse user data for the <platScomFail/> tag
outputs failed scom address and PIB RC values from ffdc
data
Change-Id: I0eec4a22d08c31c31b1b3c00b3e6eb8b08b965b0
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/29341
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Reviewed-by: Deepak Kodihalli <dkodihal@in.ibm.com>
Reviewed-by: Matt Derksen <v2cibmd@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/fapi2/platCreateHwpErrParser.pl')
-rwxr-xr-x | src/usr/fapi2/platCreateHwpErrParser.pl | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/usr/fapi2/platCreateHwpErrParser.pl b/src/usr/fapi2/platCreateHwpErrParser.pl index 62ea13a5b..6271080fe 100755 --- a/src/usr/fapi2/platCreateHwpErrParser.pl +++ b/src/usr/fapi2/platCreateHwpErrParser.pl @@ -211,6 +211,30 @@ foreach my $argnum (1 .. $#ARGV) #-------------------------------------------------------------------------- foreach my $err (@{$errors->{hwpError}}) { + + if ($err->{platScomFail}) + { + my $ffdcName = $err->{rc} . "_address"; + my $ffdcHash128Bit = md5_hex($ffdcName); + my $ffdcHash32Bit = substr($ffdcHash128Bit, 0, 8); + + print TGFILE " case 0x$ffdcHash32Bit:\n"; + print TGFILE " { uint64_t l_Address =\n"; + print TGFILE " be64toh(*(reinterpret_cast<uint64_t*>(l_pBuffer)));\n"; + print TGFILE " i_parser.PrintNumber(\"Failed SCOM address\",\"%#016lX\",l_Address);}\n"; + print TGFILE " break;\n"; + + $ffdcName = $err->{rc} . "_pcb_pib_rc"; + $ffdcHash128Bit = md5_hex($ffdcName); + $ffdcHash32Bit = substr($ffdcHash128Bit, 0, 8); + + print TGFILE " case 0x$ffdcHash32Bit:\n"; + print TGFILE " {uint32_t l_PibRc = be32toh(*(reinterpret_cast<uint32_t *>(l_pBuffer)));\n"; + print TGFILE " i_parser.PrintNumber(\"PIB RC:\",\"%#08lX\",l_PibRc);}\n"; + print TGFILE " break;\n"; + + + } foreach my $ffdc (@{$err->{ffdc}}) { #------------------------------------------------------------------ |