summaryrefslogtreecommitdiffstats
path: root/src/usr/diag
diff options
context:
space:
mode:
authorChris Phan <cphan@us.ibm.com>2014-01-22 14:36:06 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-01-24 22:28:50 -0600
commit46361e5fcd49e5c14213a6e5d83f2c4975913dc0 (patch)
tree0630fe2f0d673522953c3e91a7e1b8c927f633ab /src/usr/diag
parent8dbc8970d6c0cbab9dfe64f48fcb0fca2b0cfe2b (diff)
downloadtalos-hostboot-46361e5fcd49e5c14213a6e5d83f2c4975913dc0.tar.gz
talos-hostboot-46361e5fcd49e5c14213a6e5d83f2c4975913dc0.zip
PRD: use new addClockCallout interface in hostboot
Change-Id: I67c3815122810597f891762ad01eef43819bc926 RTC: 91939 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/8238 Tested-by: Jenkins Server Reviewed-by: BENJAMIN J. WEISENBECK <bweisenb@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com> Reviewed-by: Zane Shelley <zshelle@us.ibm.com> Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/8336
Diffstat (limited to 'src/usr/diag')
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C47
-rw-r--r--src/usr/diag/prdf/common/framework/service/prdfRasServices_common.C28
-rw-r--r--src/usr/diag/prdf/prdfErrlUtil.H8
3 files changed, 28 insertions, 55 deletions
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C b/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C
index c86c929b8..7363c40ae 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C
@@ -56,41 +56,24 @@ int32_t ClockResolution::Resolve(STEP_CODE_DATA_STRUCT & serviceData)
PlatServices::getClockId(iv_ptargetClock, oscType);
// Callout this chip if nothing else.
- // FIXME - RTC: 91939
- // will re-write this block of code when
- // we can get osc targets from targeting again.
- // In the mean time, we don't want to call out the
- // chip for this.
if(NULL == l_ptargetClock)
{
- //l_ptargetClock = iv_ptargetClock;
-
- //in hostboot, getClockId() won't work
- //so use the chip target and clock type
- #ifdef __HOSTBOOT_MODULE
- serviceData.service_data->SetCallout(
- PRDcallout(iv_ptargetClock,
- iv_targetType == TYPE_PCI ?
- PRDcalloutData::TYPE_PCICLK :
- PRDcalloutData::TYPE_PROCCLK));
- #endif
- }
- else
- {
- // callout the clock source
- // HB does not have the osc target modeled
- // so we need to use the proc target with
- // osc clock type to call out
- #ifndef __HOSTBOOT_MODULE
- serviceData.service_data->SetCallout(l_ptargetClock);
- #else
- serviceData.service_data->SetCallout(
- PRDcallout(l_ptargetClock,
- iv_targetType == TYPE_PCI ?
- PRDcalloutData::TYPE_PCICLK :
- PRDcalloutData::TYPE_PROCCLK));
- #endif
+ l_ptargetClock = iv_ptargetClock;
}
+
+ // callout the clock source
+ // HB does not have the osc target modeled
+ // so we need to use the proc target with
+ // osc clock type to call out
+ #ifndef __HOSTBOOT_MODULE
+ serviceData.service_data->SetCallout(l_ptargetClock);
+ #else
+ serviceData.service_data->SetCallout(
+ PRDcallout(l_ptargetClock,
+ iv_targetType == TYPE_PCI ?
+ PRDcalloutData::TYPE_PCICLK :
+ PRDcalloutData::TYPE_PROCCLK));
+ #endif
}
// Get all connected chips for non-CLOCK_CARD types.
else
diff --git a/src/usr/diag/prdf/common/framework/service/prdfRasServices_common.C b/src/usr/diag/prdf/common/framework/service/prdfRasServices_common.C
index dc8726ed0..798ce62d6 100644
--- a/src/usr/diag/prdf/common/framework/service/prdfRasServices_common.C
+++ b/src/usr/diag/prdf/common/framework/service/prdfRasServices_common.C
@@ -604,19 +604,9 @@ errlHndl_t ErrDataService::GenerateSrcPfa( ATTENTION_TYPE i_attnType,
thiscallout = (*i).callout;
if ( PRDcalloutData::TYPE_TARGET == thiscallout.getType() )
{
- HWAS::DeconfigEnum thisDeconfigState = deconfigState;
-
- #ifdef __HOSTBOOT_MODULE
- // Special case for Hostboot.
- if ( deferDeconfig )
- {
- thisDeconfigState = HWAS::DELAYED_DECONFIG;
- }
- #endif
-
PRDF_HW_ADD_CALLOUT(thiscallout.getTarget(),
thispriority,
- thisDeconfigState,
+ deconfigState,
o_errl,
gardErrType,
severityParm,
@@ -626,16 +616,12 @@ errlHndl_t ErrDataService::GenerateSrcPfa( ATTENTION_TYPE i_attnType,
else if(PRDcalloutData::TYPE_PROCCLK == thiscallout.getType() ||
PRDcalloutData::TYPE_PCICLK == thiscallout.getType())
{
- // FIXME - RTC: 91939
- // Can't call out osc clock in hostboot as informational
- // until the change from above story is in.
- if( sdc.IsAtThreshold() )
- {
- PRDF_ADD_CLOCK_CALLOUT(o_errl,
- thiscallout.getTarget(),
- thiscallout.getType(),
- thispriority);
- }
+ PRDF_ADD_CLOCK_CALLOUT(o_errl,
+ thiscallout.getTarget(),
+ thiscallout.getType(),
+ thispriority,
+ deconfigState,
+ gardErrType);
}
else if ( PRDcalloutData::TYPE_MEMMRU == thiscallout.getType() )
{
diff --git a/src/usr/diag/prdf/prdfErrlUtil.H b/src/usr/diag/prdf/prdfErrlUtil.H
index 19aec69c5..f91bde69b 100644
--- a/src/usr/diag/prdf/prdfErrlUtil.H
+++ b/src/usr/diag/prdf/prdfErrlUtil.H
@@ -181,11 +181,15 @@
/**
* @brief Add clock callout
*/
-#define PRDF_ADD_CLOCK_CALLOUT(io_errl, i_target, i_clockType, i_priority) \
+#define PRDF_ADD_CLOCK_CALLOUT(io_errl, i_target, i_clockType, i_priority, \
+ i_deconfigState, i_gardErrType) \
io_errl->addClockCallout(i_target, \
(PRDcalloutData::TYPE_PROCCLK == i_clockType) ? \
HWAS::OSCREFCLK_TYPE : HWAS::OSCPCICLK_TYPE, \
- (const HWAS::callOutPriority)i_priority);
+ (const HWAS::callOutPriority)i_priority, \
+ (i_deconfigState == HWAS::DECONFIG ? \
+ HWAS::DELAYED_DECONFIG : i_deconfigState), \
+ i_gardErrType);
/**
* @brief Process's pending deconfig and GARD service actions
OpenPOWER on IntegriCloud