summaryrefslogtreecommitdiffstats
path: root/src/tools/scripts
diff options
context:
space:
mode:
authorSantosh Puranik <santosh.puranik@in.ibm.com>2016-11-28 00:31:55 -0600
committerspashabk-in <shakeebbk@in.ibm.com>2016-12-20 05:18:47 -0600
commita9ccee0a1c4b876f1e990f601ae59f27740611e3 (patch)
tree8594185d439fe5cc066c29343876347740f05711 /src/tools/scripts
parent361016907f34a41073e6834b9d40bf7f101157d1 (diff)
downloadtalos-sbe-a9ccee0a1c4b876f1e990f601ae59f27740611e3.tar.gz
talos-sbe-a9ccee0a1c4b876f1e990f601ae59f27740611e3.zip
Disable FAPI_TRY for attribute accesses
Change-Id: Ie69e7bb2a91d477077b74391bb434539af03b31b Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/33019 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Shakeeb A. Pasha B K <shakeebbk@in.ibm.com> Reviewed-by: Gregory S. Still <stillgs@us.ibm.com> Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com> Reviewed-by: AMIT J. TENDOLKAR <amit.tendolkar@in.ibm.com>
Diffstat (limited to 'src/tools/scripts')
-rwxr-xr-xsrc/tools/scripts/ppeParseAttributeInfo.pl29
1 files changed, 16 insertions, 13 deletions
diff --git a/src/tools/scripts/ppeParseAttributeInfo.pl b/src/tools/scripts/ppeParseAttributeInfo.pl
index 6e2363d1..d43d4c7c 100755
--- a/src/tools/scripts/ppeParseAttributeInfo.pl
+++ b/src/tools/scripts/ppeParseAttributeInfo.pl
@@ -155,27 +155,30 @@ print ECHFILE "template<int I>\n";
print ECHFILE "struct int2Type {\n";
print ECHFILE "enum { value = I };\n";
print ECHFILE "};\n";
-print ECHFILE "ReturnCode queryChipEcAndName(\n";
+print ECHFILE "class AttributeRC\n";
+print ECHFILE "{\n";
+print ECHFILE " public:\n";
+print ECHFILE " AttributeRC() : value(FAPI2_RC_SUCCESS){}\n";
+print ECHFILE " AttributeRC(uint32_t i_val) : value(i_val){}\n";
+print ECHFILE " operator uint32_t (){return value;}\n";
+print ECHFILE " operator ReturnCode (){return value;}\n";
+print ECHFILE " private:\n";
+print ECHFILE " uint32_t value;\n";
+print ECHFILE "};\n";
+print ECHFILE "void queryChipEcAndName(\n";
print ECHFILE " const Target<fapi2::TARGET_TYPE_PROC_CHIP>& i_target,\n";
print ECHFILE " fapi2::ATTR_NAME_Type& , fapi2::ATTR_EC_Type & );\n\n";
print ECHFILE "template<int T>\n";
-print ECHFILE "ReturnCode queryChipEcFeature(int2Type<T> id,\n";
+print ECHFILE "AttributeRC queryChipEcFeature(int2Type<T> id,\n";
print ECHFILE " const Target<fapi2::TARGET_TYPE_PROC_CHIP>& i_target,\n";
print ECHFILE " uint8_t & o_hasFeature)\n";
print ECHFILE "{\n";
print ECHFILE " fapi2::ATTR_NAME_Type l_chipName;\n";
print ECHFILE " fapi2::ATTR_EC_Type l_chipEc;\n\n";
print ECHFILE " o_hasFeature = 0;\n\n";
-print ECHFILE " ReturnCode l_rc = queryChipEcAndName(i_target, l_chipName, l_chipEc);\n";
-print ECHFILE " if (l_rc)\n";
-print ECHFILE " {\n";
-print ECHFILE " FAPI_ERR(\"queryChipEcFeature: error getting chip name\");\n";
-print ECHFILE " }\n";
-print ECHFILE " else\n";
-print ECHFILE " {\n";
-print ECHFILE " o_hasFeature = hasFeature(int2Type<T>(), l_chipName, l_chipEc);\n";
-print ECHFILE " }\n";
-print ECHFILE " return l_rc;\n";
+print ECHFILE " queryChipEcAndName(i_target, l_chipName, l_chipEc);\n";
+print ECHFILE " o_hasFeature = hasFeature(int2Type<T>(), l_chipName, l_chipEc);\n";
+print ECHFILE " return FAPI2_RC_SUCCESS;\n";
print ECHFILE "}\n\n";
#------------------------------------------------------------------------------
@@ -576,7 +579,7 @@ foreach my $entr (@{$entries->{entry}}) {
# compile failure if a set is attempted
#------------------------------------------------------------------
print AIFILE "#define $attr->{id}_GETMACRO(ID, PTARGET, VAL) \\\n";
- print AIFILE " PLAT_GET_CHIP_EC_FEATURE_OVERRIDE(ID, PTARGET, VAL) ? fapi2::ReturnCode() : \\\n";
+ print AIFILE " PLAT_GET_CHIP_EC_FEATURE_OVERRIDE(ID, PTARGET, VAL) ? fapi2::AttributeRC() : \\\n";
print AIFILE " fapi2::queryChipEcFeature(fapi2::int2Type<ID>(), PTARGET, VAL)\n";
print AIFILE "#define $attr->{id}_SETMACRO(ID, PTARGET, VAL) ";
print AIFILE "CHIP_EC_FEATURE_ATTRIBUTE_NOT_WRITABLE\n";
OpenPOWER on IntegriCloud