summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp/perv/p9_sbe_hreset.C
diff options
context:
space:
mode:
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/perv/p9_sbe_hreset.C')
-rw-r--r--src/import/chips/p9/procedures/hwp/perv/p9_sbe_hreset.C21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/import/chips/p9/procedures/hwp/perv/p9_sbe_hreset.C b/src/import/chips/p9/procedures/hwp/perv/p9_sbe_hreset.C
index bc32d2451..ea75e91ab 100644
--- a/src/import/chips/p9/procedures/hwp/perv/p9_sbe_hreset.C
+++ b/src/import/chips/p9/procedures/hwp/perv/p9_sbe_hreset.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2017 */
+/* Contributors Listed Below - COPYRIGHT 2017,2018 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -72,14 +72,18 @@ fapi2::ReturnCode p9_sbe_i2c_bit_rate_divisor_setting(
FAPI_TRY(fapi2::putScom(i_target_chip, PU_MODE_REGISTER_B, l_data64));
FAPI_INF("Writing I2C bit rate divisor into mailbox_reg_2");
+#ifndef __HOSTBOOT_RUNTIME
if (i_masterProc)
+#endif
{
FAPI_TRY(fapi2::getScom(i_target_chip, PERV_SCRATCH_REGISTER_2_SCOM, l_data64));
l_data64.insertFromRight< 0, 16 >(l_mb_bit_rate_divisor);
FAPI_INF("p9_sbe_i2c_bit_rate_divisor_setting - Master proc Scratch2 0x%.16llX", l_data64);
FAPI_TRY(fapi2::putScom(i_target_chip, PERV_SCRATCH_REGISTER_2_SCOM, l_data64));
}
+
+#ifndef __HOSTBOOT_RUNTIME
else
{
FAPI_TRY(fapi2::getCfamRegister(i_target_chip, PERV_SCRATCH_REGISTER_2_FSI, l_data32));
@@ -88,6 +92,8 @@ fapi2::ReturnCode p9_sbe_i2c_bit_rate_divisor_setting(
FAPI_TRY(fapi2::putCfamRegister(i_target_chip, PERV_SCRATCH_REGISTER_2_FSI, l_data32));
}
+#endif
+
fapi_try_exit:
FAPI_INF("Exiting p9_sbe_i2c_bit_rate_divisor_setting...");
return fapi2::current_err;
@@ -134,7 +140,10 @@ fapi2::ReturnCode p9_sbe_hreset(
}
// Must do SCOM access for master; CFAM access for slaves
+#ifndef __HOSTBOOT_RUNTIME
+
if (l_masterProc)
+#endif
{
// Clear Self Boot message reg
l_data64.flush<0>();
@@ -153,7 +162,8 @@ fapi2::ReturnCode p9_sbe_hreset(
FAPI_TRY(fapi2::getScom(i_target, PERV_SB_CS_SCOM, l_data64),
"Error from getScom to PERV_SB_CS_SCOM");
- FAPI_TRY(l_data64.clearBit(l_startVectorBit));
+ FAPI_TRY(l_data64.clearBit(PERV_SB_CS_START_RESTART_VECTOR0));
+ FAPI_TRY(l_data64.clearBit(PERV_SB_CS_START_RESTART_VECTOR1));
FAPI_TRY(fapi2::putScom(i_target, PERV_SB_CS_SCOM, l_data64),
"Error from putScom to PERV_SB_CS_SCOM (1)");
@@ -165,6 +175,8 @@ fapi2::ReturnCode p9_sbe_hreset(
FAPI_TRY(fapi2::putScom(i_target, PERV_SB_CS_SCOM, l_data64),
"Error from putScom to PERV_SB_CS_SCOM (3)");
}
+
+#ifndef __HOSTBOOT_RUNTIME
else
{
// Clear Self Boot message reg
@@ -182,7 +194,8 @@ fapi2::ReturnCode p9_sbe_hreset(
// HRESET
FAPI_TRY(fapi2::getCfamRegister(i_target, PERV_SB_CS_FSI, l_data32),
"Error from getCfamRegister to PERV_SB_CS_FSI");
- FAPI_TRY(l_data32.clearBit(l_startVectorBit));
+ FAPI_TRY(l_data32.clearBit(PERV_SB_CS_START_RESTART_VECTOR0));
+ FAPI_TRY(l_data32.clearBit(PERV_SB_CS_START_RESTART_VECTOR1));
FAPI_TRY(fapi2::putCfamRegister(i_target, PERV_SB_CS_FSI, l_data32),
"Error from putCfamRegister to PERV_SB_CS_FSI (1)");
@@ -195,6 +208,8 @@ fapi2::ReturnCode p9_sbe_hreset(
"Error from putCfamRegister to PERV_SB_CS_FSI (3)");
}
+#endif
+
fapi_try_exit:
FAPI_INF("p9_sbe_hreset: Exiting ...");
return fapi2::current_err;
OpenPOWER on IntegriCloud