Skip to content

Commit

Permalink
Debug improvements for interrupt and sbe psu fails
Browse files Browse the repository at this point in the history
Change-Id: Id71da5d29d24d1386be684f4e7594c9e38e0aa84
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/35172
Reviewed-by: Martin Gloff <mgloff@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
  • Loading branch information
dcrowell77 committed Feb 7, 2017
1 parent 55eff82 commit 6066591
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 11 deletions.
4 changes: 2 additions & 2 deletions src/usr/initservice/baseinitsvc/initservice.C
Expand Up @@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
/* Contributors Listed Below - COPYRIGHT 2011,2015 */
/* Contributors Listed Below - COPYRIGHT 2011,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
Expand Down Expand Up @@ -800,7 +800,7 @@ void InitService::doShutdown(uint64_t i_status,
(i->msgPriority <= LAST_PRE_MEM_FLUSH_PRIORITY));
++i)
{
TRACDCOMP(g_trac_initsvc,"notify priority=0x%x, queue=0x%x", i->msgPriority, i->msgQ );
TRACFCOMP(g_trac_initsvc,"notify priority=0x%x, queue=0x%x", i->msgPriority, i->msgQ );
l_msg->type = i->msgType;
l_msg->data[0] = worst_status;
(void)msg_sendrecv(i->msgQ,l_msg);
Expand Down
21 changes: 12 additions & 9 deletions src/usr/sbeio/sbe_psudd.C
Expand Up @@ -51,6 +51,9 @@ TRAC_INIT(&g_trac_sbeio, SBEIO_COMP_NAME, 6*KILOBYTE, TRACE::BUFFER_SLOW);
TRACFCOMP(g_trac_sbeio,"psudd: " printf_string,##args)
#define SBE_TRACD(printf_string,args...) \
TRACDCOMP(g_trac_sbeio,"psudd: " printf_string,##args)
#define SBE_TRACFBIN(printf_string,args...) \
TRACFBIN(g_trac_sbeio,"psudd: " printf_string,##args)


using namespace ERRORLOG;

Expand Down Expand Up @@ -217,6 +220,7 @@ errlHndl_t SbePsu::writeRequest(TARGETING::Target * i_target,
{
// assign sequence ID and save to check that response matches
i_pPsuRequest->seqID = ++l_seqID;
SBE_TRACF("Sending Req = %.16X", i_pPsuRequest->mbxReg0);

// Read SBE doorbell to confirm ready to accept command.
// Since the device driver single threads the requests, we should
Expand Down Expand Up @@ -330,12 +334,8 @@ errlHndl_t SbePsu::readResponse(TARGETING::Target * i_target,
uint64_t l_addr = PSU_HOST_SBE_MBOX4_REG;
for (uint8_t i=0;i<4;i++)
{
if (0x01 & i_rspMsgs) // read register if non-reserved
{
errl = readScom(i_target,l_addr,l_pMessage);
break;
}
i_rspMsgs>>=1;
errl = readScom(i_target,l_addr,l_pMessage);
if (errl) break;
l_addr++;
l_pMessage++;
}
Expand All @@ -353,13 +353,16 @@ errlHndl_t SbePsu::readResponse(TARGETING::Target * i_target,
{

SBE_TRACF(ERR_MRK "sbe_psudd.C :: readResponse: failing response status "
" cmd=0x%08x prim=0x%08x secondary=0x%08x",
" cmd=0x%02x%02x prim=0x%08x secondary=0x%08x"
" expected seqID=%d actual seqID=%d",
i_pPsuRequest[1],
i_pPsuRequest->commandClass,
i_pPsuRequest->command,
o_pPsuResponse->primaryStatus,
o_pPsuResponse->secondaryStatus,
i_pPsuRequest->seqID,
o_pPsuResponse->seqID);
SBE_TRACFBIN( "Full response:", o_pPsuResponse, sizeof(psuResponse) );

/*@
* @errortype
* @moduleid SBEIO_PSU
Expand Down Expand Up @@ -545,7 +548,7 @@ errlHndl_t SbePsu::writeScom(TARGETING::Target * i_target,
errlHndl_t errl = NULL;

SBE_TRACD(" writeScom addr=0x%08lx data=0x%016lx",
i_addr,*i_pData);
i_addr,*i_pData);
size_t l_64bitSize = sizeof(uint64_t);
errl = deviceOp(DeviceFW::WRITE,
i_target,
Expand Down

0 comments on commit 6066591

Please sign in to comment.