diff options
| author | Chris Phan <cphan@us.ibm.com> | 2014-09-16 21:18:07 -0500 |
|---|---|---|
| committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-09-22 13:26:06 -0500 |
| commit | fe787082ffbf72795dc3c58d09e0a7ed45600da2 (patch) | |
| tree | ae18464ab2b6abc2b79dc25273bef0714812e88a /src/usr/diag/prdf/common/framework/resolution | |
| parent | 83e47c8df68c5736a8bb080d0a250df77c82f935 (diff) | |
| download | talos-hostboot-fe787082ffbf72795dc3c58d09e0a7ed45600da2.tar.gz talos-hostboot-fe787082ffbf72795dc3c58d09e0a7ed45600da2.zip | |
PRD: change osc callout and threshold design
Change-Id: Ib54734a1db5d17f4ea13ddd80f91fc4dae7aef3a
CQ: SW278778
Backport: release-fips820
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13461
Tested-by: Jenkins Server
Reviewed-by: Prem Shanker Jha <premjha2@in.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/13519
Diffstat (limited to 'src/usr/diag/prdf/common/framework/resolution')
| -rwxr-xr-x | src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C b/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C index 0bffe92c5..3ee6b3e4d 100755 --- a/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C +++ b/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C @@ -5,7 +5,9 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* COPYRIGHT International Business Machines Corp. 2001,2014 */ +/* Contributors Listed Below - COPYRIGHT 2012,2014 */ +/* [+] International Business Machines Corp. */ +/* */ /* */ /* Licensed under the Apache License, Version 2.0 (the "License"); */ /* you may not use this file except in compliance with the License. */ @@ -45,15 +47,13 @@ int32_t ClockResolution::Resolve(STEP_CODE_DATA_STRUCT & serviceData) uint32_t l_rc = SUCCESS; // callout clock osc if ( (iv_targetType == TYPE_PROC) || - (iv_targetType == TYPE_PCI) || (iv_targetType == TYPE_MEMBUF) ) { - // Get clock card. - TYPE oscType = (iv_targetType == TYPE_PCI) ? - TYPE_OSCPCICLK : TYPE_OSCREFCLK; - + // even though we pass in pos=0 for systemref clk, + // getActiveRefClk will make sure it returns the active osc. TargetHandle_t l_ptargetClock = - PlatServices::getClockId(iv_ptargetClock, oscType); + PlatServices::getActiveRefClk(iv_ptargetClock, + TYPE_OSCREFCLK, 0); // Callout this chip if nothing else. if(NULL == l_ptargetClock) @@ -70,11 +70,16 @@ int32_t ClockResolution::Resolve(STEP_CODE_DATA_STRUCT & serviceData) #else serviceData.service_data->SetCallout( PRDcallout(l_ptargetClock, - iv_targetType == TYPE_PCI ? - PRDcalloutData::TYPE_PCICLK : - PRDcalloutData::TYPE_PROCCLK)); + PRDcalloutData::TYPE_PROCCLK)); #endif } + else if (iv_targetType == TYPE_PCI) + { + // The PCIe OSC callout is being done inside + // chip plugins (prdfP8PllPcie) since the connected + // OSC can dynamically change and requires + // reading chip reg to figure out. + } // Get all connected chips for non-CLOCK_CARD types. else { |

