summaryrefslogtreecommitdiffstats
path: root/src/usr/pnor
diff options
context:
space:
mode:
authorDean Sanner <dsanner@us.ibm.com>2012-06-15 11:57:25 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2012-06-18 13:53:02 -0500
commit319e5a9fa363aca6368445ce919a53202e70849b (patch)
treeb814dc3a2721448ec52186378e2f87c6a9b8d785 /src/usr/pnor
parent9f9e9b9011075d3bd90839a0ead591d9ee1b2564 (diff)
downloadtalos-hostboot-319e5a9fa363aca6368445ce919a53202e70849b.tar.gz
talos-hostboot-319e5a9fa363aca6368445ce919a53202e70849b.zip
VPO Performance fixes
Temporarily remove nanosleep calls in PNOR, FSI, Scom device drivers to enhance VPO performance. Cuts ddr_phy_reset from 17 hours to 17 min Also fixed race condition in hb-istep Change-Id: I0a60275066a9e14b564d0294c083eec8647b2ff7 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/1206 Tested-by: Jenkins Server Reviewed-by: ADAM R. MUHLE <armuhle@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Mark W. Wenning <wenning@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/pnor')
-rw-r--r--src/usr/pnor/pnordd.C54
1 files changed, 29 insertions, 25 deletions
diff --git a/src/usr/pnor/pnordd.C b/src/usr/pnor/pnordd.C
index 5f53a9c84..664efb2ca 100644
--- a/src/usr/pnor/pnordd.C
+++ b/src/usr/pnor/pnordd.C
@@ -1,25 +1,26 @@
-// IBM_PROLOG_BEGIN_TAG
-// This is an automatically generated prolog.
-//
-// $Source: src/usr/pnor/pnordd.C $
-//
-// IBM CONFIDENTIAL
-//
-// COPYRIGHT International Business Machines Corp. 2011
-//
-// 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
+/* IBM_PROLOG_BEGIN_TAG
+ * This is an automatically generated prolog.
+ *
+ * $Source: src/usr/pnor/pnordd.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
+ */
/**
* @file pnordd.C
*
@@ -673,7 +674,8 @@ errlHndl_t PnorDD::pollSfcOpComplete(uint64_t i_pollTime)
// want to start out incrementing by small numbers then get bigger
// to avoid a really tight loop in an error case so we'll increase
// the wait each time through
- nanosleep( 0, SFC_POLL_INCR_NS*(++loop) );
+ //TODO tmp remove for VPO, need better polling strategy -- RTC43738
+ //nanosleep( 0, SFC_POLL_INCR_NS*(++loop) );
poll_time += SFC_POLL_INCR_NS*loop;
}
if( l_err ) { break; }
@@ -1042,7 +1044,8 @@ errlHndl_t PnorDD::readLPC(uint32_t i_addr,
// want to start out incrementing by small numbers then get bigger
// to avoid a really tight loop in an error case so we'll increase
// the wait each time through
- nanosleep( 0, ECCB_POLL_INCR_NS*(++loop) );
+ //TODO tmp remove for VPO, need better polling strategy -- RTC43738
+ //nanosleep( 0, ECCB_POLL_INCR_NS*(++loop) );
poll_time += ECCB_POLL_INCR_NS*loop;
}
if( l_err ) { break; }
@@ -1151,7 +1154,8 @@ errlHndl_t PnorDD::writeLPC(uint32_t i_addr,
// want to start out incrementing by small numbers then get bigger
// to avoid a really tight loop in an error case so we'll increase
// the wait each time through
- nanosleep( 0, ECCB_POLL_INCR_NS*(++loop) );
+ //TODO tmp remove for VPO, need better polling strategy -- RTC43738
+ //nanosleep( 0, ECCB_POLL_INCR_NS*(++loop) );
poll_time += ECCB_POLL_INCR_NS*loop;
}
if( l_err ) { break; }
OpenPOWER on IntegriCloud