summaryrefslogtreecommitdiffstats
path: root/src/usr/initservice
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/initservice')
-rw-r--r--src/usr/initservice/bootconfig/bootconfig_ast2400.C20
-rw-r--r--src/usr/initservice/istepdispatcher/HBconfig7
-rw-r--r--src/usr/initservice/istepdispatcher/splesscommon.C4
-rw-r--r--src/usr/initservice/istepdispatcher/sptask.C2
4 files changed, 25 insertions, 8 deletions
diff --git a/src/usr/initservice/bootconfig/bootconfig_ast2400.C b/src/usr/initservice/bootconfig/bootconfig_ast2400.C
index 438b32e84..d0d1a3e74 100644
--- a/src/usr/initservice/bootconfig/bootconfig_ast2400.C
+++ b/src/usr/initservice/bootconfig/bootconfig_ast2400.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015 */
+/* Contributors Listed Below - COPYRIGHT 2015,2016 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -298,6 +298,7 @@ errlHndl_t AST2400BootConfig::readIstepControl( istepControl_t &o_stepInfo )
errlHndl_t AST2400BootConfig::writeIstepControl( istepControl_t i_istepCtl )
{
errlHndl_t l_err = NULL;
+ size_t l_len = sizeof(uint8_t);
// read istep control from 0x2a
TRACFCOMP( g_bc_trace, "AST2400BootConfig:: Write istep control %x", i_istepCtl.istepControl);
@@ -305,12 +306,21 @@ errlHndl_t AST2400BootConfig::writeIstepControl( istepControl_t i_istepCtl )
do
{
//write status
- l_err = writeSIORegister( ISTEP_STATUS_REG, i_istepCtl.istepStatus);
- if(l_err) break;
+ l_err = deviceOp( DeviceFW::WRITE,
+ TARGETING::MASTER_PROCESSOR_CHIP_TARGET_SENTINEL,
+ &(i_istepCtl.istepStatus),
+ l_len,
+ DEVICE_SIO_ADDRESS(SIO::DONT_CARE, ISTEP_STATUS_REG));
+ if(l_err) { break; }
//write command/control
- l_err = writeSIORegister( ISTEP_HOST_CTL_REG, i_istepCtl.istepControl);
- if(l_err) break;
+ l_err = deviceOp( DeviceFW::WRITE,
+ TARGETING::MASTER_PROCESSOR_CHIP_TARGET_SENTINEL,
+ &(i_istepCtl.istepControl),
+ l_len,
+ DEVICE_SIO_ADDRESS(SIO::DONT_CARE,
+ ISTEP_HOST_CTL_REG));
+ if(l_err) { break; }
}
while(0);
diff --git a/src/usr/initservice/istepdispatcher/HBconfig b/src/usr/initservice/istepdispatcher/HBconfig
index c012bd17e..531d919dc 100644
--- a/src/usr/initservice/istepdispatcher/HBconfig
+++ b/src/usr/initservice/istepdispatcher/HBconfig
@@ -7,3 +7,10 @@ config RECONFIG_LOOP_TESTS_ENABLE
default y
help
Include functions for enabling reconfig loop testing.
+config SIO_ISTEP_CONTROL
+ default n
+ depends on BMC_AST2400
+ help
+ Allows istep control via SIO scratch registers.
+ Typical usage is via mailbox (scom) scratch registers.
+
diff --git a/src/usr/initservice/istepdispatcher/splesscommon.C b/src/usr/initservice/istepdispatcher/splesscommon.C
index c9c71eefd..653d1a262 100644
--- a/src/usr/initservice/istepdispatcher/splesscommon.C
+++ b/src/usr/initservice/istepdispatcher/splesscommon.C
@@ -95,7 +95,7 @@ void readCmdSts( SPLessCmd &io_rcmd )
g_SPLess_pMasterProcChip );
}
-#ifdef CONFIG_BMC_AST2400
+#ifdef CONFIG_SIO_ISTEP_CONTROL
errlHndl_t err = NULL;
INITSERVICE::BOOTCONFIG::istepControl_t istepCtl;
memset (&istepCtl, 0x0, sizeof(istepCtl));
@@ -143,7 +143,7 @@ void writeCmdSts( SPLessCmd i_rcmd )
g_SPLess_pMasterProcChip );
}
-#ifdef CONFIG_BMC_AST2400
+#ifdef CONFIG_SIO_ISTEP_CONTROL
errlHndl_t err = NULL;
INITSERVICE::BOOTCONFIG::istepControl_t istepCtl;
memset (&istepCtl, 0x0, sizeof(istepCtl));
diff --git a/src/usr/initservice/istepdispatcher/sptask.C b/src/usr/initservice/istepdispatcher/sptask.C
index 83e5bc487..0b36f7484 100644
--- a/src/usr/initservice/istepdispatcher/sptask.C
+++ b/src/usr/initservice/istepdispatcher/sptask.C
@@ -236,7 +236,7 @@ void splessComm( void * io_msgQ )
"splessComm : readybit set." );
#ifdef CONFIG_CONSOLE_OUTPUT_PROGRESS
-#ifdef CONFIG_BMC_AST2400
+#ifdef CONFIG_SIO_ISTEP_CONTROL
const char* l_input = "SIO";
#else
const char* l_input = "CFAM";
OpenPOWER on IntegriCloud