diff options
Diffstat (limited to 'src/usr')
-rwxr-xr-x | src/usr/diag/prdf/common/plat/p9/prdfP9Pll.C | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/src/usr/diag/prdf/common/plat/p9/prdfP9Pll.C b/src/usr/diag/prdf/common/plat/p9/prdfP9Pll.C index a30942646..0d2cce7c3 100755 --- a/src/usr/diag/prdf/common/plat/p9/prdfP9Pll.C +++ b/src/usr/diag/prdf/common/plat/p9/prdfP9Pll.C @@ -53,8 +53,9 @@ namespace Proc // PLL detect bits in TPLFIR enum { - PLL_DETECT_SYS_REF = 36, - PLL_DETECT_MF_REF = 37, + PLL_UNLOCK = 21, + OSC_SW_SYS_REF = 36, + OSC_SW_MF_REF = 37, }; /** @@ -95,10 +96,13 @@ int32_t QueryPll( ExtensibleChip * i_chip, break; } - if (((! TP_LFIRmask->IsBitSet(PLL_DETECT_SYS_REF)) && - (TP_LFIR->IsBitSet(PLL_DETECT_SYS_REF))) || - ((! TP_LFIRmask->IsBitSet(PLL_DETECT_MF_REF)) && - (TP_LFIR->IsBitSet(PLL_DETECT_MF_REF)))) + if ( ((! TP_LFIRmask->IsBitSet(PLL_UNLOCK)) && + TP_LFIR->IsBitSet(PLL_UNLOCK)) || + ((! TP_LFIRmask->IsBitSet(OSC_SW_SYS_REF)) && + TP_LFIR->IsBitSet(OSC_SW_SYS_REF)) || + ((! TP_LFIRmask->IsBitSet(OSC_SW_MF_REF)) && + TP_LFIR->IsBitSet(OSC_SW_MF_REF)) ) + { o_result = true; } @@ -136,8 +140,10 @@ int32_t ClearPll( ExtensibleChip * i_chip, SCAN_COMM_REGISTER_CLASS * TP_LFIRand = i_chip->getRegister("TP_LFIR_AND"); TP_LFIRand->setAllBits(); - TP_LFIRand->ClearBit(PLL_DETECT_SYS_REF); - TP_LFIRand->ClearBit(PLL_DETECT_MF_REF); + TP_LFIRand->ClearBit(PLL_UNLOCK); + TP_LFIRand->ClearBit(OSC_SW_SYS_REF); + TP_LFIRand->ClearBit(OSC_SW_MF_REF); + rc = TP_LFIRand->Write(); if (rc != SUCCESS) { @@ -166,8 +172,10 @@ int32_t MaskPll( ExtensibleChip * i_chip, SCAN_COMM_REGISTER_CLASS * tpmask_or = i_chip->getRegister("TP_LFIR_MASK_OR"); tpmask_or->clearAllBits(); - tpmask_or->SetBit(PLL_DETECT_SYS_REF); - tpmask_or->SetBit(PLL_DETECT_MF_REF); + tpmask_or->SetBit(PLL_UNLOCK); + tpmask_or->SetBit(OSC_SW_SYS_REF); + tpmask_or->SetBit(OSC_SW_MF_REF); + rc = tpmask_or->Write(); if (rc != SUCCESS) { |