summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/hwpf')
-rw-r--r--src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp.C10
-rw-r--r--src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp_fbc_nohp.C73
-rw-r--r--src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp_fbc_nohp.H13
3 files changed, 71 insertions, 25 deletions
diff --git a/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp.C b/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp.C
index 00c98bf70..cafd82852 100644
--- a/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp.C
+++ b/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp.C
@@ -22,7 +22,7 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: proc_build_smp.C,v 1.19 2014/11/18 17:41:03 jmcgill Exp $
+// $Id: proc_build_smp.C,v 1.20 2015/02/09 22:36:45 jmcgill Exp $
// $Source: /afs/awd/projects/eclipz/KnowledgeBase/.cvsroot/eclipz/chips/p8/working/procedures/ipl/fapi/proc_build_smp.C,v $
//------------------------------------------------------------------------------
// *|
@@ -1452,6 +1452,14 @@ fapi::ReturnCode proc_build_smp(
}
}
+ // set fabric trace configuration registers (non-hotplug)
+ rc = proc_build_smp_set_fbc_nohp_trace(smp);
+ if (!rc.ok())
+ {
+ FAPI_ERR("proc_build_smp: Error from proc_build_smp_set_fbc_nohp_trace");
+ break;
+ }
+
// activate SMP
// set fabric configuration registers (hotplug, switch AB set)
rc = proc_build_smp_set_fbc_ab(smp, i_op);
diff --git a/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp_fbc_nohp.C b/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp_fbc_nohp.C
index 0e13e30cd..c6ed7fbac 100644
--- a/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp_fbc_nohp.C
+++ b/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp_fbc_nohp.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2012,2014 */
+/* Contributors Listed Below - COPYRIGHT 2012,2015 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -22,7 +22,7 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: proc_build_smp_fbc_nohp.C,v 1.6 2014/02/23 21:41:07 jmcgill Exp $
+// $Id: proc_build_smp_fbc_nohp.C,v 1.7 2015/02/09 22:37:59 jmcgill Exp $
// $Source: /afs/awd/projects/eclipz/KnowledgeBase/.cvsroot/eclipz/chips/p8/working/procedures/ipl/fapi/proc_build_smp_fbc_nohp.C,v $
//------------------------------------------------------------------------------
// *|
@@ -854,7 +854,7 @@ fapi::ReturnCode proc_build_smp_set_f_trace(
// NOTE: see comments above function prototype in header
-fapi::ReturnCode proc_build_smp_set_fbc_nohp(
+fapi::ReturnCode proc_build_smp_set_fbc_nohp_trace(
proc_build_smp_system& i_smp)
{
fapi::ReturnCode rc;
@@ -862,7 +862,7 @@ fapi::ReturnCode proc_build_smp_set_fbc_nohp(
std::map<proc_fab_smp_chip_id, proc_build_smp_chip>::iterator p_iter;
// mark function entry
- FAPI_DBG("proc_build_smp_set_fbc_nohp: Start");
+ FAPI_DBG("proc_build_smp_set_fbc_nohp_trace: Start");
// process each chip in SMP, program unit non-hotplug registers
for (n_iter = i_smp.nodes.begin();
@@ -875,24 +875,6 @@ fapi::ReturnCode proc_build_smp_set_fbc_nohp(
{
fapi::Target target = p_iter->second.chip->this_chip;
- // PB Mode register
- rc = proc_build_smp_set_pb_mode(p_iter->second,
- i_smp);
- if (!rc.ok())
- {
- FAPI_ERR("proc_build_smp_set_fbc_nohp: Error from proc_build_smp_set_pb_mode");
- break;
- }
-
- // command scope drop priority registers
- rc = proc_build_smp_set_pacing_rates(p_iter->second,
- i_smp);
- if (!rc.ok())
- {
- FAPI_ERR("proc_build_smp_set_fbc_nohp: Error from proc_build_smp_set_pacing_rates");
- break;
- }
-
// X link trace setup
if (p_iter->second.x_enabled)
{
@@ -925,6 +907,53 @@ fapi::ReturnCode proc_build_smp_set_fbc_nohp(
break;
}
}
+ }
+ }
+ // mark function exit
+ FAPI_DBG("proc_build_smp_set_fbc_nohp_trace: End");
+ return rc;
+}
+
+
+// NOTE: see comments above function prototype in header
+fapi::ReturnCode proc_build_smp_set_fbc_nohp(
+ proc_build_smp_system& i_smp)
+{
+ fapi::ReturnCode rc;
+ std::map<proc_fab_smp_node_id, proc_build_smp_node>::iterator n_iter;
+ std::map<proc_fab_smp_chip_id, proc_build_smp_chip>::iterator p_iter;
+
+ // mark function entry
+ FAPI_DBG("proc_build_smp_set_fbc_nohp: Start");
+
+ // process each chip in SMP, program unit non-hotplug registers
+ for (n_iter = i_smp.nodes.begin();
+ (n_iter != i_smp.nodes.end()) && (rc.ok());
+ n_iter++)
+ {
+ for (p_iter = n_iter->second.chips.begin();
+ (p_iter != n_iter->second.chips.end()) && (rc.ok());
+ p_iter++)
+ {
+ fapi::Target target = p_iter->second.chip->this_chip;
+
+ // PB Mode register
+ rc = proc_build_smp_set_pb_mode(p_iter->second,
+ i_smp);
+ if (!rc.ok())
+ {
+ FAPI_ERR("proc_build_smp_set_fbc_nohp: Error from proc_build_smp_set_pb_mode");
+ break;
+ }
+
+ // command scope drop priority registers
+ rc = proc_build_smp_set_pacing_rates(p_iter->second,
+ i_smp);
+ if (!rc.ok())
+ {
+ FAPI_ERR("proc_build_smp_set_fbc_nohp: Error from proc_build_smp_set_pacing_rates");
+ break;
+ }
}
}
diff --git a/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp_fbc_nohp.H b/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp_fbc_nohp.H
index 45b60bbb6..11b4c8b66 100644
--- a/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp_fbc_nohp.H
+++ b/src/usr/hwpf/hwp/activate_powerbus/proc_build_smp/proc_build_smp_fbc_nohp.H
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2012,2014 */
+/* Contributors Listed Below - COPYRIGHT 2012,2015 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -22,7 +22,7 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: proc_build_smp_fbc_nohp.H,v 1.3 2014/02/23 21:41:07 jmcgill Exp $
+// $Id: proc_build_smp_fbc_nohp.H,v 1.4 2015/02/09 22:37:59 jmcgill Exp $
// $Source: /afs/awd/projects/eclipz/KnowledgeBase/.cvsroot/eclipz/chips/p8/working/procedures/ipl/fapi/proc_build_smp_fbc_nohp.H,v $
//------------------------------------------------------------------------------
// *|
@@ -55,6 +55,15 @@ extern "C"
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
+// function: program fabric trace configuration registers (non-hotplug)
+// parameters: i_smp => structure encapsulating SMP topology
+// returns: FAPI_RC_SUCCESS if register programming is successful,
+// else error
+//------------------------------------------------------------------------------
+fapi::ReturnCode proc_build_smp_set_fbc_nohp_trace(
+ proc_build_smp_system& i_smp);
+
+//------------------------------------------------------------------------------
// function: program fabric configuration registers (non-hotplug)
// parameters: i_smp => structure encapsulating SMP topology
// returns: FAPI_RC_SUCCESS if register programming is successful,
OpenPOWER on IntegriCloud