summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf
diff options
context:
space:
mode:
authorCamVan Nguyen <ctnguyen@us.ibm.com>2012-09-07 15:12:47 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2012-09-16 15:31:14 -0500
commite5e78bda78b89fcaa8b601084a06d3e566465af3 (patch)
tree53ff796aac0244711daf9046f60b02688911ac1c /src/usr/hwpf
parent2f50c376a718ea6542b42e029a6735f719a8f407 (diff)
downloadtalos-hostboot-e5e78bda78b89fcaa8b601084a06d3e566465af3.tar.gz
talos-hostboot-e5e78bda78b89fcaa8b601084a06d3e566465af3.zip
Optimization - do PutScom vs PutScomUnderMask if the combined bit mask
enables all 64 bits Change-Id: I6d679b3e240728cee1d42f5534c3d9815272d5e1 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/1709 Reviewed-by: MIKE J. JONES <mjjones@us.ibm.com> Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com> Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf')
-rw-r--r--src/usr/hwpf/hwp/fapiHwpExecInitFile.C49
-rwxr-xr-xsrc/usr/hwpf/hwp/initfiles/sample.initfile1
-rw-r--r--src/usr/hwpf/test/hwpftest.H48
3 files changed, 50 insertions, 48 deletions
diff --git a/src/usr/hwpf/hwp/fapiHwpExecInitFile.C b/src/usr/hwpf/hwp/fapiHwpExecInitFile.C
index 6657c87ee..3c13ca295 100644
--- a/src/usr/hwpf/hwp/fapiHwpExecInitFile.C
+++ b/src/usr/hwpf/hwp/fapiHwpExecInitFile.C
@@ -1,26 +1,25 @@
-/* IBM_PROLOG_BEGIN_TAG
- * This is an automatically generated prolog.
- *
- * $Source: src/usr/hwpf/hwp/fapiHwpExecInitFile.C $
- *
- * IBM CONFIDENTIAL
- *
- * COPYRIGHT International Business Machines Corp. 2011-2012
- *
- * p1
- *
- * Object Code Only (OCO) source materials
- * Licensed Internal Code Source Materials
- * IBM HostBoot Licensed Internal Code
- *
- * The source code for this program is not published or other-
- * wise divested of its trade secrets, irrespective of what has
- * been deposited with the U.S. Copyright Office.
- *
- * Origin: 30
- *
- * IBM_PROLOG_END_TAG
- */
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/usr/hwpf/hwp/fapiHwpExecInitFile.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2011,2012 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
/**
* @file fapiHwpExecInitFile.C
*
@@ -59,6 +58,8 @@
* rpn sequence byte count
* camvanng 06/15/2012 Ability to do bitwise OR and AND operations
* camvanng 06/27/2012 Fix bug in targetId
+ * camvanng 09/07/2012 Optimization - do PutScom vs PutScomUnderMask
+ * if the combined bit mask enables all 64 bits
*/
#include <fapiHwpExecInitFile.H>
@@ -1540,7 +1541,7 @@ fapi::ReturnCode writeScom(ifData_t & i_ifData,
break;
}
- if (l_mask)
+ if (l_mask && (l_mask != 0xFFFFFFFFFFFFFFFFull))
{
//Perform a PutScomUnderMask operation on the target
diff --git a/src/usr/hwpf/hwp/initfiles/sample.initfile b/src/usr/hwpf/hwp/initfiles/sample.initfile
index b9bac67e9..8bf99a087 100755
--- a/src/usr/hwpf/hwp/initfiles/sample.initfile
+++ b/src/usr/hwpf/hwp/initfiles/sample.initfile
@@ -145,6 +145,7 @@ scom 0x0000000013013283 {
12 , 0b1 ;
13 , 0x1 ;
14:59, 0x00c190010480 ;
+ 60:63, 0b1101 ;
}
#--******************************************************************************
diff --git a/src/usr/hwpf/test/hwpftest.H b/src/usr/hwpf/test/hwpftest.H
index 25e749f70..bfbc4636f 100644
--- a/src/usr/hwpf/test/hwpftest.H
+++ b/src/usr/hwpf/test/hwpftest.H
@@ -1,26 +1,25 @@
-/* IBM_PROLOG_BEGIN_TAG
- * This is an automatically generated prolog.
- *
- * $Source: src/usr/hwpf/test/hwpftest.H $
- *
- * IBM CONFIDENTIAL
- *
- * COPYRIGHT International Business Machines Corp. 2011-2012
- *
- * p1
- *
- * Object Code Only (OCO) source materials
- * Licensed Internal Code Source Materials
- * IBM HostBoot Licensed Internal Code
- *
- * The source code for this program is not published or other-
- * wise divested of its trade secrets, irrespective of what has
- * been deposited with the U.S. Copyright Office.
- *
- * Origin: 30
- *
- * IBM_PROLOG_END_TAG
- */
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/usr/hwpf/test/hwpftest.H $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2011,2012 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
#ifndef __HWPFTEST_H
#define __HWPFTEST_H
@@ -302,7 +301,8 @@ public:
{0x0000000013013283, 0, 0x3c90000000000000 |
(0x8000000000000000 >> 0x0c) |
(0x8000000000000000 >> 0x0d) |
- (0x0306400412000000 >> 0x0e)},
+ (0x0306400412000000 >> 0x0e) |
+ 0x000000000000000D},
{0x0000000013013284, 0, 0x3c90000000000000},
{0x0000000013013285, 0, (0x8000000000000000 >> 0x0f) |
(0x8000000000000000 >> 0x10) |
OpenPOWER on IntegriCloud