summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/diag/prdf/common')
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/iipConfigurator.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/iipConfigurator.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/iipDomain.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/iipDomain.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/iipDomainContainer.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/iipDomainContainer.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/iipDomainContainer.inl2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/iipSystem.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/iipSystem.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/iipchip.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/iipchip.h2
-rw-r--r--src/usr/diag/prdf/common/framework/config/prdfExDomain.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfExtensibleChip.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfExtensibleDomain.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfExtensibleDomain.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfFabricDomain.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfFabricDomain.H2
-rw-r--r--src/usr/diag/prdf/common/framework/config/prdfMbaDomain.H2
-rw-r--r--src/usr/diag/prdf/common/framework/config/prdfMcsDomain.H2
-rw-r--r--src/usr/diag/prdf/common/framework/config/prdfMembufDomain.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfParentDomain.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfParentDomain.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfPllDomain.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfPllDomain.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfRuleChipDomain.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfRuleChipDomain.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/prdfSystemSpecific.H4
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/xspprdAccessPllChip.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/config/xspprdAccessPllChip.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipCaptureData.h35
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipErrorRegister.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipErrorRegisterFilter.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipErrorRegisterMask.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipErrorRegisterSet.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipErrorRegisterType.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.inl2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipMopRegisterAccessScanComm.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipMopRegisterAccessScanComm.inl2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipResetErrorRegister.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.C201
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.h331
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipScanCommRegisterChip.C111
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipScanCommRegisterChip.h218
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipXorResetErrorRegister.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipscr.C89
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/iipscr.h54
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfCaptureData.C29
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfErrorRegister.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfErrorRegisterMask.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H54
-rw-r--r--src/usr/diag/prdf/common/framework/register/prdfRegisterCache.C104
-rw-r--r--src/usr/diag/prdf/common/framework/register/prdfRegisterCache.H112
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfResetErrorRegister.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfResetOperators.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfScanFacility.C121
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfScanFacility.H207
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfScomRegister.C219
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfScomRegister.H224
-rw-r--r--[-rwxr-xr-x]src/usr/diag/prdf/common/framework/register/prdfScomRegisterAccess.C (renamed from src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.inl)96
-rw-r--r--src/usr/diag/prdf/common/framework/register/prdfScomRegisterAccess.H117
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/xspprdAndResetErrorRegister.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipAnalyzeChipResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipCallAttnResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipCallResolutionTemplate.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipCallout.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipCalloutMap.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipCalloutResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipCaptureResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipEregResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipResolution.C3
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipResolutionFactory.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipResolutionFactory.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipResolutionList.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipResolutionMap.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipTerminateResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/iipThresholdResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfAnalyzeConnected.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfCalloutConnected.H2
-rw-r--r--src/usr/diag/prdf/common/framework/resolution/prdfCalloutMap.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfCallouts.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfCaptureResolution.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfCaptureResolution.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfClockResolution.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfErrorTypeResolution.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfIntervalThresholdResolution.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfPluginCallResolution.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfResetThresholdResolution.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfResolutionList.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfResolutionMap.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfResolutionMap.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfThresholdResolutions.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/prdfThresholdResolutions.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/xspprdDumpResolution.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/xspprdDumpResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/xspprdFlagResolution.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/xspprdFlagResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/xspprdGardResolution.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/xspprdGardResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/resolution/xspprdTryResolution.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/iipTemplates.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdfGroup.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdfGroup.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdfPluginDef.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdfPluginMap.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdfPluginMap.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdfRuleChip.C80
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdfRuleChip.H19
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdfRuleFiles.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdfRuleFiles.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrChip.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrCommon.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrCompile.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrCompile.lex2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrCompile.y2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrExpr.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrGroup.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrLoadChip.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrLoadChipCache.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrLoadChipCache.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrRegister.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrSignatures.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrToken.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrpp2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/tables.mk2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/iipServiceDataCollector.h86
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/iipServiceDataCollector.inl2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/iipsdbug.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/iipstep.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/prdfPfa5Data.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/prdfPlatServices.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/prdfPlatServices.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/prdfServiceDataCollector.C13
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/prdfTargetServices.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/prdfTargetServices.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/prdfWorkarounds.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/prdf_ras_services.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/prdf_ras_services.H6
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/xspprdService.h10
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/xspprdsdbug.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/iipconst.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/iipglobl.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/CommonActions.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Mcs.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Membuf.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Membuf_acts_MEM.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Membuf_acts_NEST.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Membuf_acts_TP.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Membuf_regs_MEM.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Membuf_regs_NEST.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Membuf_regs_TP.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc_acts_ABUS.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc_acts_PB.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc_acts_PCIE.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc_acts_TP.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc_acts_XBUS.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc_regs_ABUS.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc_regs_PB.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc_regs_PCIE.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc_regs_TP.rule2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Proc_regs_XBUS.rule2
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfCalloutUtil.C2
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfCalloutUtil.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/prdfCenMba.C2
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaDataBundle.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/prdfCenPll.C2
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfDramRepairs.C2
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfMemUtil.C2
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfMemUtil.H2
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfP8Ex.C3
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/prdfP8Mcs.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/prdfP8Pll.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/prdfP8Proc.C2
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfP8SystemSpecific.C4
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfPegasusConfigurator.C10
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfPegasusConfigurator.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/prdfL3Table.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/prdfL3Table.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/prdfLineDelete.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/prdfLineDelete.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/prdfMemoryMru.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/prdfMemoryMru.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/prdfRepairHealth.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/prdfRepairHealth.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/prdfTOD.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/prd_framework.mk9
-rwxr-xr-xsrc/usr/diag/prdf/common/prd_pegasus.mk2
-rwxr-xr-xsrc/usr/diag/prdf/common/prd_ruletable.mk2
-rwxr-xr-xsrc/usr/diag/prdf/common/prdfEnums.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/prdfMain.C28
-rwxr-xr-xsrc/usr/diag/prdf/common/prdfTrace.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/prdfTrace.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/prdf_types.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/CcAutoDeletePointer.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/CcAutoDeletePointer.inl2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/CcSynch.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/CcSynch.inl2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/UtilFunct.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/UtilHash.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/UtilMapX.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/UtilSMap.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/UtilTree.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/UtilTree.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/UtilTreeX.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/iipbits.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/iipbtlst.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/iipdgtb.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/iipdgtb.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/iipdigit.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/iipdigit.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/iipfltr.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfAssert.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfAssert.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfBitKey.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfBitKey.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfBitString.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfBitString.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfErrlSmartPtr.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfErrlSmartPtr.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfErrorSignature.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfFilters.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfFilters.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfFlyWeight.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfFlyWeight.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfFlyWeightS.C12
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfFlyWeightS.H6
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfHeapBucketSize.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfRegisterData.C2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfRegisterData.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfTimer.H2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/xspprdFilterLink.h2
-rwxr-xr-xsrc/usr/diag/prdf/common/util/xspprdScanCommFilter.h2
239 files changed, 1509 insertions, 1520 deletions
diff --git a/src/usr/diag/prdf/common/framework/config/iipConfigurator.C b/src/usr/diag/prdf/common/framework/config/iipConfigurator.C
index a3425a73e..a3268f74a 100755
--- a/src/usr/diag/prdf/common/framework/config/iipConfigurator.C
+++ b/src/usr/diag/prdf/common/framework/config/iipConfigurator.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/iipConfigurator.h b/src/usr/diag/prdf/common/framework/config/iipConfigurator.h
index 262a9b9e7..368fe74d3 100755
--- a/src/usr/diag/prdf/common/framework/config/iipConfigurator.h
+++ b/src/usr/diag/prdf/common/framework/config/iipConfigurator.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/iipDomain.C b/src/usr/diag/prdf/common/framework/config/iipDomain.C
index fde702412..1fc975b63 100755
--- a/src/usr/diag/prdf/common/framework/config/iipDomain.C
+++ b/src/usr/diag/prdf/common/framework/config/iipDomain.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/iipDomain.h b/src/usr/diag/prdf/common/framework/config/iipDomain.h
index 8545801aa..043841539 100755
--- a/src/usr/diag/prdf/common/framework/config/iipDomain.h
+++ b/src/usr/diag/prdf/common/framework/config/iipDomain.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/iipDomainContainer.C b/src/usr/diag/prdf/common/framework/config/iipDomainContainer.C
index 09399eb1c..d265b78f9 100755
--- a/src/usr/diag/prdf/common/framework/config/iipDomainContainer.C
+++ b/src/usr/diag/prdf/common/framework/config/iipDomainContainer.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/iipDomainContainer.h b/src/usr/diag/prdf/common/framework/config/iipDomainContainer.h
index 36f2d8850..88917bb2e 100755
--- a/src/usr/diag/prdf/common/framework/config/iipDomainContainer.h
+++ b/src/usr/diag/prdf/common/framework/config/iipDomainContainer.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/iipDomainContainer.inl b/src/usr/diag/prdf/common/framework/config/iipDomainContainer.inl
index be75887ac..b6b0adbb3 100755
--- a/src/usr/diag/prdf/common/framework/config/iipDomainContainer.inl
+++ b/src/usr/diag/prdf/common/framework/config/iipDomainContainer.inl
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/iipSystem.C b/src/usr/diag/prdf/common/framework/config/iipSystem.C
index b66f2f0de..032def1db 100755
--- a/src/usr/diag/prdf/common/framework/config/iipSystem.C
+++ b/src/usr/diag/prdf/common/framework/config/iipSystem.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/iipSystem.h b/src/usr/diag/prdf/common/framework/config/iipSystem.h
index b608b377f..d6d3d60c9 100755
--- a/src/usr/diag/prdf/common/framework/config/iipSystem.h
+++ b/src/usr/diag/prdf/common/framework/config/iipSystem.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/iipchip.C b/src/usr/diag/prdf/common/framework/config/iipchip.C
index d5c2187fd..3c41666a2 100755
--- a/src/usr/diag/prdf/common/framework/config/iipchip.C
+++ b/src/usr/diag/prdf/common/framework/config/iipchip.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1993,2012 */
+/* COPYRIGHT International Business Machines Corp. 1993,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/iipchip.h b/src/usr/diag/prdf/common/framework/config/iipchip.h
index 51f0ce3b2..a94e2160f 100755
--- a/src/usr/diag/prdf/common/framework/config/iipchip.h
+++ b/src/usr/diag/prdf/common/framework/config/iipchip.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1993,2012 */
+/* COPYRIGHT International Business Machines Corp. 1993,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfExDomain.H b/src/usr/diag/prdf/common/framework/config/prdfExDomain.H
index 964aa87a1..86055b4ab 100644
--- a/src/usr/diag/prdf/common/framework/config/prdfExDomain.H
+++ b/src/usr/diag/prdf/common/framework/config/prdfExDomain.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfExtensibleChip.H b/src/usr/diag/prdf/common/framework/config/prdfExtensibleChip.H
index 8a5e8d4eb..545ebe85a 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfExtensibleChip.H
+++ b/src/usr/diag/prdf/common/framework/config/prdfExtensibleChip.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfExtensibleDomain.C b/src/usr/diag/prdf/common/framework/config/prdfExtensibleDomain.C
index 31e03a513..3b8f5c9fa 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfExtensibleDomain.C
+++ b/src/usr/diag/prdf/common/framework/config/prdfExtensibleDomain.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2009,2012 */
+/* COPYRIGHT International Business Machines Corp. 2009,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfExtensibleDomain.H b/src/usr/diag/prdf/common/framework/config/prdfExtensibleDomain.H
index 9432a5ad2..acd88db9c 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfExtensibleDomain.H
+++ b/src/usr/diag/prdf/common/framework/config/prdfExtensibleDomain.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2009,2012 */
+/* COPYRIGHT International Business Machines Corp. 2009,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfFabricDomain.C b/src/usr/diag/prdf/common/framework/config/prdfFabricDomain.C
index 1efef0eb9..9d9f2658a 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfFabricDomain.C
+++ b/src/usr/diag/prdf/common/framework/config/prdfFabricDomain.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfFabricDomain.H b/src/usr/diag/prdf/common/framework/config/prdfFabricDomain.H
index c5e3cd5fb..9d301b594 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfFabricDomain.H
+++ b/src/usr/diag/prdf/common/framework/config/prdfFabricDomain.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfMbaDomain.H b/src/usr/diag/prdf/common/framework/config/prdfMbaDomain.H
index d2220b3d4..6aabd3019 100644
--- a/src/usr/diag/prdf/common/framework/config/prdfMbaDomain.H
+++ b/src/usr/diag/prdf/common/framework/config/prdfMbaDomain.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfMcsDomain.H b/src/usr/diag/prdf/common/framework/config/prdfMcsDomain.H
index 341ecc706..53341b0d9 100644
--- a/src/usr/diag/prdf/common/framework/config/prdfMcsDomain.H
+++ b/src/usr/diag/prdf/common/framework/config/prdfMcsDomain.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfMembufDomain.H b/src/usr/diag/prdf/common/framework/config/prdfMembufDomain.H
index ca2b9be81..3cad001a1 100644
--- a/src/usr/diag/prdf/common/framework/config/prdfMembufDomain.H
+++ b/src/usr/diag/prdf/common/framework/config/prdfMembufDomain.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfParentDomain.C b/src/usr/diag/prdf/common/framework/config/prdfParentDomain.C
index 14759cef6..89d1c3c5d 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfParentDomain.C
+++ b/src/usr/diag/prdf/common/framework/config/prdfParentDomain.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfParentDomain.H b/src/usr/diag/prdf/common/framework/config/prdfParentDomain.H
index 8981ed56f..5c75e5094 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfParentDomain.H
+++ b/src/usr/diag/prdf/common/framework/config/prdfParentDomain.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfPllDomain.C b/src/usr/diag/prdf/common/framework/config/prdfPllDomain.C
index 1076df31c..8ce117c7a 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfPllDomain.C
+++ b/src/usr/diag/prdf/common/framework/config/prdfPllDomain.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2003,2012 */
+/* COPYRIGHT International Business Machines Corp. 2003,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfPllDomain.H b/src/usr/diag/prdf/common/framework/config/prdfPllDomain.H
index 583b54c84..8e232604f 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfPllDomain.H
+++ b/src/usr/diag/prdf/common/framework/config/prdfPllDomain.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2006,2012 */
+/* COPYRIGHT International Business Machines Corp. 2006,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfRuleChipDomain.C b/src/usr/diag/prdf/common/framework/config/prdfRuleChipDomain.C
index 04e009657..036f64df8 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfRuleChipDomain.C
+++ b/src/usr/diag/prdf/common/framework/config/prdfRuleChipDomain.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2008,2012 */
+/* COPYRIGHT International Business Machines Corp. 2008,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfRuleChipDomain.H b/src/usr/diag/prdf/common/framework/config/prdfRuleChipDomain.H
index 59dde7f35..fcf9e38e1 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfRuleChipDomain.H
+++ b/src/usr/diag/prdf/common/framework/config/prdfRuleChipDomain.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2008,2012 */
+/* COPYRIGHT International Business Machines Corp. 2008,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/prdfSystemSpecific.H b/src/usr/diag/prdf/common/framework/config/prdfSystemSpecific.H
index af173c3aa..f0f69e592 100755
--- a/src/usr/diag/prdf/common/framework/config/prdfSystemSpecific.H
+++ b/src/usr/diag/prdf/common/framework/config/prdfSystemSpecific.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2008,2012 */
+/* COPYRIGHT International Business Machines Corp. 2008,2013 */
/* */
/* p1 */
/* */
@@ -50,7 +50,7 @@ namespace PRDF
namespace SystemSpecific
{
- PRDF::Configurator * getConfiguratorPtr();
+ Configurator * getConfiguratorPtr();
void postAnalysisWorkarounds(STEP_CODE_DATA_STRUCT & i_sdc);
};
diff --git a/src/usr/diag/prdf/common/framework/config/xspprdAccessPllChip.C b/src/usr/diag/prdf/common/framework/config/xspprdAccessPllChip.C
index 609f76595..3df704e07 100755
--- a/src/usr/diag/prdf/common/framework/config/xspprdAccessPllChip.C
+++ b/src/usr/diag/prdf/common/framework/config/xspprdAccessPllChip.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2000,2012 */
+/* COPYRIGHT International Business Machines Corp. 2000,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/config/xspprdAccessPllChip.h b/src/usr/diag/prdf/common/framework/config/xspprdAccessPllChip.h
index bc6a78792..90f152f7c 100755
--- a/src/usr/diag/prdf/common/framework/config/xspprdAccessPllChip.h
+++ b/src/usr/diag/prdf/common/framework/config/xspprdAccessPllChip.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2000,2012 */
+/* COPYRIGHT International Business Machines Corp. 2000,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipCaptureData.h b/src/usr/diag/prdf/common/framework/register/iipCaptureData.h
index a4c0ce514..bcf4c7ad2 100755
--- a/src/usr/diag/prdf/common/framework/register/iipCaptureData.h
+++ b/src/usr/diag/prdf/common/framework/register/iipCaptureData.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
@@ -187,20 +187,6 @@ public:
Place place = BACK);
*/
- /**
- Add scr & data to capture log (defunct)
- <ul>
- <br><b>Paramter: chipid (or chip enum)
- <br><b>Paramter: Scan comm register object
- <br><b>Paramter: Optional location in capure vector [FRONT | BACK] def = BACK
- <br><b>Returns: Nothing
- <br><b>Requires: Nothing
- <br><b>Promises: scr.Read()
- <br><b>Notes: This method is no longer implemented
- </ul><br>
- */
- void Add(ScanCommRegisterAccess & scr, Place place = BACK);
-
// dg02 start
/**
Add scr & data to capture log
@@ -219,25 +205,6 @@ public:
BIT_STRING_CLASS & bs, Place place = BACK);
// dg02 end
- // dg06a start
- /**
- Add scr & data to capture log
- <ul>
- <br><b>Paramter: i_pTargetHandle Handle of chip object
- <br><b>Paramter: scan comm id (unique code representing scan comm address)
- <br><b>Paramter: Scan comm register address
- <br><b>Paramter: Scan comm register bit length length
- <br><b>Paramter: Optional location in capure vector [FRONT | BACK] def = BACK
- <br><b>Returns: Nothing
- <br><b>Requires: Nothing
- <br><b>Promises:
- <br><b>Notes: This is available for Regatta and beyond. Not implemented on Condor
- </ul><br>
- */
- void Add( TARGETING::TargetHandle_t i_pTargetHandle , int iScomId,
- uint64_t iScomAddress, uint32_t iScomBitLength ,
- Place iplace = BACK);
- // dg06a end
// start @jl04a
/**
diff --git a/src/usr/diag/prdf/common/framework/register/iipErrorRegister.h b/src/usr/diag/prdf/common/framework/register/iipErrorRegister.h
index db12c223c..7fcedaac0 100755
--- a/src/usr/diag/prdf/common/framework/register/iipErrorRegister.h
+++ b/src/usr/diag/prdf/common/framework/register/iipErrorRegister.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipErrorRegisterFilter.h b/src/usr/diag/prdf/common/framework/register/iipErrorRegisterFilter.h
index a8dc3b027..5c0659d0e 100755
--- a/src/usr/diag/prdf/common/framework/register/iipErrorRegisterFilter.h
+++ b/src/usr/diag/prdf/common/framework/register/iipErrorRegisterFilter.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2001,2012 */
+/* COPYRIGHT International Business Machines Corp. 2001,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipErrorRegisterMask.h b/src/usr/diag/prdf/common/framework/register/iipErrorRegisterMask.h
index 45573a232..55fc70fa9 100755
--- a/src/usr/diag/prdf/common/framework/register/iipErrorRegisterMask.h
+++ b/src/usr/diag/prdf/common/framework/register/iipErrorRegisterMask.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipErrorRegisterSet.h b/src/usr/diag/prdf/common/framework/register/iipErrorRegisterSet.h
index 2f7c25bdc..4c90519e0 100755
--- a/src/usr/diag/prdf/common/framework/register/iipErrorRegisterSet.h
+++ b/src/usr/diag/prdf/common/framework/register/iipErrorRegisterSet.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1997,2012 */
+/* COPYRIGHT International Business Machines Corp. 1997,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipErrorRegisterType.h b/src/usr/diag/prdf/common/framework/register/iipErrorRegisterType.h
index ead888a92..054cca2c1 100755
--- a/src/usr/diag/prdf/common/framework/register/iipErrorRegisterType.h
+++ b/src/usr/diag/prdf/common/framework/register/iipErrorRegisterType.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.C b/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.C
index 66977cb13..7ead3145c 100755
--- a/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.C
+++ b/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.h b/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.h
index 874d9d745..7ebafd27a 100755
--- a/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.h
+++ b/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.inl b/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.inl
index 406d13cfe..8f1e28022 100755
--- a/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.inl
+++ b/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccess.inl
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccessScanComm.h b/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccessScanComm.h
index c5808f8c3..b77158457 100755
--- a/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccessScanComm.h
+++ b/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccessScanComm.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccessScanComm.inl b/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccessScanComm.inl
index 652d67819..a7eef5913 100755
--- a/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccessScanComm.inl
+++ b/src/usr/diag/prdf/common/framework/register/iipMopRegisterAccessScanComm.inl
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipResetErrorRegister.h b/src/usr/diag/prdf/common/framework/register/iipResetErrorRegister.h
index 2b449b329..e46be7cbe 100755
--- a/src/usr/diag/prdf/common/framework/register/iipResetErrorRegister.h
+++ b/src/usr/diag/prdf/common/framework/register/iipResetErrorRegister.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.C b/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.C
deleted file mode 100755
index 72b0f67a2..000000000
--- a/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.C
+++ /dev/null
@@ -1,201 +0,0 @@
-/* IBM_PROLOG_BEGIN_TAG */
-/* This is an automatically generated prolog. */
-/* */
-/* $Source: src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.C $ */
-/* */
-/* IBM CONFIDENTIAL */
-/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
-/* */
-/* p1 */
-/* */
-/* Object Code Only (OCO) source materials */
-/* Licensed Internal Code Source Materials */
-/* IBM HostBoot Licensed Internal Code */
-/* */
-/* The source code for this program is not published or otherwise */
-/* divested of its trade secrets, irrespective of what has been */
-/* deposited with the U.S. Copyright Office. */
-/* */
-/* Origin: 30 */
-/* */
-/* IBM_PROLOG_END_TAG */
-
-// Module Description **************************************************
-//
-// Description: This module provides the implementation for the PRD Scan
-// Comm Register Access class.
-//
-// End Module Description **********************************************
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#define iipScanCommRegisterAccess_C
-
-#include <CcSynch.h>
-#include <iipconst.h>
-#include <iipbits.h>
-#include <iipMopRegisterAccess.h>
-#include <iipScanCommRegisterAccess.h>
-#include <prdfMain.H>
-#undef iipScanCommRegisterAccess_C
-
-//----------------------------------------------------------------------
-// User Types
-//----------------------------------------------------------------------
-
-//----------------------------------------------------------------------
-// Constants
-//----------------------------------------------------------------------
-
-//----------------------------------------------------------------------
-// Macros
-//----------------------------------------------------------------------
-
-//----------------------------------------------------------------------
-// Internal Function Prototypes
-//----------------------------------------------------------------------
-
-namespace PRDF
-{
-
-//----------------------------------------------------------------------
-// Global Variables
-//----------------------------------------------------------------------
-//
-#define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__)
-#if (GCC_VERSION >= 3004)
-template<>
-#endif
-ScanCommRegisterAccess::SynchType::StepType
- ScanCommRegisterAccess::SynchType::step =
- ScanCommRegisterAccess::SynchType::STATIC_INITIAL_VALUE;
-
-//---------------------------------------------------------------------
-// Member Function Specifications
-//---------------------------------------------------------------------
-
-uint32_t ScanCommRegisterAccess::UnSync(void)
-{
- uint32_t l_rc = SUCCESS;
- synch.Advance(); // make everything out of synch
- return(l_rc);
-}
-
-uint32_t ScanCommRegisterAccess::Read(void)
-{
- uint32_t rc = SUCCESS;
-
- if(!synch.IsCurrent())
- {
-// BIT_STRING_BUFFER_CLASS bs(GetBitLength(), GetBufferByteSize());
- BIT_STRING_CLASS & bs = AccessBitString();
-
- rc = Access(bs,GetAddress(), MopRegisterAccess::READ);
- // dg01 start
- if (rc != SUCCESS)
- {
- synch.Advance(); // make everything out of synch if failed
- }
- // dg01 end
-
-// if(rc == SUCCESS)
-// {
-// SetBitString(&bs);
-// }
- }
-
- return(rc);
-}
-
-// ----------------------------------------------------------------------------
-// dg00 start
-uint32_t ScanCommRegisterAccess::ForceRead(void)
-{
- uint32_t rc = SUCCESS;
-
- BIT_STRING_CLASS & bs = AccessBitString();
- rc = Access(bs,GetAddress(), MopRegisterAccess::READ);
- synch.IsCurrent();
-
- return rc;
-}
-// dg00 end
-//-------------------------------------------------------------------------------
-
-uint32_t ScanCommRegisterAccess::Write(void)
-{
- uint32_t rc = (uint32_t) FAIL;
-
-// const BIT_STRING_CLASS * bit_string_ptr = GetBitString();
-
- BIT_STRING_CLASS & bs = AccessBitString();
-// if(bit_string_ptr != NULL)
-// {
-// BIT_STRING_BUFFER_CLASS bs(GetBitLength(), GetBufferByteSize());
-
-// bs.SetBits(*bit_string_ptr);
-
- rc = Access(bs, GetAddress(), MopRegisterAccess::WRITE);
-// }
-
- return(rc);
-}
-
-// unsigned int ScanCommRegisterAccess::GetBufferByteSize(void) const
-// {
-// return(BUFFER_BYTE_SIZE);
-// }
-
-uint32_t ScanCommRegisterAccess::Access(BIT_STRING_CLASS & bs, uint64_t registerId,
- MopRegisterAccess::Operation op) const
-{
- uint32_t rc = SCR_ACCESS_FAILED;
- if(hops != NULL)
- {
- rc = hops->Access(bs, registerId, op);
- }
- return(rc);
-}
-
-// #ifdef _USE_IOSTREAMS_
-
-// ostream & operator<<(ostream & out, const ScanCommRegisterAccess & scr)
-// {
-// out << "Address: " << scr.GetAddress() << " Chip: "; // << hops;
-
-
-// uint32_t count;
-// const uint32_t * values = scr.GetChipSelectValues(count);
-
-// if(count)
-// {
-// for(uint32_t i = 0;i < count;i++)
-// {
-// out << values[i] << " ";
-// }
-// }
-// else
-// {
-// out << "None ";
-// }
-
-// const BIT_STRING_CLASS * bit_string_ptr = scr.GetBitString();
-
-// if(bit_string_ptr == NULL)
-// {
-// out << " No Data";
-// }
-// else
-// {
-// out << " Data: " << (*bit_string_ptr);
-// }
-
-// return(out);
-// }
-
-// #endif
-
-} //end namespace PRDF
-
diff --git a/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.h b/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.h
deleted file mode 100755
index 8a9c76d14..000000000
--- a/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.h
+++ /dev/null
@@ -1,331 +0,0 @@
-/* IBM_PROLOG_BEGIN_TAG */
-/* This is an automatically generated prolog. */
-/* */
-/* $Source: src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.h $ */
-/* */
-/* IBM CONFIDENTIAL */
-/* */
-/* COPYRIGHT International Business Machines Corp. 1997,2012 */
-/* */
-/* p1 */
-/* */
-/* Object Code Only (OCO) source materials */
-/* Licensed Internal Code Source Materials */
-/* IBM HostBoot Licensed Internal Code */
-/* */
-/* The source code for this program is not published or otherwise */
-/* divested of its trade secrets, irrespective of what has been */
-/* deposited with the U.S. Copyright Office. */
-/* */
-/* Origin: 30 */
-/* */
-/* IBM_PROLOG_END_TAG */
-
-#ifndef iipScanCommRegisterAccess_h
-#define iipScanCommRegisterAccess_h
-
-// Class Specification *************************************************
-//
-// Class name: ScanCommRegisterAccess
-// Parent class: SCAN_COMM_REGISTER_CLASS
-//
-// Summary: This class provides access to the Scan Comm Register
-// physical hardware. The member functions Read() and Write()
-// both call the common function Access(). Access() is
-// implemented to use a MopRegisterAccessScanComm instance to
-// access the hardware.
-//
-// This class contains an instance of the CcSynch class. This
-// data member is used to ensure that the Read() function will
-// only call the Access() function once for any given synch
-// value. An external thread must ensure that the synch value
-// is advanced at appropriate times. AN eclosed class id is
-// used to ensure that the class template CcSynch
-// specialization is unique. See the specification of the
-// CcSynch class for more details
-//
-// Cardinality: 0
-//
-// Performance/Implementation:
-// Space Complexity: Constant
-// Time Complexity: All member functions constant unless otherwise
-// stated.
-//
-// Usage Examples:
-//
-// void foo(ScanCommRegisterAccess & scr)
-// {
-// scr.Read();
-// scr.Write();
-// }
-//
-//
-// End Class Specification *********************************************
-
-
-// Includes
-#ifndef IIPSCR_H
-#include <iipscr.h>
-#endif
-
-#ifndef CcSynch_h
-#include <CcSynch.h>
-#endif
-
-#if !defined(IIPCONST_H)
-#include <iipconst.h>
-#endif
-
-#ifndef iipMopRegisterAccess_h
-#include <iipMopRegisterAccess.h>
-#endif
-
-namespace PRDF
-{
-
-// // Forward References
-// #ifdef _USE_IOSTREAMS_
-// class ostream;
-// #endif
-
-class ScanCommRegisterAccess : public SCAN_COMM_REGISTER_CLASS
-{
-public:
-
- struct id {};
- typedef CcSynch<uint16_t, id> SynchType;
-
- /**
- Constructor
- <ul>
- <br><b>Parameter: </b> ar: Scan Comm Register address.
- <br><b>Parameter: </b> mopsAccess object
- <br><b>Requirements:</b> None.
- <br><b>Promises: </b> Heap memory may be allocated
- <br><b>Exceptions: </b> None.
- </ul><br>
- */
- ScanCommRegisterAccess(uint64_t ra, MopRegisterAccess &hopsAccessor);
-
- // Function Specification ********************************************
- //
- // Purpose: Copy
- // Parameters: scr: Reference to instance to copy
- // Returns: No value returned.
- // Requirements: None.
- // Promises: All data members will be copied (Deep copy).
- // Exceptions: None.
- // Concurrency: N/A.
- // Notes: This constructor is not declared. This compiler generated
- // default definition is sufficient.
- //
- // End Function Specification ****************************************
- // ScanCommRegisterAccess(const ScanCommRegisterAccess & scr);
-
- // Function Specification ********************************************
- //
- // Purpose: Destruction
- // Parameters: None.
- // Returns: No value returned
- // Requirements: None.
- // Promises: None.
- // Exceptions: None.
- // Concurrency: N/A
- // Notes: This destructor is not declared. This compiler generated
- // default definition is sufficient.
- //
- // End Function Specification ****************************************
- // virtual ~ScanCommRegisterAccess(void);
-
- // Function Specification ********************************************
- //
- // Purpose: Assigment
- // Parameters: d: Reference to instance to assign from
- // Returns: Reference to this instance
- // Requirements: None.
- // Promises: All data members are assigned to
- // Exceptions: None.
- // Concurrency: N/A.
- // Notes: This assingment operator is not declared. The compiler
- // generated default definition is sufficient.
- //
- // End Function Specification ****************************************
- // ScanCommRegisterAccess & operator=(const ScanCommRegisterAccess & scr);
-
- // virtual const uint32_t * GetChipSelectValues( retired
- // unsigned int & chipSelectCount) const = 0; retired
-
- // Function Specification ********************************************
- //
- // Purpose: This function returns the size (in bytes) of the
- // buffer needed for accesses.
- // Parameters: None.
- // Returns: Buffer size.
- // Requirements: None.
- // Promises: None.
- // Exceptions: None.
- // Concurrency: Reentrant.
- //
- // End Function Specification ****************************************
- // virtual unsigned int GetBufferByteSize(void) const;
-
- // dg00 start
- /**
- Read hardware register (pure virtual)
- <ul>
- <br><b>Parameters: </b> None
- <br><b>Returns: </b> [SUCCESS | MOPs return code]
- <br><b>Requirements:</b> None.
- <br><b>Promises: </b> Internal bit string represents the value of the
- hardware register (if rc == SUCCESS)
- <br><b>Sideaffects: </b> Value guarrenteed to be read from hardware.
- <br><b>Exceptions: </b> None.
- </ul><br>
- */
- virtual uint32_t ForceRead(void);
- // dg00 end
-
- /**
- Read hardware register
- <ul>
- <br><b>Parameters: </b> None
- <br><b>Returns: </b> [SUCCESS | MOPs return code]
- <br><b>Requirements:</b> None.
- <br><b>Promises: </b> Internal bit string represents the value of the
- hardware register (if rc == SUCCESS)
- <br><b>Sideaffects: </b> The bit string value may or may not be retrieved
- from hardware; a buffered copy may be used.
- <br><b>Exceptions: </b> None.
- </ul><br>
- */
- virtual uint32_t Read(void);
-
- /**
- Unsynchronize the register access to recollect reg contents.
- <ul>
- <br><b>Parameters: </b> None
- <br><b>Returns: </b> [SUCCESS]
- <br><b>Requirements:</b> None.
- </ul><br>
- */
- virtual uint32_t UnSync(void);
-
- /**
- Write hardware register
- <ul>
- <br><b>Parameters: </b> None
- <br><b>Returns: </b> [SUCCESS | MOPs return code]
- <br><b>Requirements:</b> None.
- <br><b>Promises: </b> Internal bit string value written to hardware
- <br><b>Exceptions: </b> None.
- <br><b>Notes: </b> If internal bitstring was never read/set/modified then
- zeros are written to corresponding hardware register.
- </ul><br>
- */
- virtual uint32_t Write(void);
-
- /**
- Access a copy of the short id for signatures.
- <ul>
- <br><b>Parameters: </b> None
- <br><b>Returns: </b> ID.
- <br><b>Requirements:</b> None.
- <br><b>Promises: </b> None.
- <br><b>Exceptions: </b> None.
- </ul><br>
- */
- virtual uint16_t GetId(void) const { return cv_shortId; };
-
- /**
- Set the short id for signatures.
- <ul>
- <br><b>Parameters: </b> ID.
- <br><b>Returns: </b> None.
- <br><b>Requirements:</b> None.
- <br><b>Promises: </b> None.
- <br><b>Exceptions: </b> For virtual registers, this is not required to have
- any effect.
- </ul><br>
- */
- virtual void SetId(uint16_t i_id) { cv_shortId = i_id; };
-
-
- /**
- Access the chipid(s) of the chip
- <ul>
- <br><b>Parameters: </b> None
- <br><b>Returns: </b> ptr to const array of chipIds
- <br><b>Requirements:</b> None.
- <br><b>Promises: </b> None
- <br><b>Exceptions: </b> None.
- </ul><br>
- */
- const TARGETING::TargetHandle_t * GetChipIds(int & chipCount) const
- { return hops->GetChipIds(chipCount); }
-
- const MopRegisterAccess & GetHops(void)const { return *hops; }
-
-protected:
- ScanCommRegisterAccess() : SCAN_COMM_REGISTER_CLASS(0xffffffff), hops(NULL) {}
-private: // Functions
-
- /**
- This function reads or writes the hardware according to the specified operation.
- <ul>
- <br><b>Parameter: </b> bufferPtr: Pointer to buffer for input
- <br><b>Parameter: </b> (write operation) or output (read operation)
- <br><b>Paramter: </b> op: Indicates either read or write operation
- <br><b>Returns: </b> None.
- <br><b>Requirements:</b> Buffer must be valid.
- <br><b>Promises: </b> For read operation, buffer is modified.
- <br><b>Exceptions: </b> None.
- </ul><br>
- */
- uint32_t Access(BIT_STRING_CLASS & bs, uint64_t registerId,
- MopRegisterAccess::Operation op) const;
-
-// #ifdef _USE_IOSTREAMS_
-
-// friend ostream & operator<<(ostream & out,
-// const ScanCommRegisterAccess & scr);
-
-// #endif
-
-private: // Data
-
-// enum
-// {
-// BUFFER_BYTE_SIZE = 12
-// };
- SynchType synch;
-
- MopRegisterAccess * hops;
-
- uint16_t cv_shortId;
-};
-
-} // end namespace PRDF
-
-// #ifdef _USE_IOSTREAMS_
-
-// // Function Specification ********************************************
-// //
-// // Purpose: This function outputs the Scan Comm Register data
-// // members to the specified output stream.
-// // Parameters: out: Output Stream
-// // scr: Reference to a Scan Comm Register instance
-// // Returns: Parameter output stream
-// // Requirements: None.
-// // Promises: Output stream will be written to.
-// // Exceptions: None.
-// // Concurrency: Reentrant.
-// //
-// // End Function Specification ****************************************
-// ostream & operator<<(ostream & out,
-// const ScanCommRegisterAccess & scr);
-
-// #endif
-
-#include <iipScanCommRegisterAccess.inl>
-
-#endif
diff --git a/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterChip.C b/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterChip.C
deleted file mode 100755
index b6a37712d..000000000
--- a/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterChip.C
+++ /dev/null
@@ -1,111 +0,0 @@
-/* IBM_PROLOG_BEGIN_TAG */
-/* This is an automatically generated prolog. */
-/* */
-/* $Source: src/usr/diag/prdf/common/framework/register/iipScanCommRegisterChip.C $ */
-/* */
-/* IBM CONFIDENTIAL */
-/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
-/* */
-/* p1 */
-/* */
-/* Object Code Only (OCO) source materials */
-/* Licensed Internal Code Source Materials */
-/* IBM HostBoot Licensed Internal Code */
-/* */
-/* The source code for this program is not published or otherwise */
-/* divested of its trade secrets, irrespective of what has been */
-/* deposited with the U.S. Copyright Office. */
-/* */
-/* Origin: 30 */
-/* */
-/* IBM_PROLOG_END_TAG */
-
-// Module Description **************************************************
-//
-// Description: This module provides the implementation for the PRD Scan
-// Comm Register Chip class.
-//
-// End Module Description **********************************************
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-
-#define iipScanCommRegisterChip_C
-
-#include <iipchip.h>
-// #include <iipMopRegisterAccessScanCommSingle.h>
-#include <iipScanCommRegisterChip.h>
-
-#undef iipScanCommRegisterChip_C
-
-namespace PRDF
-{
-
-//----------------------------------------------------------------------
-// User Types
-//----------------------------------------------------------------------
-
-//----------------------------------------------------------------------
-// Constants
-//----------------------------------------------------------------------
-
-//----------------------------------------------------------------------
-// Macros
-//----------------------------------------------------------------------
-
-//----------------------------------------------------------------------
-// Internal Function Prototypes
-//----------------------------------------------------------------------
-
-//----------------------------------------------------------------------
-// Global Variables
-//----------------------------------------------------------------------
-
-//---------------------------------------------------------------------
-// Member Function Specifications
-//---------------------------------------------------------------------
-
-ScanCommRegisterChip::ScanCommRegisterChip(uint64_t ra,
- unsigned int bl,
- MopRegisterAccess & hopsAccess)
- :
- ScanCommRegisterAccess(ra,hopsAccess),
- xBitString(bl)
-{
- xBitString.Pattern(0); // Clear
-}
-
-// --------------------------------------------------------------------
-
-
-// ---------------------------------------------------------------------
-
-void ScanCommRegisterChip::SetBitString(const BIT_STRING_CLASS *bs)
-{
- xBitString.SetBits(*bs);
-}
-
-// ---------------------------------------------------------------------
-
-// const uint32_t * ScanCommRegisterChip::GetChipSelectValues
-// (unsigned int & chipSelectCount) const
-// {
-// const uint32_t * chipSelectValues = NULL;
-
-// if(chipPtr)
-// {
-// chipSelectCount = chipPtr->GetChipSelectCount();
-// chipSelectValues = chipPtr->GetChipSelectValues();
-// }
-// else
-// {
-// chipSelectCount = 0;
-// }
-
-// return(chipSelectValues);
-// }
-
-} // end namespace PRDF
-
diff --git a/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterChip.h b/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterChip.h
deleted file mode 100755
index e65a55fdb..000000000
--- a/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterChip.h
+++ /dev/null
@@ -1,218 +0,0 @@
-/* IBM_PROLOG_BEGIN_TAG */
-/* This is an automatically generated prolog. */
-/* */
-/* $Source: src/usr/diag/prdf/common/framework/register/iipScanCommRegisterChip.h $ */
-/* */
-/* IBM CONFIDENTIAL */
-/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
-/* */
-/* p1 */
-/* */
-/* Object Code Only (OCO) source materials */
-/* Licensed Internal Code Source Materials */
-/* IBM HostBoot Licensed Internal Code */
-/* */
-/* The source code for this program is not published or otherwise */
-/* divested of its trade secrets, irrespective of what has been */
-/* deposited with the U.S. Copyright Office. */
-/* */
-/* Origin: 30 */
-/* */
-/* IBM_PROLOG_END_TAG */
-
-#ifndef iipScanCommRegisterChip_h
-#define iipScanCommRegisterChip_h
-
-// Class Specification *************************************************
-//
-// Class name: ScanCommRegisterChip
-// Parent class: ScanCommRegisterAccess
-//
-// Summary: This class provides access to a Scan Comm Register
-// associated with a specific chip.
-//
-// A pointer to a CHIP_CLASS is maintained. The member
-// function GetChipSelectValues() is implemented to use the
-// CHIP_CLASS instance to return the values.
-//
-// Cardinality: N
-//
-// Performance/Implementation:
-// Space Complexity: Constant
-// Time Complexity: All member functions constant unless otherwise
-// stated.
-//
-// Usage Examples:
-//
-// void foo(CHIP_CLASS * chipPtr, unsigned int registerAddress,
-// unsigned int bitLength)
-// {
-// ScanCommRegisterChip scr(chipPtr, registerAddress, bitLength);
-// scr.Read();
-// scr.Write();
-// }
-//
-// End Class Specification *********************************************
-
-// Includes
-#if !defined(iipScanCommRegisterAccess_h)
-#include <iipScanCommRegisterAccess.h>
-#endif
-
-#if !defined(IIPBITS_H)
-#include <iipbits.h>
-#endif
-
-namespace PRDF
-{
-
-// Forward References
-class CHIP_CLASS;
-class MopsRegisterAccess;
-
-class ScanCommRegisterChip : public ScanCommRegisterAccess
-{
-public:
-
- ScanCommRegisterChip(uint64_t ra,
- unsigned int bl,
- MopRegisterAccess &hopsAccess);
- ScanCommRegisterChip() : ScanCommRegisterAccess(), xBitString((uint32_t)0) {}
- // Function Specification ********************************************
- //
- // Purpose: Initialization (preferred Ctor)
- // Parameters: chid: Chip Id of chip on which the hardware register resides
- // ra: Scan com register address or Register Id
- // bl: Number of bits in register
- // hopsAccess: object to access Hardware Ops
- // Returns: No value returned.
- // Requirements: None.
- // Promises: All data members are initialized
- // Exceptions: None.
- // Concurrency: N/A
- //
- // End Function Specification //////////////////////////////////////
-
-
- //ScanCommRegisterChip(const ScanCommRegisterChip & scr);
- // Function Specification ********************************************
- //
- // Purpose: Copy
- // Parameters: scr: Reference to instance to copy
- // Returns: No value returned.
- // Requirements: None.
- // Promises: All data members will be copied (Deep copy).
- // Exceptions: None.
- // Concurrency: N/A.
- // Notes: This constructor is not declared. This compiler generated
- // default definition is sufficient.
- //
- // End Function Specification ****************************************
-
- //virtual ~ScanCommRegisterChip(void);
- // Function Specification ********************************************
- //
- // Purpose: Destruction
- // Parameters: None.
- // Returns: No value returned
- // Requirements: None.
- // Promises: None.
- // Exceptions: None.
- // Concurrency: N/A
- // Notes: This destructor is not declared. This compiler generated
- // default definition is sufficient.
- //
- // End Function Specification ****************************************
-
- // ScanCommRegisterChip & operator=(const ScanCommRegisterChip & scr);
- // Function Specification ********************************************
- //
- // Purpose: Assigment
- // Parameters: d: Reference to instance to assign from
- // Returns: Reference to this instance
- // Requirements: None.
- // Promises: All data members are assigned to
- // Exceptions: None.
- // Concurrency: N/A.
- // Notes: This assingment operator is not declared. The compiler
- // generated default definition is sufficient.
- //
- // End Function Specification ****************************************
-
-// virtual const uint32_t * GetChipSelectValues(unsigned int & chipSelectCount) const;
- // Function Specification ********************************************
- //
- // Purpose: This function returns the chip select values.
- // Parameters: chipSelectCount: Number of chip select values in
- // returned array
- // Returns: Pointer to an array of chip select values
- // Requirements: None.
- // Promises: Parameter chipSelectCount is modified.
- // Exceptions: None.
- // Concurrency: Reentrant.
- // Notes: If the chipPtr is NULL, then the count will be zero and
- // NULL is returned.
- //
- // End Function Specification ****************************************
-
- virtual const BIT_STRING_CLASS * GetBitString(
- ATTENTION_TYPE i_type = INVALID_ATTENTION_TYPE ) const
- { return &xBitString; }
- // Function Specification ********************************************
- //
- // Purpose: Access the bit string
- // Parameters: None
- // Returns: the bit string
- // Requirements: none
- // Promises: a bit string
- // Exceptions: None.
- // Notes:
- //
- // End Function Specification ****************************************
-
- virtual void SetBitString(const BIT_STRING_CLASS * bs);
- // Function Specification ********************************************
- //
- // Purpose: Modify the internal bit string
- // Parameters: a Bit string
- // Returns: Nothing
- // Requirements: none
- // Promises: Internal bit string == *bs for first len bits where
- // len is the smaller of the two lengths
- // Exceptions: None.
- // Notes:
- //
- // End Function Specification ****************************************
-
-protected: // Functions
-
- virtual BIT_STRING_CLASS & AccessBitString(void) { return(xBitString); }
- // Function Specification ********************************************
- //
- // Purpose: Get non-cost referece to bit string
- // Parameters: None.
- // Returns: BIT_STRING_CLASS &
- // Requirements: none.
- // Promises: Direct access to the Bit string
- // Exceptions: None
- // Notes:
- //
- // End Function Specification ****************************************
-
-
-private: // functions
-
- friend class CaptureData;
-
-private: // Data
-
-// CHIP_CLASS * chipPtr;
- BIT_STRING_BUFFER_CLASS xBitString;
-// MopRegisterAccessScanCommSingle xHopsAccess;
-
-};
-
-} // end namespace PRDF
-
-#endif
diff --git a/src/usr/diag/prdf/common/framework/register/iipXorResetErrorRegister.h b/src/usr/diag/prdf/common/framework/register/iipXorResetErrorRegister.h
index d220a1520..6c182b8f5 100755
--- a/src/usr/diag/prdf/common/framework/register/iipXorResetErrorRegister.h
+++ b/src/usr/diag/prdf/common/framework/register/iipXorResetErrorRegister.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1997,2012 */
+/* COPYRIGHT International Business Machines Corp. 1997,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/iipscr.C b/src/usr/diag/prdf/common/framework/register/iipscr.C
index af067a421..ea7ad6d4b 100755
--- a/src/usr/diag/prdf/common/framework/register/iipscr.C
+++ b/src/usr/diag/prdf/common/framework/register/iipscr.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1997,2012 */
+/* COPYRIGHT International Business Machines Corp. 1997,2013 */
/* */
/* p1 */
/* */
@@ -43,6 +43,8 @@
#include <iipscr.h>
#include <iipconst.h>
+namespace PRDF
+{
/*--------------------------------------------------------------------*/
/* User Types */
/*--------------------------------------------------------------------*/
@@ -79,9 +81,6 @@
//
// End Function Specification //////////////////////////////////////
-namespace PRDF
-{
-
SCAN_COMM_REGISTER_CLASS::~SCAN_COMM_REGISTER_CLASS
(
void
@@ -124,10 +123,6 @@ uint32_t SCAN_COMM_REGISTER_CLASS::Read
return(rc);
}
-
-
-uint32_t SCAN_COMM_REGISTER_CLASS::UnSync(void){return(SUCCESS);}
-
// Function Specification //////////////////////////////////////////
//
// Title: Set Bit
@@ -182,62 +177,7 @@ void SCAN_COMM_REGISTER_CLASS::ClearBit
bitString.Clear(bit_position);
}
-// Function Specification //////////////////////////////////////////
-//
-// Title: SCAN_COMM_REGISTER_CLASS (Copy constructor)
-//
-// Purpose: This constuctor initializes the data members. This
-// copy constructor uses a "deep" copy.
-//
-// Side-effects: This instance is initialized.
-//
-// Dependencies: None.
-//
-// Time Complexity: Constant + time complexity of SetBitString()
-//
-// End Function Specification //////////////////////////////////////
-
-SCAN_COMM_REGISTER_CLASS::SCAN_COMM_REGISTER_CLASS
-(
- const SCAN_COMM_REGISTER_CLASS & scr
- /*!i Scan Comm Register reference to copy */
- ) :
-/*!o No value returned */
-address(scr.address)
-{
-}
-
-// Function Specification ///////////////////////////////////////////
-//
-// Title: operator= (Assignment operator)
-//
-// Purpose: This assignment operator assigns the Bit String data
-// member.
-//
-// Side-effects: Bit String data member is modified.
-// Memory is reallocated.
-//
-// Dependencies: None.
-//
-// Time Complexity: Constant
-//
-// End Function Specification //////////////////////////////////////
-
-SCAN_COMM_REGISTER_CLASS & SCAN_COMM_REGISTER_CLASS::operator=
-(
- const SCAN_COMM_REGISTER_CLASS & scr
- /*!i Scan Comm Register instance to assign from */
- )
-/*!o Reference to this Scan Comm Register instance */
-{
- // Check for assignment to self
- if(this != &scr)
- {
- address = scr.address;
- }
- return(*this);
-}
// Function Specification ///////////////////////////////////////////
//
@@ -264,28 +204,7 @@ void SCAN_COMM_REGISTER_CLASS::setAllBits()
bitString.Pattern( 0, bitString.GetLength(), 0xffffffff, 32 );
}
-// Function Specification //////////////////////////////////////////
-//
-// Title: SCAN_COMM_REGISTER_CLASS (Constructor)
-//
-// Purpose: This constuctor initializes the data members.
-//
-// Side-effects: This instance is initialized. Memory may be allocated
-//
-// Dependencies: None.
-//
-// End Function Specification //////////////////////////////////////
-
-SCAN_COMM_REGISTER_CLASS::SCAN_COMM_REGISTER_CLASS
-(
- uint64_t a
- /*!i Physical address of register */
- ) :
-/*!o No value returned */
-address(a)
-{
-}
-} // end namespace PRDF
+}//namespace PRDF ends
#undef IIPSCR_C
diff --git a/src/usr/diag/prdf/common/framework/register/iipscr.h b/src/usr/diag/prdf/common/framework/register/iipscr.h
index d8fe942a0..cda1f7640 100755
--- a/src/usr/diag/prdf/common/framework/register/iipscr.h
+++ b/src/usr/diag/prdf/common/framework/register/iipscr.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1997,2012 */
+/* COPYRIGHT International Business Machines Corp. 1997,2013 */
/* */
/* p1 */
/* */
@@ -41,16 +41,12 @@
// Includes
//----------------------------------------------------------------------
-#if !defined(IIPBITS_H)
#include <iipbits.h>
-#endif
-
#include <iipsdbug.h>
#include <prdfMain.H>
namespace PRDF
{
-
/*--------------------------------------------------------------------*/
/* Forward References */
/*--------------------------------------------------------------------*/
@@ -122,7 +118,6 @@ namespace PRDF
// number of bits in the register.
//
// End Class Specification *********************************************
-
/**
SCAN_COMM_REGISTER_CLASS
@author Doug Gilbert
@@ -171,8 +166,6 @@ public:
*/
virtual uint32_t Read(void) = 0;
- virtual uint32_t UnSync(void);
-
/**
Read hardware register and apply a mask
<ul>
@@ -215,13 +208,13 @@ public:
Access a copy of the scan comm address
<ul>
<br><b>Parameters: </b> None
- <br><b>Returns: </b> Scan Comm address
+ <br><b>Returns: </b> Returns scom address
<br><b>Requirements:</b> None.
<br><b>Promises: </b> None.
<br><b>Exceptions: </b> None.
</ul><br>
*/
- uint64_t GetAddress(void) const { return address; }
+ virtual uint64_t GetAddress(void) const {return 0 ;}
/**
Access a copy of the short id for signatures.
@@ -259,7 +252,7 @@ public:
<br><b>Exceptions: </b> None.
</ul><br>
*/
- uint32_t GetBitLength(void) const { return (GetBitString())->GetLength();}
+ virtual uint32_t GetBitLength(void) const { return DEFAULT_BIT_LENGTH ;}
/**
Access the internal bit string (pure virtual)
@@ -378,36 +371,14 @@ public:
*/
bool BitStringIsZero()
{ return GetBitString()->IsZero(); }
-
-protected:
-
- /**
- Constructor
- <ul>
- <br><b>Parameters: </b> Scan Comm Address
- <br><b>Promises: </b> Heap memory may be allocated
- </ul><br>
+ /**
+ *@brief Returns TYPE_NA as type of Target associated with register.Acutal
+ * implementation is expected in derived class
+ *@return TYPE_NA
*/
- SCAN_COMM_REGISTER_CLASS( uint64_t a);
+ virtual TARGETING::TYPE getChipType(void)const { return TARGETING::TYPE_NA; }
- /**
- Copy Constructor
- <ul>
- <br><b>Parameters: </b> SCAN_COMM_REGISTER_CLASS
- <br><b>Promises: </b> Heap memory may be (re)allocated
- </ul><br>
- */
- SCAN_COMM_REGISTER_CLASS(const SCAN_COMM_REGISTER_CLASS & scr);
-
- /**
- Assignment operator
- <ul>
- <br><b>Parameters: </b> SCAN_COMM_REGISTER_CLASS
- <br><b>Promises: </b> Heap memory may be (re)allocated
- (*this) == scr;
- </ul><br>
- */
- SCAN_COMM_REGISTER_CLASS & operator= ( const SCAN_COMM_REGISTER_CLASS & scr);
+protected:
/**
Get modifiable reference to internal bit string (don't even thing about making this public!!!)
@@ -419,8 +390,8 @@ protected:
</ul><br>
*/
virtual BIT_STRING_CLASS & AccessBitString(void) = 0;
-
private: // Data
+ static const int DEFAULT_BIT_LENGTH = 64;
// Enum Specification //////////////////////////////////////////////
//
@@ -440,10 +411,9 @@ private: // Data
//
// End Data Specification //////////////////////////////////////////
- uint64_t address;
};
-} // end namespace PRDF
+}//namespace PRDF
#endif
diff --git a/src/usr/diag/prdf/common/framework/register/prdfCaptureData.C b/src/usr/diag/prdf/common/framework/register/prdfCaptureData.C
index f4ff1e4d0..1c4c2219f 100755
--- a/src/usr/diag/prdf/common/framework/register/prdfCaptureData.C
+++ b/src/usr/diag/prdf/common/framework/register/prdfCaptureData.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2003,2012 */
+/* COPYRIGHT International Business Machines Corp. 2003,2013 */
/* */
/* p1 */
/* */
@@ -43,25 +43,12 @@
#include <netinet/in.h>
#endif
-
-#ifndef IIPBITS_H
#include <iipbits.h>
-#endif
-
-// 3 dg06d
#include <prdfHomRegisterAccess.H> // dg06a
-#include <iipScanCommRegisterChip.h> // dg06a
-
-#ifndef IIPCHIP_H
+#include <prdfScomRegister.H>
#include <iipchip.h>
-#endif
-
-#ifndef IIPCAPTUREDATA_H
#include <iipCaptureData.h>
-#endif
-
#include <string.h>
-
#include <algorithm> // @jl04 a Add this for the Drop function.
namespace PRDF
@@ -156,18 +143,6 @@ void CaptureData::Add( TARGETING::TargetHandle_t i_pchipHandle, int scomId,
// end dg02
-// start dg06a
-void CaptureData::Add( TARGETING::TargetHandle_t i_pchipHandle,
- int iScomId, uint64_t iScomAddress,
- uint32_t iScomBitLength, Place iplace )
-{
- HomRegisterAccessScom hops(i_pchipHandle);
- ScanCommRegisterChip scrc(iScomAddress, iScomBitLength, hops);
-
- Add(i_pchipHandle, iScomId, scrc, iplace);
-}
-
-// end dg06a
// start jl04a
void CaptureData::Drop(RegType i_type)
diff --git a/src/usr/diag/prdf/common/framework/register/prdfErrorRegister.C b/src/usr/diag/prdf/common/framework/register/prdfErrorRegister.C
index caebb8baf..c585dbf5b 100755
--- a/src/usr/diag/prdf/common/framework/register/prdfErrorRegister.C
+++ b/src/usr/diag/prdf/common/framework/register/prdfErrorRegister.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/prdfErrorRegisterMask.C b/src/usr/diag/prdf/common/framework/register/prdfErrorRegisterMask.C
index febc23d5e..0171b0408 100755
--- a/src/usr/diag/prdf/common/framework/register/prdfErrorRegisterMask.C
+++ b/src/usr/diag/prdf/common/framework/register/prdfErrorRegisterMask.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.C b/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.C
index aaca68beb..b1c5b3d8d 100755
--- a/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.C
+++ b/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.H b/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.H
index 1427dcb4d..9756d2683 100755
--- a/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.H
+++ b/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H b/src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H
index 88aca651b..fff6a1642 100755
--- a/src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H
+++ b/src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
@@ -36,14 +36,14 @@ class NotRegister : public SCAN_COMM_REGISTER_CLASS
{
public:
NotRegister() :
- SCAN_COMM_REGISTER_CLASS(0), iv_child(NULL), iv_iBS(0)
+ SCAN_COMM_REGISTER_CLASS( ), iv_child(NULL), iv_iBS(0)
{
iv_bs = &iv_iBS;
}
NotRegister(SCAN_COMM_REGISTER_CLASS & i_arg) :
- SCAN_COMM_REGISTER_CLASS(0), iv_child(&i_arg),
- iv_iBS(i_arg.GetBitString()->GetLength())
+ SCAN_COMM_REGISTER_CLASS( ), iv_child(&i_arg),
+ iv_iBS(i_arg.GetBitLength())
{
iv_bs = &iv_iBS;
}
@@ -93,14 +93,14 @@ class LeftShiftRegister : public SCAN_COMM_REGISTER_CLASS
{
public:
LeftShiftRegister() :
- SCAN_COMM_REGISTER_CLASS(0), iv_child(NULL), iv_amount(0), iv_iBS(0)
+ SCAN_COMM_REGISTER_CLASS( ), iv_child(NULL), iv_amount(0), iv_iBS(0)
{
iv_bs = &iv_iBS;
}
LeftShiftRegister(SCAN_COMM_REGISTER_CLASS & i_arg, uint16_t i_amount) :
- SCAN_COMM_REGISTER_CLASS(0), iv_child(&i_arg), iv_amount(i_amount),
- iv_iBS(i_arg.GetBitString()->GetLength())
+ SCAN_COMM_REGISTER_CLASS( ), iv_child(&i_arg), iv_amount(i_amount),
+ iv_iBS(i_arg.GetBitLength())
{
iv_bs = &iv_iBS;
}
@@ -160,14 +160,14 @@ class RightShiftRegister : public SCAN_COMM_REGISTER_CLASS
{
public:
RightShiftRegister() :
- SCAN_COMM_REGISTER_CLASS(0), iv_child(NULL), iv_amount(0), iv_iBS(0)
+ SCAN_COMM_REGISTER_CLASS( ), iv_child(NULL), iv_amount(0), iv_iBS(0)
{
iv_bs = &iv_iBS;
}
RightShiftRegister(SCAN_COMM_REGISTER_CLASS & i_arg, uint16_t i_amount) :
- SCAN_COMM_REGISTER_CLASS(0), iv_child(&i_arg), iv_amount(i_amount),
- iv_iBS(i_arg.GetBitString()->GetLength())
+ SCAN_COMM_REGISTER_CLASS( ), iv_child(&i_arg), iv_amount(i_amount),
+ iv_iBS(i_arg.GetBitLength())
{
iv_bs = &iv_iBS;
}
@@ -228,16 +228,16 @@ class AndRegister : public SCAN_COMM_REGISTER_CLASS
{
public:
AndRegister() :
- SCAN_COMM_REGISTER_CLASS(0), iv_left(NULL), iv_right(NULL), iv_iBS(0)
+ SCAN_COMM_REGISTER_CLASS( ), iv_left(NULL), iv_right(NULL), iv_iBS(0)
{
iv_bs = &iv_iBS;
}
AndRegister( SCAN_COMM_REGISTER_CLASS & i_left,
SCAN_COMM_REGISTER_CLASS & i_right ) :
- SCAN_COMM_REGISTER_CLASS(0), iv_left(&i_left), iv_right(&i_right),
- iv_iBS(std::min(i_left.GetBitString()->GetLength(),
- i_right.GetBitString()->GetLength()))
+ SCAN_COMM_REGISTER_CLASS( ), iv_left(&i_left), iv_right(&i_right),
+ iv_iBS(std::min(i_left.GetBitLength(),
+ i_right.GetBitLength()))
{
iv_bs = &iv_iBS;
}
@@ -310,16 +310,16 @@ class OrRegister : public SCAN_COMM_REGISTER_CLASS
public:
OrRegister() :
- SCAN_COMM_REGISTER_CLASS(0), iv_left(NULL), iv_right(NULL), iv_iBS(0)
+ SCAN_COMM_REGISTER_CLASS( ), iv_left(NULL), iv_right(NULL), iv_iBS(0)
{
iv_bs = &iv_iBS;
}
OrRegister( SCAN_COMM_REGISTER_CLASS & i_left,
SCAN_COMM_REGISTER_CLASS & i_right ) :
- SCAN_COMM_REGISTER_CLASS(0), iv_left(&i_left), iv_right(&i_right),
- iv_iBS(std::min(i_left.GetBitString()->GetLength(),
- i_right.GetBitString()->GetLength()))
+ SCAN_COMM_REGISTER_CLASS( ), iv_left(&i_left), iv_right(&i_right),
+ iv_iBS(std::min(i_left.GetBitLength(),
+ i_right.GetBitLength()))
{
iv_bs = &iv_iBS;
}
@@ -392,7 +392,7 @@ class NullRegister : public SCAN_COMM_REGISTER_CLASS
{
public:
NullRegister(int size) :
- SCAN_COMM_REGISTER_CLASS(0), iv_iBS(size)
+ SCAN_COMM_REGISTER_CLASS( ), iv_iBS(size)
{}
NullRegister & operator=(const NullRegister & r)
@@ -428,7 +428,7 @@ class AttnTypeRegister : public SCAN_COMM_REGISTER_CLASS
{
public:
AttnTypeRegister() :
- SCAN_COMM_REGISTER_CLASS(0), iv_check(&cv_null), iv_recov(&cv_null),
+ SCAN_COMM_REGISTER_CLASS( ), iv_check(&cv_null), iv_recov(&cv_null),
iv_special(&cv_null), iv_proccs(&cv_null), iv_iBS(0)
{
iv_bs = &iv_iBS;
@@ -438,7 +438,7 @@ class AttnTypeRegister : public SCAN_COMM_REGISTER_CLASS
SCAN_COMM_REGISTER_CLASS & i_recov,
SCAN_COMM_REGISTER_CLASS & i_special,
SCAN_COMM_REGISTER_CLASS & i_proccs ) :
- SCAN_COMM_REGISTER_CLASS(0),
+ SCAN_COMM_REGISTER_CLASS( ),
iv_check( NULL == &i_check ? &cv_null : &i_check),
iv_recov( NULL == &i_recov ? &cv_null : &i_recov),
iv_special(NULL == &i_special ? &cv_null : &i_special),
@@ -446,10 +446,10 @@ class AttnTypeRegister : public SCAN_COMM_REGISTER_CLASS
iv_iBS(0) // will fully initialize this inside ctor.
{
uint32_t l_length = 1024;
- l_length = std::min(l_length, iv_check->GetBitString()->GetLength());
- l_length = std::min(l_length, iv_recov->GetBitString()->GetLength());
- l_length = std::min(l_length, iv_special->GetBitString()->GetLength());
- l_length = std::min(l_length, iv_proccs->GetBitString()->GetLength());
+ l_length = std::min(l_length, iv_check->GetBitLength());
+ l_length = std::min(l_length, iv_recov->GetBitLength());
+ l_length = std::min(l_length, iv_special->GetBitLength());
+ l_length = std::min(l_length, iv_proccs->GetBitLength());
iv_iBS = BitStringBuffer(l_length);
iv_bs = &iv_iBS;
}
@@ -545,11 +545,11 @@ class ConstantRegister : public SCAN_COMM_REGISTER_CLASS
{
public:
ConstantRegister() :
- SCAN_COMM_REGISTER_CLASS(0), iv_iBS(0)
+ SCAN_COMM_REGISTER_CLASS( ), iv_iBS(0)
{}
ConstantRegister(BIT_STRING_CLASS i_arg) :
- SCAN_COMM_REGISTER_CLASS(0), iv_iBS(i_arg)
+ SCAN_COMM_REGISTER_CLASS( ), iv_iBS(i_arg)
{}
ConstantRegister & operator=(const ConstantRegister & r)
diff --git a/src/usr/diag/prdf/common/framework/register/prdfRegisterCache.C b/src/usr/diag/prdf/common/framework/register/prdfRegisterCache.C
new file mode 100644
index 000000000..228f34c0c
--- /dev/null
+++ b/src/usr/diag/prdf/common/framework/register/prdfRegisterCache.C
@@ -0,0 +1,104 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: prdfRegisterCache.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
+
+#include <prdfRegisterCache.H>
+#include <iipconst.h>
+
+namespace PRDF
+{
+
+//------------------------------------------------------------------------------
+
+RegDataCache & RegDataCache::getCachedRegisters()
+{
+ return PRDF_GET_SINGLETON( ReadCache );
+}
+
+//------------------------------------------------------------------------------
+
+RegDataCache::~RegDataCache()
+{
+ flush();
+}
+
+//------------------------------------------------------------------------------
+
+BIT_STRING_CLASS & RegDataCache::read(
+ ExtensibleChip* i_pChip,
+ const SCAN_COMM_REGISTER_CLASS * i_pRegister,
+ bool & o_readStat )
+{
+ BIT_STRING_CLASS * l_pBitString = NULL;
+ o_readStat = false;
+ ScomRegisterAccess l_scomAccessKey ( *i_pRegister,i_pChip );
+ CacheDump::iterator itDump = iv_cachedRead.find( l_scomAccessKey );
+ if( iv_cachedRead.end() != itDump )
+ {
+ o_readStat = true;
+ l_pBitString = itDump->second ;
+ }
+ else
+ {
+ // Creating new entry
+ l_pBitString = new BitStringBuffer( i_pRegister->GetBitLength( ) );
+ // Adding register in the cache
+ iv_cachedRead[l_scomAccessKey] = l_pBitString;
+ }
+ return *l_pBitString;
+}
+
+//------------------------------------------------------------------------------
+
+void RegDataCache::flush()
+{
+ for ( CacheDump::iterator it = iv_cachedRead.begin();
+ it != iv_cachedRead.end(); it++ )
+ {
+ // Freeing up the bit string memory reserved on heap
+ delete it->second;
+ }
+
+ // Deleting all the entry from the cache
+ iv_cachedRead.clear();
+}
+
+//------------------------------------------------------------------------------
+
+void RegDataCache::flush( ExtensibleChip* i_pChip,
+ const SCAN_COMM_REGISTER_CLASS * i_pRegister )
+{
+ ScomRegisterAccess l_scomAccessKey ( *i_pRegister,i_pChip );
+ // Find the entries associated with the given target in the map
+ CacheDump::iterator it = iv_cachedRead.find( l_scomAccessKey );
+
+ // If entry exists delete the entry for given scom address
+ if ( it !=iv_cachedRead.end() )
+ {
+ delete it->second;
+ iv_cachedRead.erase( it );
+ }
+}
+
+//------------------------------------------------------------------------------
+
+}// end namespace PRDF
diff --git a/src/usr/diag/prdf/common/framework/register/prdfRegisterCache.H b/src/usr/diag/prdf/common/framework/register/prdfRegisterCache.H
new file mode 100644
index 000000000..f3f61b4a8
--- /dev/null
+++ b/src/usr/diag/prdf/common/framework/register/prdfRegisterCache.H
@@ -0,0 +1,112 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: prdfRegisterCache.H $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
+
+#ifndef REG_CACHE_H
+#define REG_CACHE_H
+
+/** @file prdfRegisterCache.H */
+
+#include <map>
+#include <targeting/common/target.H>
+#include <iipbits.h>
+#include <iipglobl.h>
+#include <prdfScanFacility.H>
+#include <prdfScomRegisterAccess.H>
+
+class BIT_STRING_CLASS;
+
+namespace PRDF
+{
+/**
+ * @brief Caches the contents of registers used during analysis.
+ *
+ * It maintains the latest content of a register in a map. If contents of the
+ * register remain unchanged, register read returns contents stored in
+ * cache rather than reading from hardware. Hence it brings efficiency in read.
+ * Whenever write to actual hardware takes place, it is expected that once write
+ * to hardware succeeds, the user of cache shall call flush. It drops the
+ * particular register from map. As a result, when read takes place from same
+ * register next time, read from cache fails and actual access to hardware
+ * takes place.
+ */
+class RegDataCache
+{
+ public:
+
+ /**
+ * @brief Constructor
+ */
+ RegDataCache()
+ { }
+
+ /**
+ * @brief Destructor
+ */
+ ~RegDataCache();
+
+ /**
+ * @brief Returns reference to singleton instance of the RegDataCache.
+ * @return The singleton reference.
+ */
+ static RegDataCache & getCachedRegisters();
+
+ /**
+ * @brief Returns the data buffer for the given target and address.
+ * @param i_pChip The target associated with the register.
+ * @param i_pRegister pointer to register to be read.
+ * @param o_readStat Returns true if the register does not exist in
+ * cache. In this case, the function will create and
+ * add an empty BIT_STRING_CLASS to the cache.It is
+ * the responsibilty of the user to update the data
+ * buffer by reading from hardware.
+ * @return A reference to the data buffer associated with the register.
+ */
+ BIT_STRING_CLASS & read( ExtensibleChip* i_pChip,
+ const SCAN_COMM_REGISTER_CLASS * i_pRegister,
+ bool & o_readStat );
+
+ /**
+ * @brief Flushes entire contents from cache.
+ */
+ void flush();
+
+ /**
+ * @brief Removes a single entry from the cache.
+ * @param i_pChip The rulechip associated with the register.
+ * @param i_pRegister points to the register to be flushed from cache.
+ */
+ void flush( ExtensibleChip* i_pChip,
+ const SCAN_COMM_REGISTER_CLASS * i_pRegister );
+ private: // data
+
+ typedef std::map<ScomRegisterAccess, BIT_STRING_CLASS *> CacheDump;
+ CacheDump iv_cachedRead;
+
+};
+
+PRDF_DECLARE_SINGLETON(RegDataCache, ReadCache);
+
+} // namespace PRDF
+
+#endif // REG_CACHE_H
+
diff --git a/src/usr/diag/prdf/common/framework/register/prdfResetErrorRegister.C b/src/usr/diag/prdf/common/framework/register/prdfResetErrorRegister.C
index 64e8a2e01..072501868 100755
--- a/src/usr/diag/prdf/common/framework/register/prdfResetErrorRegister.C
+++ b/src/usr/diag/prdf/common/framework/register/prdfResetErrorRegister.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/prdfResetOperators.H b/src/usr/diag/prdf/common/framework/register/prdfResetOperators.H
index 1804f0b6b..bd4dc07af 100755
--- a/src/usr/diag/prdf/common/framework/register/prdfResetOperators.H
+++ b/src/usr/diag/prdf/common/framework/register/prdfResetOperators.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2005,2012 */
+/* COPYRIGHT International Business Machines Corp. 2005,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/register/prdfScanFacility.C b/src/usr/diag/prdf/common/framework/register/prdfScanFacility.C
index 310d37a98..6e0d2d9f4 100755
--- a/src/usr/diag/prdf/common/framework/register/prdfScanFacility.C
+++ b/src/usr/diag/prdf/common/framework/register/prdfScanFacility.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
@@ -34,6 +34,7 @@
#include <prdfScanFacility.H>
#include <prdfFlyWeight.C>
#include <prdfFlyWeightS.C>
+#include <prdfScomRegisterAccess.H>
#undef prdfScanFacility_C
@@ -51,25 +52,6 @@ namespace PRDF
//----------------------------------------------------------------------
// Internal Function Prototypes
//----------------------------------------------------------------------
-// special comparater - if address same and pointing to same access module then are equal
-bool operator==(const ScanCommRegisterChip & scrc1, const ScanCommRegisterChip & scrc2)
-{
- return((scrc1.GetAddress() == scrc2.GetAddress()) && (&(scrc1.GetHops()) == &(scrc2.GetHops())));
-}
-
-bool operator>=(const ScanCommRegisterChip & scrc1, const ScanCommRegisterChip & scrc2)
-{
- if (scrc1.GetAddress() == scrc2.GetAddress())
- return (&scrc1.GetHops()) >= (&scrc2.GetHops());
- return scrc1.GetAddress() >= scrc2.GetAddress();
-};
-
-bool operator<(const ScanCommRegisterChip & scrc1, const ScanCommRegisterChip & scrc2)
-{
- if (scrc1.GetAddress() == scrc2.GetAddress())
- return (&scrc1.GetHops()) < (&scrc2.GetHops());
- return scrc1.GetAddress() < scrc2.GetAddress();
-}
//----------------------------------------------------------------------
// Global Variables
@@ -81,28 +63,26 @@ NullRegister AttnTypeRegister::cv_null(1024);
// Member Function Specifications
//---------------------------------------------------------------------
-class ScanCommAccess;
-class ScanCommRegisters;
ScanFacility & ScanFacility::Access(void)
{
static ScanFacility sf;
return sf;
}
-//------------------------------------------------------------------------------
-SCAN_COMM_REGISTER_CLASS & ScanFacility::GetScanCommRegister(TARGETING::TargetHandle_t i_ptargetHandle,
- uint64_t address,
- uint32_t bitLength)
+//-----------------------------------------------------------------------------
+SCAN_COMM_REGISTER_CLASS & ScanFacility::GetScanCommRegister(
+ uint64_t address , uint32_t i_scomLength,TARGETING::TYPE i_type )
{
- HomRegisterAccessScom hraKey(i_ptargetHandle);
- HomRegisterAccessScom & hra = iv_scomAccessFw.get(hraKey);
- ScanCommRegisterChip scrKey(address,bitLength,hra);
+ ScomRegister scrKey(address ,i_scomLength ,i_type );
return iv_scomRegFw.get(scrKey);
}
//------------------------------------------------------------------------------
-SCAN_COMM_REGISTER_CLASS & ScanFacility::GetScanRingRegister(TARGETING::TargetHandle_t i_ptargetHandle,
- ScanRingField * start,
- ScanRingField * end)
+
+#if 0
+SCAN_COMM_REGISTER_CLASS & ScanFacility::GetScanRingRegister(
+ TARGETING::TargetHandle_t i_ptargetHandle,
+ ScanRingField * start,
+ ScanRingField * end)
{
uint32_t bitLength = 0;
for(ScanRingField * srf = start; srf != end; ++srf)
@@ -114,18 +94,22 @@ SCAN_COMM_REGISTER_CLASS & ScanFacility::GetScanRingRegister(TARGETING::TargetHa
ScanCommRegisterChip scrKey(start->registerId,bitLength,hra);
return iv_scomRegFw.get(scrKey);
}
+#endif
//------------------------------------------------------------------------------
-SCAN_COMM_REGISTER_CLASS & ScanFacility::GetNotRegister(SCAN_COMM_REGISTER_CLASS & i_arg)
+SCAN_COMM_REGISTER_CLASS & ScanFacility::GetNotRegister(
+ SCAN_COMM_REGISTER_CLASS & i_arg )
{
NotRegister r(i_arg);
return iv_notRegFw.get(r);
}
-//------------------------------------------------------------------------------
+//-----------------------------------------------------------------------------
-SCAN_COMM_REGISTER_CLASS & ScanFacility::GetLeftShiftRegister(SCAN_COMM_REGISTER_CLASS & i_arg, uint16_t i_amount)
+SCAN_COMM_REGISTER_CLASS & ScanFacility::GetLeftShiftRegister(
+ SCAN_COMM_REGISTER_CLASS & i_arg,
+ uint16_t i_amount )
{
LeftShiftRegister r(i_arg, i_amount);
return iv_leftRegFw.get(r);
@@ -133,7 +117,9 @@ SCAN_COMM_REGISTER_CLASS & ScanFacility::GetLeftShiftRegister(SCAN_COMM_REGISTE
//------------------------------------------------------------------------------
-SCAN_COMM_REGISTER_CLASS & ScanFacility::GetRightShiftRegister(SCAN_COMM_REGISTER_CLASS & i_arg, uint16_t i_amount)
+SCAN_COMM_REGISTER_CLASS & ScanFacility::GetRightShiftRegister(
+ SCAN_COMM_REGISTER_CLASS & i_arg,
+ uint16_t i_amount )
{
RightShiftRegister r(i_arg, i_amount);
return iv_rightRegFw.get(r);
@@ -142,8 +128,9 @@ SCAN_COMM_REGISTER_CLASS & ScanFacility::GetRightShiftRegister(SCAN_COMM_REGIST
//------------------------------------------------------------------------------
-SCAN_COMM_REGISTER_CLASS & ScanFacility::GetAndRegister(SCAN_COMM_REGISTER_CLASS & i_left,
- SCAN_COMM_REGISTER_CLASS & i_right)
+SCAN_COMM_REGISTER_CLASS & ScanFacility::GetAndRegister(
+ SCAN_COMM_REGISTER_CLASS & i_left,
+ SCAN_COMM_REGISTER_CLASS & i_right )
{
AndRegister r(i_left,i_right);
return iv_andRegFw.get(r);
@@ -151,20 +138,21 @@ SCAN_COMM_REGISTER_CLASS & ScanFacility::GetAndRegister(SCAN_COMM_REGISTER_CLAS
//------------------------------------------------------------------------------
-SCAN_COMM_REGISTER_CLASS & ScanFacility::GetOrRegister(
+SCAN_COMM_REGISTER_CLASS & ScanFacility::GetOrRegister(
SCAN_COMM_REGISTER_CLASS & i_left,
SCAN_COMM_REGISTER_CLASS & i_right )
{
- OrRegister r(i_left, i_right);
- return iv_orRegFw.get(r);
+ OrRegister r(i_left,i_right);
+ return iv_orRegFw.get(r);
}
-//------------------------------------------------------------------------------
+//-----------------------------------------------------------------------------
-SCAN_COMM_REGISTER_CLASS & ScanFacility::GetAttnTypeRegister(SCAN_COMM_REGISTER_CLASS & i_check,
- SCAN_COMM_REGISTER_CLASS & i_recov,
- SCAN_COMM_REGISTER_CLASS & i_special,
- SCAN_COMM_REGISTER_CLASS & i_proccs)
+SCAN_COMM_REGISTER_CLASS & ScanFacility::GetAttnTypeRegister(
+ SCAN_COMM_REGISTER_CLASS & i_check,
+ SCAN_COMM_REGISTER_CLASS & i_recov,
+ SCAN_COMM_REGISTER_CLASS & i_special,
+ SCAN_COMM_REGISTER_CLASS & i_proccs )
{
AttnTypeRegister r(i_check,i_recov,i_special,i_proccs);
return iv_attnRegFw.get(r);
@@ -172,11 +160,50 @@ SCAN_COMM_REGISTER_CLASS & ScanFacility::GetAttnTypeRegister(SCAN_COMM_REGISTER
//------------------------------------------------------------------------------
-SCAN_COMM_REGISTER_CLASS & ScanFacility::GetConstantRegister(BIT_STRING_CLASS i_val)
+SCAN_COMM_REGISTER_CLASS & ScanFacility::GetConstantRegister(
+ BIT_STRING_CLASS i_val )
{
ConstantRegister r(i_val);
return iv_constRegFw.get(r);
}
+//------------------------------------------------------------------------------
+SCAN_COMM_REGISTER_CLASS & ScanFacility::GetPluginRegister(
+ SCAN_COMM_REGISTER_CLASS & i_flyweight,
+ ExtensibleChip & i_RuleChip )
+{
+ ScomRegisterAccess l_regKey ( i_flyweight,&i_RuleChip );
+ return iv_pluginRegFw.get(l_regKey);
+
+}
+//-----------------------------------------------------------------------------
+void ScanFacility::ResetPluginRegister()
+{
+ PRDF_INF( "ScanFacility.ResetPluginRegister()" );
+ iv_pluginRegFw.clear();
+
+
+}
+
+//------------------------------------------------------------------------------
+#ifdef __MEM_PROFILING
+void ScanFacility::printStats()
+{
+ PRDF_DTRAC("ScomRegister");
+ iv_scomRegFw.printStats();
+ PRDF_DTRAC("Not Register");
+ iv_notRegFw.printStats();
+ PRDF_DTRAC("Left Register");
+ iv_leftRegFw.printStats();
+ PRDF_DTRAC("Right Register");
+ iv_rightRegFw.printStats();
+ PRDF_DTRAC("And Register");
+ iv_andRegFw.printStats();
+ PRDF_DTRAC("Or Register");
+ iv_orRegFw.printStats();
+
+}
+
+#endif
} // end namespace PRDF
diff --git a/src/usr/diag/prdf/common/framework/register/prdfScanFacility.H b/src/usr/diag/prdf/common/framework/register/prdfScanFacility.H
index 8087b811c..57f801d03 100755
--- a/src/usr/diag/prdf/common/framework/register/prdfScanFacility.H
+++ b/src/usr/diag/prdf/common/framework/register/prdfScanFacility.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
@@ -37,22 +37,21 @@
#include <prdfFlyWeightS.H>
#include <vector>
#include <prdfHomRegisterAccess.H>
-#include <iipScanCommRegisterChip.h>
+#include <prdfScomRegister.H>
+#include <prdfScomRegisterAccess.H>
#include <prdfOperatorRegister.H>
#include <prdfPlatServices.H>
namespace PRDF
{
-//--------------------------------------------------------------------
-// Forward References
-//--------------------------------------------------------------------
-class SCAN_COMM_REGISTER_CLASS;
+
/**
PRD Scan Facility
@author Doug Gilbert
- @par The Scan facility is used by PRD to access Scan and Scan Comm functions.
- It attempts to reduce duplicate objects and their aggragates as must as possible.
+ @par The Scan facility is used by PRD to access Scan and Scan Comm
+ @ functions.It attempts to reduce duplicate objects and their
+ @ aggragates as must as possible.
@code
ScanFacility & sf = ScanFacility::Access();
SCAN_COMM_REGISTER_CLASS & scr = sf.GetScanCommRegister(chipId,Address,bitLen);
@@ -60,10 +59,12 @@ class SCAN_COMM_REGISTER_CLASS;
ScanRingField srf[] =
{{hregAliasId1 , fieldBitLength1},
{hregAliasId2 , fieldBitLength2}};
- SCAN_COMM_REGISTER_CLASS & sr = s.GetScanRingRegister(aTARGETING::TargetHandle_t,srf,srf+2);
+ SCAN_COMM_REGISTER_CLASS & sr = s.GetScanRingRegister(aTARGETING::
+ TargetHandle_t,srf,srf+2);
scr.Read() .... SCAN_COMM_REGISTER_CLASS
// Note you can't write a scan ring register from PRD
- // you can only read scan ring registers from PRD if the global attention type is CHECK_STOP
+ // you can only read scan ring registers from PRD if the global attention
+ // type is CHECK_STOP
@endcode
*/
class ScanFacility
@@ -74,90 +75,129 @@ public:
*/
static ScanFacility & Access(void);
- /**
- Get a scan comm register for this functional unit
- @param Target Handle see target.H
- @param scan comm address
- @param number of bits in the register
- @pre Address of register must correspond to the functional unit indicated
- @post If the scr does not yet exist it will be created otherwise a reference
- to one already in existance (same address and functional unit) is returned.
- */
- SCAN_COMM_REGISTER_CLASS & GetScanCommRegister(TARGETING::TargetHandle_t i_ptargetHandle,
- uint64_t address,
- uint32_t bitLength);
+ /**
+ * @brief Returns reference to flyweight object of type ScomRegister.
+ * An object of given address is first searched in flyweight.
+ * If object exist, reference to existing object is returned
+ * else a new one is created.
+ * @param i_address address of the register
+ * @param i_scomLength length of the bit string
+ * @param i_type type of target associated with register
+ * @return returns reference to flyweight object from factory
+ */
+ SCAN_COMM_REGISTER_CLASS & GetScanCommRegister(
+ uint64_t address ,uint32_t i_scomLength,
+ TARGETING::TYPE i_type );
/**
Get a scan ring register
- @param i_ptargetHandle handle to target in targeting
- @param pointer to list an array of ScanRingField see prdfHomRegisterAccess.H
- @param pointer to last entry+1 of ScanFingField array
- @pre AliasId's for the scan ring registers MUST exist in the function unit associated with the Id given
- @post Access object and scr created for this register. the bit length of the scr returned will be the sum
- of all the field lengths provided.
- @note an SCR based on a scan ring register can not be written, and should only be read if the global
+ * @param i_ptargetHandle handle to target in targeting
+ * @param pointer to list an array of ScanRingField see prdfHomRegisterAccess.H
+ * @param pointer to last entry+1 of ScanFingField array
+ * @pre AliasId's for the scan ring registers MUST exist in the function unit
+ associated with the Id given
+ * @post Access object and scr created for this register. the bit length of the
+ scr returned will be the sum of all the field lengths provided.
+ * @note an SCR based on a scan ring register can not be written, and should
+ only be read if the global
attention type is CHECK_STOP.
*/
- SCAN_COMM_REGISTER_CLASS & GetScanRingRegister(TARGETING::TargetHandle_t i_ptargetHandle,
- ScanRingField * start,
- ScanRingField * end);
+
+//FIXME Need to discuss before deleting the function below
+#if 0
+ SCAN_COMM_REGISTER_CLASS & GetScanRingRegister(
+ TARGETING::TargetHandle_t i_ptargetHandle,
+ ScanRingField * start,
+ ScanRingField * end);
+#endif
/**
- * Get a register that bitwise inverts the bitstring of a register when read or written to
- * @param SCAN_COMM_REGISTER_CLASS source
- * @post Only one instance of the register with this SCR paramter will exist
+ * @brief Get a register that bitwise inverts the bitstring of a register
+ * when read or written to
+ * @param SCAN_COMM_REGISTER_CLASS source
+ * @post Only one instance of the register with this SCR paramter will exist
*/
SCAN_COMM_REGISTER_CLASS & GetNotRegister(SCAN_COMM_REGISTER_CLASS & i_arg);
/**
- * Get a register that bitwise left shift the bitstring of a register when read or written to
- * @param SCAN_COMM_REGISTER_CLASS source
- * @post Only one instance of the register with this SCR paramter and amount will exist
+ * @brief Get a register that bitwise left shift the bitstring of a register
+ * when read or written to
+ * @param SCAN_COMM_REGISTER_CLASS source
+ * @post Only one instance of the register with this SCR paramter and amount
+ @ will exist
*/
- SCAN_COMM_REGISTER_CLASS & GetLeftShiftRegister(SCAN_COMM_REGISTER_CLASS & i_arg, uint16_t i_amount);
+ SCAN_COMM_REGISTER_CLASS & GetLeftShiftRegister(
+ SCAN_COMM_REGISTER_CLASS & i_arg, uint16_t i_amount);
/**
- * Get a register that bitwise right shift the bitstring of a register when read or written to
+ * @brief Get a register that bitwise right shift the bitstring of a register
+ * when read or written to
* @param SCAN_COMM_REGISTER_CLASS source
- * @post Only one instance of the register with this SCR paramter and amount will exist
+ * @post Only one instance of the register with this SCR paramter and amount
+ * @ will exist
*/
- SCAN_COMM_REGISTER_CLASS & GetRightShiftRegister(SCAN_COMM_REGISTER_CLASS & i_arg, uint16_t i_amount);
+ SCAN_COMM_REGISTER_CLASS & GetRightShiftRegister(
+ SCAN_COMM_REGISTER_CLASS & i_arg, uint16_t i_amount);
/**
- * Get a register that bit-wise ANDs the bitstring of two register when read or written to
- * @param The 2 SCR 's to AND
- * @posrt Only one instance of the register with these SCRs will exist
+ * @brief Get a register that bit-wise ANDs the bitstring of two register
+ * when read or written to
+ * @param The 2 SCR 's to AND
+ * @posrt Only one instance of the register with these SCRs will exist
*/
SCAN_COMM_REGISTER_CLASS & GetAndRegister(SCAN_COMM_REGISTER_CLASS & i_left,
SCAN_COMM_REGISTER_CLASS & i_right);
/**
- * Get a register that bitwise ORs the bitstrings of two register when read or written
- * @param the 2 SCR's to OR
- * @post Only one instance of the register with these SCR's will exist
+ * @brief Get a register that bitwise ORs the bitstrings of two register when
+ * read or written
+ * @param the 2 SCR's to OR
+ * @post Only one instance of the register with these SCR's will exist
*/
SCAN_COMM_REGISTER_CLASS & GetOrRegister(SCAN_COMM_REGISTER_CLASS & i_left,
SCAN_COMM_REGISTER_CLASS & i_right);
/**
- * Get a AttnTypeRegister
+ * @brief Get a AttnTypeRegister
* @params 3 scr Registers
* @post only one instance of the register with these SCR's will exist
*/
- SCAN_COMM_REGISTER_CLASS & GetAttnTypeRegister(SCAN_COMM_REGISTER_CLASS & i_check,
- SCAN_COMM_REGISTER_CLASS & i_recov,
- SCAN_COMM_REGISTER_CLASS & i_special,
- SCAN_COMM_REGISTER_CLASS & i_proccs);
+ SCAN_COMM_REGISTER_CLASS & GetAttnTypeRegister(
+ SCAN_COMM_REGISTER_CLASS & i_check,
+ SCAN_COMM_REGISTER_CLASS & i_recov,
+ SCAN_COMM_REGISTER_CLASS & i_special,
+ SCAN_COMM_REGISTER_CLASS & i_proccs);
/**
- * Get a ConstantRegister
+ * @brief Get a PrdfConstantRegister
* @param BIT_STRING_CLASS - the bit string constant to use.
* @post only one instance of the register with this BIT_STRING value will
* exist.
*/
SCAN_COMM_REGISTER_CLASS & GetConstantRegister(BIT_STRING_CLASS i_val);
+ /**
+ * @brief Get a plugin register
+ * @param Reference to target less flyweight object
+ * @param RuleChip associatd with register
+ * @post only one instance of the register with this BIT_STRING value will
+ * exist.
+ */
+ SCAN_COMM_REGISTER_CLASS & GetPluginRegister(
+ SCAN_COMM_REGISTER_CLASS & i_flyweight,
+ ExtensibleChip & i_RuleChip );
+ /**
+ * @brief Delete all the plugin register
+ * @param None
+ * @post all the ScomRegisterAccess register flyweight object created for
+ * plugin shall be deleted
+ * exist.
+ */
+ void ResetPluginRegister();
+#ifdef __MEM_PROFILING
+ void printStats();
+#endif
/**
Destructor
@@ -166,38 +206,39 @@ public:
private: // functions
/**
Constructor
- @param
- @returns
- @pre
- @post
- @see
- @note
+ * @param
+ * @returns
+ * @pre
+ * @post
+ * @see
+ * @note
*/
ScanFacility() {}
- private: // Data
-
- typedef FlyWeight<HomRegisterAccessScom, 10> ScanCommAccess;
- typedef std::vector<HomRegisterAccessScan> ScanRingAccess;
- typedef FlyWeightS<ScanCommRegisterChip, 50> ScanCommRegisters;
- typedef FlyWeight<AttnTypeRegister, 50> AttnTypeRegisters;
- typedef FlyWeightS<AndRegister, 50> AndRegisters;
- typedef FlyWeightS<OrRegister, 10> OrRegisters;
- typedef FlyWeightS<NotRegister, 50> NotRegisters;
- typedef FlyWeightS<LeftShiftRegister, 10> LeftShiftRegisters;
- typedef FlyWeightS<RightShiftRegister, 10> RightShiftRegisters;
- typedef FlyWeight<ConstantRegister, 10> ConstantRegisters;
-
- ScanCommAccess iv_scomAccessFw;
- ScanRingAccess iv_scanAccessList;
- ScanCommRegisters iv_scomRegFw;
- AttnTypeRegisters iv_attnRegFw;
- AndRegisters iv_andRegFw;
- OrRegisters iv_orRegFw;
- NotRegisters iv_notRegFw;
- LeftShiftRegisters iv_leftRegFw;
- RightShiftRegisters iv_rightRegFw;
- ConstantRegisters iv_constRegFw;
+
+private: // Data
+ typedef FlyWeightS<ScomRegister,50> ScanCommRegisters;
+ //FIXME RTC 64345 Investigate benefit of changing below from FlyWeight to
+ //FlyWeightS
+ typedef FlyWeight<AttnTypeRegister,50> AttnTypeRegisters;
+ typedef FlyWeightS<AndRegister,50> AndRegisters;
+ typedef FlyWeightS<OrRegister,10> OrRegisters;
+ typedef FlyWeightS<NotRegister,50> NotRegisters;
+ typedef FlyWeightS<LeftShiftRegister,10> LeftShiftRegisters;
+ typedef FlyWeightS<RightShiftRegister, 10> RightShiftRegisters;
+ typedef FlyWeight<ConstantRegister, 10> ConstantRegisters;
+ typedef FlyWeightS<ScomRegisterAccess, 10> PluginRegisters;
+
+ ScanCommRegisters iv_scomRegFw;
+ AttnTypeRegisters iv_attnRegFw;
+ AndRegisters iv_andRegFw;
+ OrRegisters iv_orRegFw;
+ NotRegisters iv_notRegFw;
+ LeftShiftRegisters iv_leftRegFw;
+ RightShiftRegisters iv_rightRegFw;
+ ConstantRegisters iv_constRegFw;
+ PluginRegisters iv_pluginRegFw;
+
};
} // end namespace PRDF
diff --git a/src/usr/diag/prdf/common/framework/register/prdfScomRegister.C b/src/usr/diag/prdf/common/framework/register/prdfScomRegister.C
new file mode 100755
index 000000000..6074be96e
--- /dev/null
+++ b/src/usr/diag/prdf/common/framework/register/prdfScomRegister.C
@@ -0,0 +1,219 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: prdfScomRegister.C $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
+
+// Module Description **************************************************
+//
+// Description: This module provides the implementation for the PRD Scan
+// Comm Register Chip class.
+//
+// End Module Description **********************************************
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+
+#include <iipchip.h>
+#include <prdfScomRegister.H>
+#include <iipconst.h>
+#include <iipbits.h>
+#include <prdfMain.H>
+#include <prdf_ras_services.H>
+#include <prdfRegisterCache.H>
+#include <prdfHomRegisterAccess.H>
+#include <prdfPlatServices.H>
+#include <prdfExtensibleChip.H>
+
+//----------------------------------------------------------------------
+// User Types
+//----------------------------------------------------------------------
+
+//----------------------------------------------------------------------
+// Constants
+//----------------------------------------------------------------------
+
+//----------------------------------------------------------------------
+// Macros
+//----------------------------------------------------------------------
+
+//----------------------------------------------------------------------
+// Internal Function Prototypes
+//----------------------------------------------------------------------
+
+//----------------------------------------------------------------------
+// Global Variables
+//----------------------------------------------------------------------
+
+//---------------------------------------------------------------------
+// Member Function Specifications
+//---------------------------------------------------------------------
+
+// --------------------------------------------------------------------
+namespace PRDF
+{
+
+// ---------------------------------------------------------------------
+
+void ScomRegister::SetBitString( const BIT_STRING_CLASS *bs )
+{
+ BIT_STRING_CLASS & l_string = AccessBitString();
+ l_string.SetBits(*bs);
+}
+
+
+// ---------------------------------------------------------------------
+
+const BIT_STRING_CLASS *ScomRegister::GetBitString( ATTENTION_TYPE i_type )const
+{
+ bool l_readStat = false;
+ return &( readCache( l_readStat ) );
+}
+// ---------------------------------------------------------------------
+BIT_STRING_CLASS & ScomRegister::AccessBitString( )
+{
+ bool l_readStat = false;
+ return ( readCache( l_readStat ) );
+
+}
+
+//---------------------------------------------------------------------
+
+uint32_t ScomRegister::Read( )
+{
+ int32_t rc = SUCCESS;
+ bool l_readStat = false;
+ readCache( l_readStat );
+ if( false == l_readStat )
+ {
+ //updating cache by reading hardware .So that next read need not access
+ //hardware
+ rc = ForceRead();
+ }
+
+ return(rc);
+}
+
+// ----------------------------------------------------------------------------
+uint32_t ScomRegister::ForceRead()
+{
+ int32_t rc = SUCCESS;
+ bool l_readStat = false;
+ BIT_STRING_CLASS & bs = readCache( l_readStat );
+ rc = Access( bs,MopRegisterAccess::READ );
+ if( SUCCESS != rc )
+ {
+ ExtensibleChip* l_pChip = getChip( );
+ flushCache( l_pChip );
+ }
+
+ return rc;
+}
+//------------------------------------------------------------------------------
+
+uint32_t ScomRegister::Write()
+{
+ uint32_t rc = FAIL;
+ bool l_entryBeforeWrite = false;
+ BIT_STRING_CLASS & bs = readCache( l_entryBeforeWrite );
+ PRDF_ASSERT( true == l_entryBeforeWrite );
+ rc = Access( bs, MopRegisterAccess::WRITE );
+
+ return(rc);
+}
+//------------------------------------------------------------------------------
+uint32_t ScomRegister::Access( BIT_STRING_CLASS & bs,
+ MopRegisterAccess::Operation op ) const
+{
+ int32_t l_rc = SCR_ACCESS_FAILED;
+ TARGETING::TargetHandle_t i_pchipTarget = getChip()->GetChipHandle();
+ l_rc = getScomService().Access( i_pchipTarget,bs,iv_scomAddress,op );
+
+ return(l_rc);
+}
+//-----------------------------------------------------------------------------
+ExtensibleChip* ScomRegister::getChip( )const
+{
+ ExtensibleChip* l_pchip = NULL;
+ l_pchip = ServiceDataCollector::getChipAnalyzed();
+ TARGETING::TYPE l_type = PlatServices::getTargetType(
+ l_pchip->GetChipHandle() );
+ PRDF_ASSERT( iv_chipType == l_type )
+ return l_pchip;
+}
+//-----------------------------------------------------------------------------
+BIT_STRING_CLASS & ScomRegister::readCache( bool & o_existingEntry ) const
+{
+ ExtensibleChip* l_pChip = getChip( );
+ RegDataCache & regDump = RegDataCache::getCachedRegisters();
+ return regDump.read( l_pChip,this,o_existingEntry );
+
+}
+//-----------------------------------------------------------------------------
+
+void ScomRegister::flushCache( ExtensibleChip *i_pChip ) const
+{
+ RegDataCache & regDump = RegDataCache::getCachedRegisters();
+ if( NULL == i_pChip )
+ {
+ regDump.flush();
+ }
+ else
+ {
+ regDump.flush( i_pChip ,this );
+ }
+}
+
+//-----------------------------------------------------------------------------
+
+bool ScomRegister::operator == ( const ScomRegister & i_rightRegister ) const
+{
+ if( iv_scomAddress == i_rightRegister.GetAddress() )
+ {
+ return ( iv_chipType == i_rightRegister.getChipType() );
+ }
+ else
+ {
+ return false ;
+ }
+
+}
+
+//-----------------------------------------------------------------------------
+bool ScomRegister::operator < ( const ScomRegister & i_rightRegister ) const
+{
+ if( iv_scomAddress == i_rightRegister.GetAddress() )
+ {
+ return ( iv_chipType == i_rightRegister.getChipType() );
+ }
+ else
+ {
+ return( iv_scomAddress < i_rightRegister.GetAddress() );
+ }
+
+
+}
+//-----------------------------------------------------------------------------
+bool ScomRegister::operator >= ( const ScomRegister & i_rightRegister ) const
+{
+ return !( *this < i_rightRegister );
+}
+}//namespace PRDF ends
diff --git a/src/usr/diag/prdf/common/framework/register/prdfScomRegister.H b/src/usr/diag/prdf/common/framework/register/prdfScomRegister.H
new file mode 100755
index 000000000..41a611061
--- /dev/null
+++ b/src/usr/diag/prdf/common/framework/register/prdfScomRegister.H
@@ -0,0 +1,224 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: prdfScomRegister.H $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
+
+#ifndef iipScomRegister_h
+#define iipScomRegister_h
+
+/**
+ * @brief Models register.It does not contain target.
+ *
+ * This class stores the hash id and bit length of scom registers It models
+ * registers without maintaining target information. Instances of this class
+ * are shared across rule chip objects of same type.Once prd object model is
+ * built, instances of this register are saved in flyweight.These instances
+ * persist as long as prd object model survives.
+ */
+
+#include <iipscr.h>
+#include <iipbits.h>
+#include <iipMopRegisterAccess.h>
+
+namespace PRDF
+{
+
+// Forward References
+class CHIP_CLASS;
+class MopsRegisterAccess;
+class ExtensibleChip;
+
+
+
+class ScomRegister : public SCAN_COMM_REGISTER_CLASS
+{
+public:
+
+ /**
+ * @brief constructor
+ * @param i_address address of the register
+ * @param i_bitLength bit length of register
+ * @param i_targetType target type associated with register
+ */
+ ScomRegister( uint64_t i_address ,uint32_t i_bitLength,TARGETING::TYPE
+ i_targetType ) :
+ SCAN_COMM_REGISTER_CLASS(),
+ iv_bitLength( i_bitLength ),
+ iv_chipType( i_targetType ),
+ iv_scomAddress( i_address )
+ { }
+
+ /**
+ * @brief constructor .Added this because we save object of this type in
+ * @ FlyweightS
+ */
+ ScomRegister():
+ SCAN_COMM_REGISTER_CLASS( ),
+ iv_bitLength(0),
+ iv_chipType(TARGETING::TYPE_NA),iv_scomAddress(0)
+ { }
+
+
+
+ /**
+ * @brief Returns the pointer to bit string
+ * @param i_type attention type
+ * @return BIT_STRING_CLASS * pointer to bit string
+ */
+
+ virtual const BIT_STRING_CLASS * GetBitString(ATTENTION_TYPE i_type =
+ INVALID_ATTENTION_TYPE) const;
+ /**
+ * @brief Updates bit string contents associated with register
+ * @param i_bs poiner to bit string
+ * @return Nil
+ */
+
+ virtual void SetBitString(const BIT_STRING_CLASS * i_bs) ;
+ /**
+ * @brief Returns length of the bits string associated with register
+ * @return length of bit string
+ */
+ uint32_t GetBitLength(void) const { return iv_bitLength ;}
+ /**
+ * @brief Directly reads from hardware register
+ * @return SUCCESS|FAIL
+ */
+ virtual uint32_t ForceRead();
+ /**
+ * @brief Returns contents of register.If entry does not exist in cache
+ * a fresh entry is created and hardware is read.
+ * @return SUCCESS|FAIL
+ */
+ virtual uint32_t Read( );
+ /**
+ * @brief Writes cache contents to register.
+ * @return SUCCESS|FAIL
+ */
+ virtual uint32_t Write( );
+ /**
+ * @brief Returns the hash id of register
+ * @return returns hash id of register
+ * @pre None
+ * @post None
+ * @note
+ */
+ virtual uint16_t GetId(void) const { return iv_shortId; };
+ /**
+ * @brief Sets the hash id of register
+ * @param i_id hash id of register
+ * @return Nil
+ */
+ virtual void SetId(uint16_t i_id) { iv_shortId = i_id; };
+ /**
+ * @brief Returns type of Target associated with register.
+ * @return Refer to function description
+ */
+ TARGETING::TYPE getChipType()const{ return iv_chipType ;} ;
+ /**
+ * @brief Returns scom address of register
+ * @return Refer to function description
+ */
+ uint64_t GetAddress( ) const {return iv_scomAddress ;};
+ /**
+ * @brief compares two ScomRegisterAccess register for equality
+ * @param i_rightRegister register to be compared against
+ * @return Returns true if registers are equal false otherwise
+ */
+ bool operator == ( const ScomRegister & i_rightRegister ) const ;
+ /**
+ * @brief defines < operation for ScomRegisterAccess
+ * @param i_rightRegister register to be compared against
+ * @return Returns false if i_rightRegisters is less and true otherwise
+ */
+ bool operator < ( const ScomRegister & i_rightRegister ) const ;
+ /**
+ * @brief defines >= operation for ScomRegisterAccess
+ * @param i_rightRegister register to be compared against
+ * @return Returns true if registers is >= i_rightRegister false
+ * otherwise
+ */
+ bool operator >= ( const ScomRegister & i_rightRegister ) const;
+
+ protected: // Functions
+ /**
+ * @brief copy constructor
+ * @param i_scomRegister scomRegister instance to be copied
+ */
+ ScomRegister( const SCAN_COMM_REGISTER_CLASS & i_scomRegister ):
+ SCAN_COMM_REGISTER_CLASS(),
+ iv_bitLength( i_scomRegister.GetBitLength() ),
+ iv_shortId( i_scomRegister.GetId() ),
+ iv_chipType( i_scomRegister.getChipType() ),
+ iv_scomAddress( i_scomRegister.GetAddress() )
+ { }
+
+
+ /**
+ * @brief Returns reference to bit string associated with register
+ * @return Refer to function description
+ */
+ virtual BIT_STRING_CLASS & AccessBitString( );
+ /**
+ * @brief Gets the register read and write done by calling access
+ * function of scom accessor service.
+ * @param reference to bit string maintained in caller class
+ * @param Read or write operation
+ * @return [SUCCESS|FAIL]
+ */
+ uint32_t Access( BIT_STRING_CLASS & bs,
+ MopRegisterAccess::Operation op )const;
+ /**
+ * @brief Returns rulechip poiner associated with the register
+ * @return Refer to function description
+ */
+
+ virtual ExtensibleChip* getChip( )const ;
+
+
+private: // functions
+
+ friend class CaptureData;
+ /**
+ * @brief Reads register contents from cache
+ * @param reference to bool .Expected to be set to true if entry in
+ * cache already exist and false if it is a newly created
+ * entry.
+ * @return Reference to bit string buffer maintained in cache
+ */
+ BIT_STRING_CLASS & readCache( bool & o_existingEntry ) const;
+ /**
+ * @brief Deletes one or all entry in the cache
+ * @param RuleChip pointer associated with register
+ * @return Nil
+ */
+ void flushCache( ExtensibleChip *i_pChip = NULL ) const ;
+
+private: // Data
+ uint32_t iv_bitLength; // bit length of scom
+ uint16_t iv_shortId; // unique hash id of register
+ TARGETING::TYPE iv_chipType ; // type of target associated with register
+ uint64_t iv_scomAddress; // scom address associated with regiser
+};
+
+}//namespace PRDF ends
+
+#endif
diff --git a/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.inl b/src/usr/diag/prdf/common/framework/register/prdfScomRegisterAccess.C
index 6bd0ac347..3d076d16e 100755..100644
--- a/src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.inl
+++ b/src/usr/diag/prdf/common/framework/register/prdfScomRegisterAccess.C
@@ -1,11 +1,11 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/diag/prdf/common/framework/register/iipScanCommRegisterAccess.inl $ */
+/* $Source: prdfScomRegisterAccess.C $ */
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
@@ -21,53 +21,77 @@
/* */
/* IBM_PROLOG_END_TAG */
-// Module Description **************************************************
-//
-// Description: This module provides the inline implementation for the
-// PRD Scan Comm Register Access class.
-//
-// End Module Description **********************************************
+#include <prdfScomRegisterAccess.H>
+#include <prdfScanFacility.H>
+#include <prdfRegisterCache.H>
+#include <prdfExtensibleChip.H>
+namespace PRDF
+{
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
+ScomRegisterAccess::ScomRegisterAccess(
+ const SCAN_COMM_REGISTER_CLASS &i_pRegister ,
+ ExtensibleChip* i_pRuleChip
+ )
+ :ScomRegister( i_pRegister ),
+ iv_containerChip( i_pRuleChip )
+{
+}
//----------------------------------------------------------------------
-// User Types
-//----------------------------------------------------------------------
-//----------------------------------------------------------------------
-// Constants
-//----------------------------------------------------------------------
+ScomRegisterAccess::ScomRegisterAccess( uint64_t i_scomAddress,
+ uint32_t i_bitLength,
+ ExtensibleChip* i_pRuleChip ):
+ ScomRegister( i_scomAddress ,i_bitLength,
+ PlatServices::getTargetType( i_pRuleChip->GetChipHandle())),
+ iv_containerChip( i_pRuleChip )
+{
+}
-//----------------------------------------------------------------------
-// Macros
-//----------------------------------------------------------------------
//----------------------------------------------------------------------
-// Internal Function Prototypes
-//----------------------------------------------------------------------
-//----------------------------------------------------------------------
-// Global Variables
+ExtensibleChip* ScomRegisterAccess::getChip( )const
+{
+ return iv_containerChip;
+}
+
//----------------------------------------------------------------------
-//---------------------------------------------------------------------
-// Member Function Specifications
-//---------------------------------------------------------------------
+bool ScomRegisterAccess::operator == (
+ const ScomRegisterAccess & i_rightRegister ) const
+{
+ if( GetAddress() == i_rightRegister.GetAddress() )
+ {
+ return ( getChip() == i_rightRegister.getChip() );
+ }
+ else
+ {
+ return false ;
+ }
-namespace PRDF
+}
+//----------------------------------------------------------------------
+
+bool ScomRegisterAccess::operator < (
+ const ScomRegisterAccess & i_rightRegister ) const
{
+ if( GetAddress() == i_rightRegister.GetAddress() )
+ {
+ return ( getChip() < i_rightRegister.getChip() );
+ }
+ else
+ {
+ return ( GetAddress() < i_rightRegister.GetAddress() );
+ }
+}
-inline
-ScanCommRegisterAccess::ScanCommRegisterAccess(
- uint64_t ra,
- MopRegisterAccess & hopsAccessor)
-:
-SCAN_COMM_REGISTER_CLASS(ra),
-synch(),
-hops(&hopsAccessor)
+//----------------------------------------------------------------------
+bool ScomRegisterAccess::operator >= (
+ const ScomRegisterAccess & i_right ) const
{
+ return !( *this < i_right );
}
-} // end namespace PRDF
+//----------------------------------------------------------------------
+}//namespace PRDF ends
diff --git a/src/usr/diag/prdf/common/framework/register/prdfScomRegisterAccess.H b/src/usr/diag/prdf/common/framework/register/prdfScomRegisterAccess.H
new file mode 100644
index 000000000..84dcbb930
--- /dev/null
+++ b/src/usr/diag/prdf/common/framework/register/prdfScomRegisterAccess.H
@@ -0,0 +1,117 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: prdfScomRegisterAccess.H $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
+/* */
+/* p1 */
+/* */
+/* Object Code Only (OCO) source materials */
+/* Licensed Internal Code Source Materials */
+/* IBM HostBoot Licensed Internal Code */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* Origin: 30 */
+/* */
+/* IBM_PROLOG_END_TAG */
+
+#ifndef __PRDF_REGISTER_
+#define __PRDF_REGISTER_
+
+#include <prdfScomRegister.H>
+#include <prdfBitString.H>
+#include <prdfPlatServices.H>
+
+/**
+ * @brief Models register.This model of register has target info
+ *
+ * In order to reduce the register objects required by PRD to do attention
+ * analysis, these are shared across all the RuleChip objects associated with
+ * target of same type.In order to realize this,target info is taken out of
+ * register object .RuleChip contains target info.During Analysis ,pointer to
+ * Rulechip under analysis is maintained in Service Data collector.During
+ * register Read and Write,target info is obtained by register from service data
+ * collector.This idea fails when getRegister is called for Register read and
+ * write.It may be called from plugin code which may use a RuleChip different
+ * from the one in SDC.We would like to avoid SDC getting updated from multiple
+ * places.To simplify solution for this use case, a wrapper register is required
+ * .This register model knows which rule chip it is associated with.When plugin
+ * code calls getRegister ,instead of returning targetless flyweight object,it
+ * returns an object of class ScomRegisterAccess.Since register Read Write is
+ * in parent class ,it's just a container for Rulechip pointer giving us a way
+ * to do scom without having to look for associated target/rule chip somewhere
+ * else.
+ */
+
+namespace PRDF
+{
+class ScomRegisterAccess : public ScomRegister
+{
+ public :
+ /**
+ * @brief constructor
+ * @param i_Register Reference to flyweight register
+ * @param i_pchip RuleChip associated with register
+ */
+ ScomRegisterAccess( const SCAN_COMM_REGISTER_CLASS & i_Register,
+ ExtensibleChip* i_pchip );
+ /**
+ * @brief constructor
+ * @param i_scomAddress scom address of register
+ * @param i_bitLength scom length
+ * @param i_pchip RuleChip to which register belongs
+ */
+ ScomRegisterAccess( uint64_t i_scomAddress,uint32_t i_bitLength,
+ ExtensibleChip* i_pchip );
+ /**
+ * @brief constructor
+ */
+ ScomRegisterAccess():ScomRegister( ),iv_containerChip ( NULL ){ };
+
+ /**
+ * @brief Destructor
+ */
+ ~ScomRegisterAccess(){ };
+ /**
+ * @brief Returns pointer to rulechip associated with register
+ * @return Returns rule chip pointer
+ */
+
+ virtual ExtensibleChip* getChip( ) const;
+ /**
+ * @brief compares two ScomRegisterAccess register for equality
+ * @param i_rightRegister register to be compared against
+ * @return Returns true if registers are equal false otherwise
+ */
+ bool operator == ( const ScomRegisterAccess & i_rightRegister ) const;
+ /**
+ * @brief defines < operation for ScomRegisterAccess
+ * @param i_rightRegister register to be compared against
+ * @return Returns false if i_rightRegisters is less and true otherwise
+ */
+ bool operator < ( const ScomRegisterAccess & i_rightRegister ) const;
+ /**
+ * @brief defines >= operation for ScomRegisterAccess
+ * @param i_right register to be compared against
+ * @return Returns true if registers is >= i_rightRegister false
+ * otherwise
+ */
+ bool operator >= ( const ScomRegisterAccess & i_right ) const;
+
+
+ private://Data
+
+ ExtensibleChip* iv_containerChip;
+
+
+};
+
+}//namepsace PRDF ends
+#endif
+
diff --git a/src/usr/diag/prdf/common/framework/register/xspprdAndResetErrorRegister.h b/src/usr/diag/prdf/common/framework/register/xspprdAndResetErrorRegister.h
index 38f7e863f..f5a5fcc57 100755
--- a/src/usr/diag/prdf/common/framework/register/xspprdAndResetErrorRegister.h
+++ b/src/usr/diag/prdf/common/framework/register/xspprdAndResetErrorRegister.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2001,2012 */
+/* COPYRIGHT International Business Machines Corp. 2001,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipAnalyzeChipResolution.h b/src/usr/diag/prdf/common/framework/resolution/iipAnalyzeChipResolution.h
index 8d5239cee..7eff99535 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipAnalyzeChipResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipAnalyzeChipResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1997,2012 */
+/* COPYRIGHT International Business Machines Corp. 1997,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipCallAttnResolution.h b/src/usr/diag/prdf/common/framework/resolution/iipCallAttnResolution.h
index dd5f277cf..12ccddaf2 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipCallAttnResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipCallAttnResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1997,2012 */
+/* COPYRIGHT International Business Machines Corp. 1997,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipCallResolutionTemplate.h b/src/usr/diag/prdf/common/framework/resolution/iipCallResolutionTemplate.h
index 3e21ebeca..a020d714e 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipCallResolutionTemplate.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipCallResolutionTemplate.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipCallout.h b/src/usr/diag/prdf/common/framework/resolution/iipCallout.h
index 819a05e24..48a73de6a 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipCallout.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipCallout.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipCalloutMap.h b/src/usr/diag/prdf/common/framework/resolution/iipCalloutMap.h
index 3a22bed71..d8a5131aa 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipCalloutMap.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipCalloutMap.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipCalloutResolution.h b/src/usr/diag/prdf/common/framework/resolution/iipCalloutResolution.h
index cec2d6f49..11f86cba0 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipCalloutResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipCalloutResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1998,2012 */
+/* COPYRIGHT International Business Machines Corp. 1998,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipCaptureResolution.h b/src/usr/diag/prdf/common/framework/resolution/iipCaptureResolution.h
index 49b0ee8e5..4a7b489f9 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipCaptureResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipCaptureResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipEregResolution.h b/src/usr/diag/prdf/common/framework/resolution/iipEregResolution.h
index 000b9dc10..34976c559 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipEregResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipEregResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipResolution.C b/src/usr/diag/prdf/common/framework/resolution/iipResolution.C
index 6e9cd1ba4..165b979ab 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipResolution.C
+++ b/src/usr/diag/prdf/common/framework/resolution/iipResolution.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
@@ -39,7 +39,6 @@
//#include <iipCalloutMap.h>
#include <iipCalloutResolution.h>
#include <iipstep.h>
-#include <iipScanCommRegisterChip.h>
#include <iipCaptureData.h>
#include <iipServiceDataCollector.h>
#include <iipErrorRegister.h>
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipResolution.h b/src/usr/diag/prdf/common/framework/resolution/iipResolution.h
index c1b1df029..899d90c65 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipResolutionFactory.C b/src/usr/diag/prdf/common/framework/resolution/iipResolutionFactory.C
index 9089c5db2..74deed70c 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipResolutionFactory.C
+++ b/src/usr/diag/prdf/common/framework/resolution/iipResolutionFactory.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1997,2012 */
+/* COPYRIGHT International Business Machines Corp. 1997,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipResolutionFactory.h b/src/usr/diag/prdf/common/framework/resolution/iipResolutionFactory.h
index fe0c0febf..1094c763b 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipResolutionFactory.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipResolutionFactory.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1997,2012 */
+/* COPYRIGHT International Business Machines Corp. 1997,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipResolutionList.h b/src/usr/diag/prdf/common/framework/resolution/iipResolutionList.h
index b774a87f0..bd83dc2e5 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipResolutionList.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipResolutionList.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipResolutionMap.h b/src/usr/diag/prdf/common/framework/resolution/iipResolutionMap.h
index 04dab5482..6bb0150b0 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipResolutionMap.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipResolutionMap.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipTerminateResolution.h b/src/usr/diag/prdf/common/framework/resolution/iipTerminateResolution.h
index a5a29cb64..7518d637e 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipTerminateResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipTerminateResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1997,2012 */
+/* COPYRIGHT International Business Machines Corp. 1997,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/iipThresholdResolution.h b/src/usr/diag/prdf/common/framework/resolution/iipThresholdResolution.h
index 41da01a7a..addaefdbd 100755
--- a/src/usr/diag/prdf/common/framework/resolution/iipThresholdResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/iipThresholdResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfAnalyzeConnected.H b/src/usr/diag/prdf/common/framework/resolution/prdfAnalyzeConnected.H
index 3c99cb052..d7f77d39f 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfAnalyzeConnected.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfAnalyzeConnected.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2005,2012 */
+/* COPYRIGHT International Business Machines Corp. 2005,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfCalloutConnected.H b/src/usr/diag/prdf/common/framework/resolution/prdfCalloutConnected.H
index a92f80601..9215770f3 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfCalloutConnected.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfCalloutConnected.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfCalloutMap.H b/src/usr/diag/prdf/common/framework/resolution/prdfCalloutMap.H
index 19eee40ba..6823a5687 100644
--- a/src/usr/diag/prdf/common/framework/resolution/prdfCalloutMap.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfCalloutMap.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfCallouts.H b/src/usr/diag/prdf/common/framework/resolution/prdfCallouts.H
index d36123e40..538ca2105 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfCallouts.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfCallouts.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2000,2012 */
+/* COPYRIGHT International Business Machines Corp. 2000,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfCaptureResolution.C b/src/usr/diag/prdf/common/framework/resolution/prdfCaptureResolution.C
index 63e4c942d..019735bbf 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfCaptureResolution.C
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfCaptureResolution.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2006,2012 */
+/* COPYRIGHT International Business Machines Corp. 2006,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfCaptureResolution.H b/src/usr/diag/prdf/common/framework/resolution/prdfCaptureResolution.H
index c6f20394e..d0c8eecb1 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfCaptureResolution.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfCaptureResolution.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2006,2012 */
+/* COPYRIGHT International Business Machines Corp. 2006,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C b/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C
index 73c3447f2..de16a2b58 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2001,2012 */
+/* COPYRIGHT International Business Machines Corp. 2001,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.H b/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.H
index 0cd7e5879..bf07ba082 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfClockResolution.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2009,2012 */
+/* COPYRIGHT International Business Machines Corp. 2009,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfErrorTypeResolution.H b/src/usr/diag/prdf/common/framework/resolution/prdfErrorTypeResolution.H
index 570e94a19..2c8c8b983 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfErrorTypeResolution.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfErrorTypeResolution.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2003,2012 */
+/* COPYRIGHT International Business Machines Corp. 2003,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfIntervalThresholdResolution.H b/src/usr/diag/prdf/common/framework/resolution/prdfIntervalThresholdResolution.H
index 25bf5ee0d..747d8bad1 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfIntervalThresholdResolution.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfIntervalThresholdResolution.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2001,2012 */
+/* COPYRIGHT International Business Machines Corp. 2001,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfPluginCallResolution.H b/src/usr/diag/prdf/common/framework/resolution/prdfPluginCallResolution.H
index 8fe7973be..debae0c35 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfPluginCallResolution.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfPluginCallResolution.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2005,2012 */
+/* COPYRIGHT International Business Machines Corp. 2005,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfResetThresholdResolution.H b/src/usr/diag/prdf/common/framework/resolution/prdfResetThresholdResolution.H
index f991d4bb5..c0f79ba7c 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfResetThresholdResolution.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfResetThresholdResolution.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfResolutionList.H b/src/usr/diag/prdf/common/framework/resolution/prdfResolutionList.H
index 168346967..9692abc59 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfResolutionList.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfResolutionList.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfResolutionMap.C b/src/usr/diag/prdf/common/framework/resolution/prdfResolutionMap.C
index a3abbf2e4..8cac9fde5 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfResolutionMap.C
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfResolutionMap.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfResolutionMap.H b/src/usr/diag/prdf/common/framework/resolution/prdfResolutionMap.H
index 4c83a6fe7..0c28a8110 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfResolutionMap.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfResolutionMap.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfThresholdResolutions.C b/src/usr/diag/prdf/common/framework/resolution/prdfThresholdResolutions.C
index 0f59b51a2..39a560868 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfThresholdResolutions.C
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfThresholdResolutions.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2003,2012 */
+/* COPYRIGHT International Business Machines Corp. 2003,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/prdfThresholdResolutions.H b/src/usr/diag/prdf/common/framework/resolution/prdfThresholdResolutions.H
index 1ea070b94..1b8a7925b 100755
--- a/src/usr/diag/prdf/common/framework/resolution/prdfThresholdResolutions.H
+++ b/src/usr/diag/prdf/common/framework/resolution/prdfThresholdResolutions.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2003,2012 */
+/* COPYRIGHT International Business Machines Corp. 2003,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/xspprdDumpResolution.C b/src/usr/diag/prdf/common/framework/resolution/xspprdDumpResolution.C
index fceeb7193..e8af4b078 100755
--- a/src/usr/diag/prdf/common/framework/resolution/xspprdDumpResolution.C
+++ b/src/usr/diag/prdf/common/framework/resolution/xspprdDumpResolution.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2001,2012 */
+/* COPYRIGHT International Business Machines Corp. 2001,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/xspprdDumpResolution.h b/src/usr/diag/prdf/common/framework/resolution/xspprdDumpResolution.h
index caa93156c..72f05c685 100755
--- a/src/usr/diag/prdf/common/framework/resolution/xspprdDumpResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/xspprdDumpResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2001,2012 */
+/* COPYRIGHT International Business Machines Corp. 2001,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/xspprdFlagResolution.C b/src/usr/diag/prdf/common/framework/resolution/xspprdFlagResolution.C
index 7549e964b..b11ab46d7 100755
--- a/src/usr/diag/prdf/common/framework/resolution/xspprdFlagResolution.C
+++ b/src/usr/diag/prdf/common/framework/resolution/xspprdFlagResolution.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2001,2012 */
+/* COPYRIGHT International Business Machines Corp. 2001,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/xspprdFlagResolution.h b/src/usr/diag/prdf/common/framework/resolution/xspprdFlagResolution.h
index 65f5c8b5b..81e03f696 100755
--- a/src/usr/diag/prdf/common/framework/resolution/xspprdFlagResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/xspprdFlagResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2001,2012 */
+/* COPYRIGHT International Business Machines Corp. 2001,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/xspprdGardResolution.C b/src/usr/diag/prdf/common/framework/resolution/xspprdGardResolution.C
index 8d6baed85..3945fb4cf 100755
--- a/src/usr/diag/prdf/common/framework/resolution/xspprdGardResolution.C
+++ b/src/usr/diag/prdf/common/framework/resolution/xspprdGardResolution.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1999,2012 */
+/* COPYRIGHT International Business Machines Corp. 1999,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/xspprdGardResolution.h b/src/usr/diag/prdf/common/framework/resolution/xspprdGardResolution.h
index 74546aecc..74bf60940 100755
--- a/src/usr/diag/prdf/common/framework/resolution/xspprdGardResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/xspprdGardResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2001,2012 */
+/* COPYRIGHT International Business Machines Corp. 2001,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/resolution/xspprdTryResolution.h b/src/usr/diag/prdf/common/framework/resolution/xspprdTryResolution.h
index 753149ed8..2f237dd81 100755
--- a/src/usr/diag/prdf/common/framework/resolution/xspprdTryResolution.h
+++ b/src/usr/diag/prdf/common/framework/resolution/xspprdTryResolution.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1998,2012 */
+/* COPYRIGHT International Business Machines Corp. 1998,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/iipTemplates.C b/src/usr/diag/prdf/common/framework/rule/iipTemplates.C
index 9653442f1..4bb652ae5 100755
--- a/src/usr/diag/prdf/common/framework/rule/iipTemplates.C
+++ b/src/usr/diag/prdf/common/framework/rule/iipTemplates.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdfGroup.C b/src/usr/diag/prdf/common/framework/rule/prdfGroup.C
index bacbbe602..6aca1bb9a 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdfGroup.C
+++ b/src/usr/diag/prdf/common/framework/rule/prdfGroup.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdfGroup.H b/src/usr/diag/prdf/common/framework/rule/prdfGroup.H
index 9aa7fe2aa..96df2dd2d 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdfGroup.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdfGroup.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdfPluginDef.H b/src/usr/diag/prdf/common/framework/rule/prdfPluginDef.H
index 11e89e55d..f2245105a 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdfPluginDef.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdfPluginDef.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdfPluginMap.C b/src/usr/diag/prdf/common/framework/rule/prdfPluginMap.C
index 07edd6639..c3720d0c8 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdfPluginMap.C
+++ b/src/usr/diag/prdf/common/framework/rule/prdfPluginMap.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2005,2012 */
+/* COPYRIGHT International Business Machines Corp. 2005,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdfPluginMap.H b/src/usr/diag/prdf/common/framework/rule/prdfPluginMap.H
index 8c348e471..56a98dd89 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdfPluginMap.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdfPluginMap.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2005,2012 */
+/* COPYRIGHT International Business Machines Corp. 2005,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdfRuleChip.C b/src/usr/diag/prdf/common/framework/rule/prdfRuleChip.C
index a5f7e5ac1..f09c7f6d3 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdfRuleChip.C
+++ b/src/usr/diag/prdf/common/framework/rule/prdfRuleChip.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
@@ -60,6 +60,7 @@
#include <prdfResetOperators.H>
#include <algorithm>
+#include <prdf_ras_services.H>
namespace PRDF
{
@@ -69,12 +70,12 @@ struct ResetAndMaskTransformer
: public std::unary_function<Prdr::Register::ResetOrMaskStruct,
ResetAndMaskErrorRegister::ResetRegisterStruct>
{
- ResetAndMaskTransformer(ScanFacility & i_scanFactory,
- TARGETING::TargetHandle_t i_pchipHandle ,
- size_t i_scomlen)
- : cv_scanFactory(i_scanFactory),
- cv_pchipHandle (i_pchipHandle ),
- cv_scomlen(i_scomlen)
+ ResetAndMaskTransformer( ScanFacility & i_scanFactory,
+ size_t i_scomlen ,
+ TARGETING::TYPE i_type ):
+ cv_scanFactory( i_scanFactory ),
+ cv_scomlen( i_scomlen ),
+ iv_chipType( i_type )
{};
virtual ~ResetAndMaskTransformer() {}; // zs01
@@ -83,13 +84,11 @@ struct ResetAndMaskTransformer
operator()(const Prdr::Register::ResetOrMaskStruct & i)
{
ResetAndMaskErrorRegister::ResetRegisterStruct o;
+ o.read = & cv_scanFactory.GetScanCommRegister( i.addr_r ,
+ cv_scomlen,iv_chipType );
+ o.write = & cv_scanFactory.GetScanCommRegister( i.addr_w ,
+ cv_scomlen ,iv_chipType );
- o.read = &cv_scanFactory.GetScanCommRegister(cv_pchipHandle ,
- i.addr_r,
- cv_scomlen);
- o.write = &cv_scanFactory.GetScanCommRegister(cv_pchipHandle ,
- i.addr_w,
- cv_scomlen);
switch (i.op)
{
@@ -119,8 +118,8 @@ struct ResetAndMaskTransformer
private:
ScanFacility & cv_scanFactory;
- TARGETING::TargetHandle_t cv_pchipHandle ;
size_t cv_scomlen;
+ TARGETING::TYPE iv_chipType;
};
@@ -162,6 +161,8 @@ void RuleChip::loadRuleFile(ScanFacility & i_scanFactory,
// Get default dump type.
cv_dumpType = l_chip->cv_dumpType;
+ //getting target type before creating hardware register
+ TARGETING::TYPE l_type = PlatServices::getTargetType( GetChipHandle() ) ;
// Set signature offset for capture data output.
iv_sigOff = l_chip->cv_signatureOffset;
@@ -172,9 +173,9 @@ void RuleChip::loadRuleFile(ScanFacility & i_scanFactory,
l_regMap[l_id] = cv_hwRegs[hashId]
= &i_scanFactory.GetScanCommRegister(
- this->GetChipHandle(),
l_chip->cv_registers[i].cv_scomAddr,
- l_chip->cv_registers[i].cv_scomLen );
+ l_chip->cv_registers[i].cv_scomLen,
+ l_type );
l_regMap[l_id]->SetId(hashId);
// Copy reset registers.
@@ -184,8 +185,8 @@ void RuleChip::loadRuleFile(ScanFacility & i_scanFactory,
std::back_inserter(l_resetMap[l_id].first),
ResetAndMaskTransformer<RESETOPERATOR_RESET>(
i_scanFactory,
- this->GetChipHandle(),
- l_chip->cv_registers[i].cv_scomLen)
+ l_chip->cv_registers[i].cv_scomLen,
+ l_type )
);
// Copy mask registers.
@@ -195,14 +196,15 @@ void RuleChip::loadRuleFile(ScanFacility & i_scanFactory,
std::back_inserter(l_resetMap[l_id].second),
ResetAndMaskTransformer<RESETOPERATOR_MASK>(
i_scanFactory,
- this->GetChipHandle(),
- l_chip->cv_registers[i].cv_scomLen)
+ l_chip->cv_registers[i].cv_scomLen,
+ l_type )
);
//This flag signifies that a mapping IS or ISN'T created between a
- // uint32_t mapping and a vector of SCAN_COMM_REGISTER_CLASS pointers.
+ //uint32_t mapping and a vector of SCAN_COMM_REGISTER_CLASS pointers.
//If there is no mapping outside of the for loop then it is because
- // there is a capture type or requirement without a group statement in the rule file.
+ //there is a capture type or requirement without a group statement in
+ //the rule file.
bool l_group_is_created = false;
// Copy into capture groups.
std::vector<Prdr::Register::CaptureInfoStruct>::const_iterator
@@ -219,9 +221,10 @@ void RuleChip::loadRuleFile(ScanFacility & i_scanFactory,
l_group_is_created = true; //@jl06 Added this to indicate group was created.
}
// @jl04 a Start.
- // This else if was added for a new capture "type" for registers primary/secondary.
- // Cannot put the "type" in with the G group otherwise it will show up as a
- // i_group of 2 which is not called.
+ // This else if was added for a new capture "type" for registers
+ // primary/secondary.
+ // Cannot put the "type" in with the G group otherwise it will show
+ // up as a i_group of 2 which is not called.
else if('T' == (*j).op)
{
//@jl06. d Deleted temporary declaration of CaptureType in
@@ -335,6 +338,9 @@ RuleChip::~RuleChip()
int32_t RuleChip::Analyze(STEP_CODE_DATA_STRUCT & i_serviceData,
ATTENTION_TYPE i_attnType)
{
+ //this pointer is retained in stack just for the scope of this function
+ PRDF_DEFINE_CHIP_SCOPE( this );
+
ServiceDataCollector & i_sdc = *(i_serviceData.service_data);
ErrorSignature & l_errSig = *(i_sdc.GetErrorSignature());
CaptureData & capture = i_serviceData.service_data->GetCaptureData(); // @jl04 a Add this for Drop call.
@@ -450,6 +456,8 @@ int32_t RuleChip::Analyze(STEP_CODE_DATA_STRUCT & i_serviceData,
int32_t RuleChip::CaptureErrorData(CaptureData & i_cap, int i_group)
{
using namespace TARGETING;
+ //this pointer is retained in stack just for the scope of this function
+ PRDF_DEFINE_CHIP_SCOPE( this );
std::vector<SCAN_COMM_REGISTER_CLASS *>::const_iterator l_hwCaptureEnd =
cv_hwCaptureGroups[i_group].end();
@@ -909,6 +917,9 @@ void RuleChip::createGroup(Group * i_group,
ExtensibleChipFunction *
RuleChip::getExtensibleFunction(const char * i_func, bool i_expectNull)
{
+ //this pointer is retained in stack just for the scope of this function
+ PRDF_DEFINE_CHIP_SCOPE( this );
+
ExtensibleFunctionType * plugin =
getPluginGlobalMap().getPlugins(cv_fileName)[i_func];
if (NULL == plugin)
@@ -954,6 +965,8 @@ ExtensibleChipFunction *
SCAN_COMM_REGISTER_CLASS * RuleChip::getRegister(const char * i_reg,
bool i_expectNull)
{
+ //this pointer is retained in stack just for the scope of this function
+ PRDF_DEFINE_CHIP_SCOPE( this );
uint16_t hashId = Util::hashString( i_reg );
SCAN_COMM_REGISTER_CLASS * l_register = cv_hwRegs[hashId];
@@ -994,6 +1007,23 @@ SCAN_COMM_REGISTER_CLASS * RuleChip::getRegister(const char * i_reg,
}
}
+ else
+ { /* l_register obtained from cv_hwRegs is a ScomRegister which does not
+ have rule chip info built in.Analyze leg of code uses this register.
+ Inorder to use this register for scom, target info is obtained from
+ service data collector.This register does not suit us for read and
+ write operation in plugin function.It is because in plugin function
+ register read should not be concerend with finding the associated
+ rule chip or target.Inorder to address this situation,we create a
+ wrapper register.This register has rule chip info in addition to all
+ the data of scomRegister.This object is created through factory and
+ and destroyed at the end of analysis.
+ */
+ SCAN_COMM_REGISTER_CLASS * l_pReg = l_register;
+ ScanFacility & l_scanFac = ScanFacility::Access();
+ l_register = & l_scanFac.GetPluginRegister(*l_pReg,*this);
+
+ }
return l_register;
}
diff --git a/src/usr/diag/prdf/common/framework/rule/prdfRuleChip.H b/src/usr/diag/prdf/common/framework/rule/prdfRuleChip.H
index e477d9ec5..b7dd194f3 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdfRuleChip.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdfRuleChip.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
@@ -60,6 +60,7 @@ class ErrorRegisterType;
class Resolution;
class Group;
+
typedef std::pair<ResetAndMaskErrorRegister::ResetRegisterVector,
ResetAndMaskErrorRegister::ResetRegisterVector>
ResetAndMaskPair;
@@ -128,6 +129,14 @@ class RuleChip : public ExtensibleChip
};
public:
+
+ /*Note:
+ At the beginning of all the public function of this class,'this' pointer
+ should be pushed to stack maintained in service data collector.Also, at
+ the end of same function,it should be popped.It is accomplished by just
+ instantiating ChipScopeLock at the beginning of the function.This is
+ encapsulated by PRDF_LOCK_CHIP_SCOPE */
+
// TODO : add parameter for parent domains, connected chip classes.
RuleChip(const char * i_fileName,
TARGETING::TargetHandle_t i_pTargetHandle,
@@ -146,11 +155,19 @@ class RuleChip : public ExtensibleChip
int32_t Analyze(STEP_CODE_DATA_STRUCT &, ATTENTION_TYPE);
int32_t CaptureErrorData(CaptureData &, int i_group = 1);
+ /*Note
+ functions like MaskError(),getDataBundle(),getSignatureOffset()
+ just return a constant or a member variable. These function don't need
+ to call any other functions of RuleChip.Hence,despite the fact that
+ these functions are public,we are not using macro PRDF_LOCK_CHIP_SCOPE
+ in these function.
+ */
int32_t MaskError(uint32_t i) { return SUCCESS; };
ExtensibleChipFunction *
getExtensibleFunction(const char *, bool = false);
SCAN_COMM_REGISTER_CLASS * getRegister(const char *, bool = false);
+
DataBundle *& getDataBundle() { return cv_dataBundle; };
uint32_t getSignatureOffset() const { return iv_sigOff; };
diff --git a/src/usr/diag/prdf/common/framework/rule/prdfRuleFiles.C b/src/usr/diag/prdf/common/framework/rule/prdfRuleFiles.C
index 2ffb46fa9..361742c29 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdfRuleFiles.C
+++ b/src/usr/diag/prdf/common/framework/rule/prdfRuleFiles.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2008,2012 */
+/* COPYRIGHT International Business Machines Corp. 2008,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdfRuleFiles.H b/src/usr/diag/prdf/common/framework/rule/prdfRuleFiles.H
index 5c2158bf7..0d15f25df 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdfRuleFiles.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdfRuleFiles.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrChip.H b/src/usr/diag/prdf/common/framework/rule/prdrChip.H
index 7855bba47..9cb44ad1d 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrChip.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdrChip.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrCommon.H b/src/usr/diag/prdf/common/framework/rule/prdrCommon.H
index 70743f770..c96ecc24f 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrCommon.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdrCommon.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2005,2012 */
+/* COPYRIGHT International Business Machines Corp. 2005,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrCompile.C b/src/usr/diag/prdf/common/framework/rule/prdrCompile.C
index ff6fdf0eb..4dcb85c74 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrCompile.C
+++ b/src/usr/diag/prdf/common/framework/rule/prdrCompile.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrCompile.lex b/src/usr/diag/prdf/common/framework/rule/prdrCompile.lex
index dccb64828..383d5f43c 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrCompile.lex
+++ b/src/usr/diag/prdf/common/framework/rule/prdrCompile.lex
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrCompile.y b/src/usr/diag/prdf/common/framework/rule/prdrCompile.y
index 65bbf88ea..5c035c653 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrCompile.y
+++ b/src/usr/diag/prdf/common/framework/rule/prdrCompile.y
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrExpr.H b/src/usr/diag/prdf/common/framework/rule/prdrExpr.H
index d3d12a738..b221dda4f 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrExpr.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdrExpr.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrGroup.H b/src/usr/diag/prdf/common/framework/rule/prdrGroup.H
index f7450426a..0a14be163 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrGroup.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdrGroup.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrLoadChip.H b/src/usr/diag/prdf/common/framework/rule/prdrLoadChip.H
index de5a28d75..de00eb962 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrLoadChip.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdrLoadChip.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrLoadChipCache.C b/src/usr/diag/prdf/common/framework/rule/prdrLoadChipCache.C
index a7045b6dd..6d29bdf4e 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrLoadChipCache.C
+++ b/src/usr/diag/prdf/common/framework/rule/prdrLoadChipCache.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2006,2012 */
+/* COPYRIGHT International Business Machines Corp. 2006,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrLoadChipCache.H b/src/usr/diag/prdf/common/framework/rule/prdrLoadChipCache.H
index e3ea98525..83dc6d7cc 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrLoadChipCache.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdrLoadChipCache.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2006,2012 */
+/* COPYRIGHT International Business Machines Corp. 2006,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrRegister.H b/src/usr/diag/prdf/common/framework/rule/prdrRegister.H
index 3e00a01f5..a228442c3 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrRegister.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdrRegister.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrSignatures.H b/src/usr/diag/prdf/common/framework/rule/prdrSignatures.H
index eb5223005..6b9c0bd12 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrSignatures.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdrSignatures.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2007,2012 */
+/* COPYRIGHT International Business Machines Corp. 2007,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrToken.H b/src/usr/diag/prdf/common/framework/rule/prdrToken.H
index 4c1cffb01..03aa93b9c 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrToken.H
+++ b/src/usr/diag/prdf/common/framework/rule/prdrToken.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/rule/prdrpp b/src/usr/diag/prdf/common/framework/rule/prdrpp
index de808f420..058e5f4b5 100755
--- a/src/usr/diag/prdf/common/framework/rule/prdrpp
+++ b/src/usr/diag/prdf/common/framework/rule/prdrpp
@@ -6,7 +6,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2004,2012
+# COPYRIGHT International Business Machines Corp. 2004,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/framework/rule/tables.mk b/src/usr/diag/prdf/common/framework/rule/tables.mk
index 6c0ee1823..738631c72 100755
--- a/src/usr/diag/prdf/common/framework/rule/tables.mk
+++ b/src/usr/diag/prdf/common/framework/rule/tables.mk
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2005,2012
+# COPYRIGHT International Business Machines Corp. 2005,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/framework/service/iipServiceDataCollector.h b/src/usr/diag/prdf/common/framework/service/iipServiceDataCollector.h
index 1cac60abf..ae3e230ae 100755
--- a/src/usr/diag/prdf/common/framework/service/iipServiceDataCollector.h
+++ b/src/usr/diag/prdf/common/framework/service/iipServiceDataCollector.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1998,2012 */
+/* COPYRIGHT International Business Machines Corp. 1998,2013 */
/* */
/* p1 */
/* */
@@ -83,19 +83,21 @@
#endif
#endif
+#include <list>
+#include <prdfExtensibleChip.H>
namespace PRDF
{
struct SdcCallout {
- PRDF::PRDcallout callout;
- PRDF::PRDpriority priority;
+ PRDcallout callout;
+ PRDpriority priority;
//bool gard;
SdcCallout() : callout(NULL), priority(MRU_LOW) {}
SdcCallout(PRDcallout & mru, PRDpriority p)
: callout(mru), priority(p)
{}
- SdcCallout(TARGETING::TargetHandle_t i_pcalloutHandle , PRDF::PRDpriority p)
+ SdcCallout(TARGETING::TargetHandle_t i_pcalloutHandle , PRDpriority p)
: callout(i_pcalloutHandle), priority(p)
{}
};
@@ -939,9 +941,46 @@ private: // Data
ATTENTION_TYPE causeAttentionType; // MCK,REC,SPCL
TARGETING::TargetHandle_t ivpThermalChipHandle;
-
+ //RTC: 60553 Eventually we shall use hostboot implementation of stack istead
+ //of std:list
+ static std::list< ExtensibleChip *> cv_ruleChipStack ;
public:
+ /**
+ * @brief get the rulechip under analysis
+ * @param None
+ * @return RuleChip currently under analysis
+ */
+ static ExtensibleChip* getChipAnalyzed()
+ {
+ return cv_ruleChipStack.back( );
+ }
+ /**
+ * @brief pushes the rulechip under analysis in a list
+ * @param i_analyzingChip RuleChip under analysis
+ * @return None
+ */
+ static void pushChipAnalyzed( ExtensibleChip* i_analyzingChip )
+ {
+ cv_ruleChipStack.push_back( i_analyzingChip );
+ }
+ /**
+ * @brief pops the last rulechip under analysis from list
+ * @param i_analyzingChip RuleChip under analysis
+ * @return None
+ */
+ static void popChipAnalyzed( )
+ {
+ cv_ruleChipStack.pop_back();
+ }
+ /**
+ * @brief Clears the list containing pointers to all the RuleChip under
+ * analysis
+ */
+ static void clearChipStack( )
+ {
+ cv_ruleChipStack.clear();
+ }
// --------------------------------------
// FSP only functions begin
// --------------------------------------
@@ -1036,6 +1075,43 @@ public:
};
+
+/**
+ * @brief limits the scope of RuleChip pointer in stack to a given scope.
+ *
+ * This class basically binds the scope of a given RuleChip pointer in SDC chip
+ * stack to certain scope. When an instance of this class is created, RuleChip
+ * is pushed to stack.In destructor,same gets popped.As a result, the scpoe of
+ * this RuleChip pointer gets tied to scope of ChipScopeLock instance.
+ * PRDF_DEFINE_CHIP_SCOPE encapsulates instantiation of ScopeChipLock.
+
+ */
+
+#define PRDF_DEFINE_CHIP_SCOPE( ARG ) \
+ ChipScopeLock csl( ARG )
+class ChipScopeLock
+{
+ public:
+ /**
+ * @brief Constructor
+ * @param i_pChipAnalyzed Chip for which scope is to be locked
+ */
+ ChipScopeLock( ExtensibleChip * i_pChipAnalyzed )
+ {
+ ServiceDataCollector::pushChipAnalyzed( i_pChipAnalyzed );
+ }
+ /**
+ * @brief Destructor
+ */
+ ~ChipScopeLock()
+ {
+ ServiceDataCollector::popChipAnalyzed( );
+ }
+};
+
+
+
+
} // end namespace PRDF
#include "iipServiceDataCollector.inl"
diff --git a/src/usr/diag/prdf/common/framework/service/iipServiceDataCollector.inl b/src/usr/diag/prdf/common/framework/service/iipServiceDataCollector.inl
index 3d97ba692..2cd10def4 100755
--- a/src/usr/diag/prdf/common/framework/service/iipServiceDataCollector.inl
+++ b/src/usr/diag/prdf/common/framework/service/iipServiceDataCollector.inl
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1998,2012 */
+/* COPYRIGHT International Business Machines Corp. 1998,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/service/iipsdbug.h b/src/usr/diag/prdf/common/framework/service/iipsdbug.h
index 11e515623..cd9e367f9 100755
--- a/src/usr/diag/prdf/common/framework/service/iipsdbug.h
+++ b/src/usr/diag/prdf/common/framework/service/iipsdbug.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/service/iipstep.h b/src/usr/diag/prdf/common/framework/service/iipstep.h
index 7e296e9b1..0077a29b6 100755
--- a/src/usr/diag/prdf/common/framework/service/iipstep.h
+++ b/src/usr/diag/prdf/common/framework/service/iipstep.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/service/prdfPfa5Data.h b/src/usr/diag/prdf/common/framework/service/prdfPfa5Data.h
index 9184ae80c..ea2ec265c 100755
--- a/src/usr/diag/prdf/common/framework/service/prdfPfa5Data.h
+++ b/src/usr/diag/prdf/common/framework/service/prdfPfa5Data.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2003,2012 */
+/* COPYRIGHT International Business Machines Corp. 2003,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/service/prdfPlatServices.C b/src/usr/diag/prdf/common/framework/service/prdfPlatServices.C
index 5a14a5cc8..b6d6ad84f 100755
--- a/src/usr/diag/prdf/common/framework/service/prdfPlatServices.C
+++ b/src/usr/diag/prdf/common/framework/service/prdfPlatServices.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/service/prdfPlatServices.H b/src/usr/diag/prdf/common/framework/service/prdfPlatServices.H
index 9dde6419f..ee650f7e2 100755
--- a/src/usr/diag/prdf/common/framework/service/prdfPlatServices.H
+++ b/src/usr/diag/prdf/common/framework/service/prdfPlatServices.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/service/prdfServiceDataCollector.C b/src/usr/diag/prdf/common/framework/service/prdfServiceDataCollector.C
index ad7e542d6..3491b2a27 100755
--- a/src/usr/diag/prdf/common/framework/service/prdfServiceDataCollector.C
+++ b/src/usr/diag/prdf/common/framework/service/prdfServiceDataCollector.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
@@ -46,7 +46,6 @@
#include <prdfTrace.H>
#undef prdfServiceDataCollector_C
-using namespace PRDF;
//------------------------------------------------------------------------------
// User Types, Constants, macros, prototypes, globals
@@ -55,11 +54,14 @@ using namespace PRDF;
//------------------------------------------------------------------------------
// Member Function Specifications
//------------------------------------------------------------------------------
-#ifndef __HOSTBOOT_MODULE
namespace PRDF
{
+ std::list<ExtensibleChip*> ServiceDataCollector::cv_ruleChipStack;
+
+#ifndef __HOSTBOOT_MODULE
+
inline void buffer_append(uint8_t *&ptr, uint32_t value)
{
uint32_t l_tmp32 = htonl(value);
@@ -125,7 +127,7 @@ inline TARGETING::TargetHandle_t buffer_getTarget( const uint8_t *&ptr )
return l_tempChipHandle;
}
-#endif
+#endif //ifndef__HOSTBOOT_MODULE
//------------------------------------------------------------------------------
@@ -385,7 +387,8 @@ void ServiceDataCollector::AddChangeForHcdb(TARGETING::TargetHandle_t i_pTargetH
}
}
+#endif // ifndef __HOSTBOOT_MODULE
+
} // end namespace PRDF
-#endif
diff --git a/src/usr/diag/prdf/common/framework/service/prdfTargetServices.C b/src/usr/diag/prdf/common/framework/service/prdfTargetServices.C
index afbbc9b28..9ce9039b1 100755
--- a/src/usr/diag/prdf/common/framework/service/prdfTargetServices.C
+++ b/src/usr/diag/prdf/common/framework/service/prdfTargetServices.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/service/prdfTargetServices.H b/src/usr/diag/prdf/common/framework/service/prdfTargetServices.H
index 7c2f0ee0d..1af230afe 100755
--- a/src/usr/diag/prdf/common/framework/service/prdfTargetServices.H
+++ b/src/usr/diag/prdf/common/framework/service/prdfTargetServices.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/service/prdfWorkarounds.H b/src/usr/diag/prdf/common/framework/service/prdfWorkarounds.H
index bb4012cae..eca30688c 100755
--- a/src/usr/diag/prdf/common/framework/service/prdfWorkarounds.H
+++ b/src/usr/diag/prdf/common/framework/service/prdfWorkarounds.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2007,2012 */
+/* COPYRIGHT International Business Machines Corp. 2007,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/service/prdf_ras_services.C b/src/usr/diag/prdf/common/framework/service/prdf_ras_services.C
index dd072b672..e680e25ba 100755
--- a/src/usr/diag/prdf/common/framework/service/prdf_ras_services.C
+++ b/src/usr/diag/prdf/common/framework/service/prdf_ras_services.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/framework/service/prdf_ras_services.H b/src/usr/diag/prdf/common/framework/service/prdf_ras_services.H
index fb0d071b2..7b88c74fe 100755
--- a/src/usr/diag/prdf/common/framework/service/prdf_ras_services.H
+++ b/src/usr/diag/prdf/common/framework/service/prdf_ras_services.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
@@ -260,7 +260,8 @@ public:
@post Error log(s) build and logged, SRC built, etc.
@exception None.
*/
- virtual errlHndl_t GenerateSrcPfa(ATTENTION_TYPE attn_type, ServiceDataCollector & sdc); //mp01 c
+ virtual errlHndl_t GenerateSrcPfa( ATTENTION_TYPE attn_type,
+ ServiceDataCollector & sdc );
#ifndef __HOSTBOOT_MODULE
/**
@@ -281,7 +282,6 @@ public:
private: // Data
-
// actual or sim err data service
ErrDataService * iv_ErrDataService;
diff --git a/src/usr/diag/prdf/common/framework/service/xspprdService.h b/src/usr/diag/prdf/common/framework/service/xspprdService.h
index 30ab4db9f..bb734ca59 100755
--- a/src/usr/diag/prdf/common/framework/service/xspprdService.h
+++ b/src/usr/diag/prdf/common/framework/service/xspprdService.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1999,2012 */
+/* COPYRIGHT International Business Machines Corp. 1999,2013 */
/* */
/* p1 */
/* */
@@ -56,11 +56,8 @@
#define IIPSERVICEGENERATOR_H
-#if !defined(IIPSDBUG_H)
- #include <iipsdbug.h> // for ATTENTION_TYPE
-#endif
-
-#include <errlentry.H> //for errlHndl_t //mp01 a
+#include <iipsdbug.h> // for ATTENTION_TYPE
+#include <errlentry.H> //for errlHndl_t
@@ -128,7 +125,6 @@ public:
/**
* @brief set the err data service to be used
- *
* @param[in] i_errDataService new err data service
*/
virtual void setErrDataService(ErrDataService & i_errDataService)=0;
diff --git a/src/usr/diag/prdf/common/framework/service/xspprdsdbug.C b/src/usr/diag/prdf/common/framework/service/xspprdsdbug.C
index f51d802b1..6679e4562 100755
--- a/src/usr/diag/prdf/common/framework/service/xspprdsdbug.C
+++ b/src/usr/diag/prdf/common/framework/service/xspprdsdbug.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2000,2012 */
+/* COPYRIGHT International Business Machines Corp. 2000,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/iipconst.h b/src/usr/diag/prdf/common/iipconst.h
index d9877b12b..b0e887391 100755
--- a/src/usr/diag/prdf/common/iipconst.h
+++ b/src/usr/diag/prdf/common/iipconst.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/iipglobl.h b/src/usr/diag/prdf/common/iipglobl.h
index 377ddc0a0..3514a9601 100755
--- a/src/usr/diag/prdf/common/iipglobl.h
+++ b/src/usr/diag/prdf/common/iipglobl.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/CommonActions.rule b/src/usr/diag/prdf/common/plat/pegasus/CommonActions.rule
index 44c8b559c..8c09f1cda 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/CommonActions.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/CommonActions.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Mcs.rule b/src/usr/diag/prdf/common/plat/pegasus/Mcs.rule
index df57dc90e..425f20209 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Mcs.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Mcs.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Membuf.rule b/src/usr/diag/prdf/common/plat/pegasus/Membuf.rule
index 619b53c6a..0d962ef9b 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Membuf.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Membuf.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_MEM.rule b/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_MEM.rule
index 13ace0241..05c880561 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_MEM.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_MEM.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_NEST.rule b/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_NEST.rule
index 6e8af6fdc..bc2d051d1 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_NEST.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_NEST.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_TP.rule b/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_TP.rule
index 913476351..d06232d85 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_TP.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Membuf_acts_TP.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_MEM.rule b/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_MEM.rule
index 7c661a47f..794d910fe 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_MEM.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_MEM.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_NEST.rule b/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_NEST.rule
index 949f57f56..e3888b164 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_NEST.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_NEST.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_TP.rule b/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_TP.rule
index b7147c1c2..f255bfcb7 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_TP.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_TP.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc.rule
index e3ff10a8e..ef0f27553 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Proc.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Proc.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_ABUS.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_ABUS.rule
index 7598b37b7..5f021c2ee 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_ABUS.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_ABUS.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PB.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PB.rule
index c44ec46d6..9de094fdf 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PB.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PB.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PCIE.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PCIE.rule
index ebc173ff8..844093fec 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PCIE.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_PCIE.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_TP.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_TP.rule
index 737d87024..2d093611b 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_TP.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_TP.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_XBUS.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_XBUS.rule
index 497ea135a..da159b641 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_XBUS.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_acts_XBUS.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_ABUS.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_ABUS.rule
index 0cda7bddc..2fd3e26ed 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_ABUS.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_ABUS.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_PB.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_PB.rule
index c338b137d..1207292b5 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_PB.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_PB.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_PCIE.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_PCIE.rule
index a8990ae39..8d052d951 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_PCIE.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_PCIE.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_TP.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_TP.rule
index 18d24dc66..4c6be886c 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_TP.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_TP.rule
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_XBUS.rule b/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_XBUS.rule
index 11d9383ab..15a89ced0 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_XBUS.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Proc_regs_XBUS.rule
@@ -1,7 +1,7 @@
# IBM_PROLOG_BEGIN_TAG
# This is an automatically generated prolog.
#
-# $Source: common/plat/pegasus/Proc_regs_XBUS.rule $
+# $Source: src/usr/diag/prdf/common/plat/pegasus/Proc_regs_XBUS.rule $
#
# IBM CONFIDENTIAL
#
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfCalloutUtil.C b/src/usr/diag/prdf/common/plat/pegasus/prdfCalloutUtil.C
index 23d545e33..e501bb7be 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfCalloutUtil.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfCalloutUtil.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfCalloutUtil.H b/src/usr/diag/prdf/common/plat/pegasus/prdfCalloutUtil.H
index 0e46ad613..e364d5fbb 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfCalloutUtil.H
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfCalloutUtil.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMba.C b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMba.C
index 2250845ff..1b6e7c1f1 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMba.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMba.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaDataBundle.H b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaDataBundle.H
index 68492268d..2e867db24 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaDataBundle.H
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaDataBundle.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C
index ace843f21..326267795 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfCenPll.C b/src/usr/diag/prdf/common/plat/pegasus/prdfCenPll.C
index 4fa8ae3c7..fa3c79b9d 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfCenPll.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfCenPll.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfDramRepairs.C b/src/usr/diag/prdf/common/plat/pegasus/prdfDramRepairs.C
index 9131dd9e7..5dc675643 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfDramRepairs.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfDramRepairs.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfMemUtil.C b/src/usr/diag/prdf/common/plat/pegasus/prdfMemUtil.C
index b29217102..f8df68280 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfMemUtil.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfMemUtil.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfMemUtil.H b/src/usr/diag/prdf/common/plat/pegasus/prdfMemUtil.H
index e4c1dcd16..c88bad0f0 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfMemUtil.H
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfMemUtil.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfP8Ex.C b/src/usr/diag/prdf/common/plat/pegasus/prdfP8Ex.C
index 3e2f01f14..4439ee474 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfP8Ex.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfP8Ex.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
@@ -20,6 +20,7 @@
/* Origin: 30 */
/* */
/* IBM_PROLOG_END_TAG */
+
/** @file prdfP8Ex.C
* @brief Contains all the plugin code for the PRD P8 EX chiplet
*/
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfP8Mcs.C b/src/usr/diag/prdf/common/plat/pegasus/prdfP8Mcs.C
index 3f7b724df..336c03b6f 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfP8Mcs.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfP8Mcs.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfP8Pll.C b/src/usr/diag/prdf/common/plat/pegasus/prdfP8Pll.C
index 04bcc8f14..5c95a43a5 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfP8Pll.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfP8Pll.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfP8Proc.C b/src/usr/diag/prdf/common/plat/pegasus/prdfP8Proc.C
index d80db6bdd..9fe43fcf8 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfP8Proc.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfP8Proc.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfP8SystemSpecific.C b/src/usr/diag/prdf/common/plat/pegasus/prdfP8SystemSpecific.C
index 8149192f9..b3714a407 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfP8SystemSpecific.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfP8SystemSpecific.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
@@ -22,9 +22,7 @@
/* IBM_PROLOG_END_TAG */
#include <prdfSystemSpecific.H>
-
#include <iipglobl.h>
-#include <iipScanCommRegisterAccess.h>
#include <prdfPegasusConfigurator.H>
#include <prdfPlatServices.H>
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfPegasusConfigurator.C b/src/usr/diag/prdf/common/plat/pegasus/prdfPegasusConfigurator.C
index ace249424..b4d831e99 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfPegasusConfigurator.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfPegasusConfigurator.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
@@ -141,6 +141,14 @@ System * PegasusConfigurator::build()
Configurator::domainList & domains = getDomainList();
l_system->AddDomains( domains.begin(), domains.end() );
+#ifdef __MEM_PROFILING
+
+ ScanFacility & scanFac = ScanFacility::Access();
+ PRDF_DTRAC( "printing flyweight size ");
+ scanFac.printStats();
+ PRDF_DTRAC("total chips in the system %d ",chips.size());
+#endif
+
PRDF_EXIT( "PegasusConfigurator::build()" );
return l_system;
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfPegasusConfigurator.H b/src/usr/diag/prdf/common/plat/pegasus/prdfPegasusConfigurator.H
index 4b788ee8b..830d3ea08 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfPegasusConfigurator.H
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfPegasusConfigurator.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/prdfL3Table.C b/src/usr/diag/prdf/common/plat/prdfL3Table.C
index db44dee0e..b453cf44b 100755
--- a/src/usr/diag/prdf/common/plat/prdfL3Table.C
+++ b/src/usr/diag/prdf/common/plat/prdfL3Table.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/prdfL3Table.H b/src/usr/diag/prdf/common/plat/prdfL3Table.H
index 4fbf0fe2a..b6e83dd53 100755
--- a/src/usr/diag/prdf/common/plat/prdfL3Table.H
+++ b/src/usr/diag/prdf/common/plat/prdfL3Table.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/prdfLineDelete.C b/src/usr/diag/prdf/common/plat/prdfLineDelete.C
index 8b23e1425..35c622d5a 100755
--- a/src/usr/diag/prdf/common/plat/prdfLineDelete.C
+++ b/src/usr/diag/prdf/common/plat/prdfLineDelete.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2005,2012 */
+/* COPYRIGHT International Business Machines Corp. 2005,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/prdfLineDelete.H b/src/usr/diag/prdf/common/plat/prdfLineDelete.H
index 1e3f500db..fb0150cac 100755
--- a/src/usr/diag/prdf/common/plat/prdfLineDelete.H
+++ b/src/usr/diag/prdf/common/plat/prdfLineDelete.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2005,2012 */
+/* COPYRIGHT International Business Machines Corp. 2005,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/prdfMemoryMru.C b/src/usr/diag/prdf/common/plat/prdfMemoryMru.C
index 092f1832c..65fca5b26 100755
--- a/src/usr/diag/prdf/common/plat/prdfMemoryMru.C
+++ b/src/usr/diag/prdf/common/plat/prdfMemoryMru.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2008,2012 */
+/* COPYRIGHT International Business Machines Corp. 2008,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/prdfMemoryMru.H b/src/usr/diag/prdf/common/plat/prdfMemoryMru.H
index 0ab0e4e5e..1e89ab01f 100755
--- a/src/usr/diag/prdf/common/plat/prdfMemoryMru.H
+++ b/src/usr/diag/prdf/common/plat/prdfMemoryMru.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2008,2012 */
+/* COPYRIGHT International Business Machines Corp. 2008,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/prdfRepairHealth.C b/src/usr/diag/prdf/common/plat/prdfRepairHealth.C
index 508908cb7..344f6cb3c 100755
--- a/src/usr/diag/prdf/common/plat/prdfRepairHealth.C
+++ b/src/usr/diag/prdf/common/plat/prdfRepairHealth.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2009,2012 */
+/* COPYRIGHT International Business Machines Corp. 2009,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/prdfRepairHealth.H b/src/usr/diag/prdf/common/plat/prdfRepairHealth.H
index 4c3bee42c..e8c3564f4 100755
--- a/src/usr/diag/prdf/common/plat/prdfRepairHealth.H
+++ b/src/usr/diag/prdf/common/plat/prdfRepairHealth.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2009,2012 */
+/* COPYRIGHT International Business Machines Corp. 2009,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/plat/prdfTOD.H b/src/usr/diag/prdf/common/plat/prdfTOD.H
index 4ae2c4408..7c418306e 100755
--- a/src/usr/diag/prdf/common/plat/prdfTOD.H
+++ b/src/usr/diag/prdf/common/plat/prdfTOD.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2010,2012 */
+/* COPYRIGHT International Business Machines Corp. 2010,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/prd_framework.mk b/src/usr/diag/prdf/common/prd_framework.mk
index efc224024..9abedbc8f 100755
--- a/src/usr/diag/prdf/common/prd_framework.mk
+++ b/src/usr/diag/prdf/common/prd_framework.mk
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2005,2012
+# COPYRIGHT International Business Machines Corp. 2005,2013
#
# p1
#
@@ -119,13 +119,14 @@ prd_register = \
iipscr.o \
prdfErrorRegister.o \
prdfErrorRegisterMask.o \
- iipMopRegisterAccess.o \
+ prdfRegisterCache.o \
prdfResetErrorRegister.o \
- iipScanCommRegisterAccess.o \
- iipScanCommRegisterChip.o \
+ prdfScomRegister.o \
+ prdfScomRegisterAccess.o \
prdfCaptureData.o \
prdfScanFacility.o
+
prd_register_includes = \
######## Threshold ########
diff --git a/src/usr/diag/prdf/common/prd_pegasus.mk b/src/usr/diag/prdf/common/prd_pegasus.mk
index c37368b5c..1bca6f7ca 100755
--- a/src/usr/diag/prdf/common/prd_pegasus.mk
+++ b/src/usr/diag/prdf/common/prd_pegasus.mk
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2012
+# COPYRIGHT International Business Machines Corp. 2012,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/prd_ruletable.mk b/src/usr/diag/prdf/common/prd_ruletable.mk
index c6aa261f0..2bba888c1 100755
--- a/src/usr/diag/prdf/common/prd_ruletable.mk
+++ b/src/usr/diag/prdf/common/prd_ruletable.mk
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2005,2012
+# COPYRIGHT International Business Machines Corp. 2005,2013
#
# p1
#
diff --git a/src/usr/diag/prdf/common/prdfEnums.H b/src/usr/diag/prdf/common/prdfEnums.H
index 697b5cca5..781f1282c 100755
--- a/src/usr/diag/prdf/common/prdfEnums.H
+++ b/src/usr/diag/prdf/common/prdfEnums.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/prdfMain.C b/src/usr/diag/prdf/common/prdfMain.C
index 77224326e..b2645c49e 100755
--- a/src/usr/diag/prdf/common/prdfMain.C
+++ b/src/usr/diag/prdf/common/prdfMain.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
@@ -35,7 +35,6 @@
#include <CcAutoDeletePointer.h>
#include <iipSystem.h>
-#include <iipScanCommRegisterAccess.h>
#include <iipstep.h> // for STEP_CODE_DATA_STRUCT
#include <iipServiceDataCollector.h>
#include <xspprdService.h> // for ServiceGenerator
@@ -52,9 +51,9 @@
#include <prdrLoadChipCache.H> // To flush chip-file cache.
#include <prdfWorkarounds.H>
-
+#include <prdfRegisterCache.H>
#include <UtilHash.H>
-
+#include <prdfScanFacility.H>
//For some odd reason when compile in FSP, these includes have to be down here
//or there will be some weird compiling error in iipResolutionFactory.h
#ifndef __HOSTBOOT_MODULE
@@ -88,7 +87,8 @@ void unInitialize(void)
delete systemPtr;
systemPtr = NULL;
g_initialized = false;
- // Some Resolutions carry state and must be re-created - this call resets what it needs to.
+ // Some Resolutions carry state and must be re-created - this call resets
+ // what it needs to.
ResolutionFactory::Access().Reset();
#ifndef __HOSTBOOT_MODULE
@@ -109,8 +109,7 @@ errlHndl_t initialize()
// Synchronize SCOM access to hardware
// Start un-synchronized so hardware is accessed
- ScanCommRegisterAccess::SynchType::Advance();
-
+ RegDataCache::getCachedRegisters().flush();
if(g_initialized == true && systemPtr != NULL)
{
// This means we are being re-initialized (and we were in a good state)
@@ -127,7 +126,8 @@ errlHndl_t initialize()
#ifndef __HOSTBOOT_MODULE
- //Is this the correct place to add the check for the saved SDC and the sdc errl commit, if found???
+ //FIXME RTC64373 Is this the correct place to add the check for the
+ //saved SDC and sdc errl commit, if found???
bool isSavedSdc = false;
ServiceDataCollector thisSavedSdc;
@@ -197,6 +197,8 @@ errlHndl_t main(ATTENTION_VALUE_TYPE i_attentionType, const AttnList & i_attnLis
g_prd_errlHndl = NULL;
uint32_t rc = SUCCESS;
+ // clears all the chips saved to stack during last analysis
+ ServiceDataCollector::clearChipStack( );
if(( g_initialized == false)&&(NULL ==systemPtr))
{
@@ -246,8 +248,8 @@ errlHndl_t main(ATTENTION_VALUE_TYPE i_attentionType, const AttnList & i_attnLis
}
else // do the analysis
{
- // Advance SCR Synch so that SCR reads access hardware
- ScanCommRegisterAccess::SynchType::Advance();
+ // flush Cache so that SCR reads access hardware
+ RegDataCache::getCachedRegisters().flush();
serviceData.SetAttentionType(i_attentionType);
@@ -264,6 +266,12 @@ errlHndl_t main(ATTENTION_VALUE_TYPE i_attentionType, const AttnList & i_attnLis
if (!latent_check_stop)
{
int32_t analyzeRc = systemPtr->Analyze(sdc, i_attentionType);
+ // flush Cache to free up the memory
+ RegDataCache::getCachedRegisters().flush();
+ ScanFacility & l_scanFac = ScanFacility::Access();
+ //delete all the wrapper register objects since these were created
+ //just for plugin code
+ l_scanFac.ResetPluginRegister();
SystemSpecific::postAnalysisWorkarounds(sdc);
if(analyzeRc != SUCCESS && g_prd_errlHndl == NULL)
{
diff --git a/src/usr/diag/prdf/common/prdfTrace.C b/src/usr/diag/prdf/common/prdfTrace.C
index e8b88e07a..bad1d8b6d 100755
--- a/src/usr/diag/prdf/common/prdfTrace.C
+++ b/src/usr/diag/prdf/common/prdfTrace.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/prdfTrace.H b/src/usr/diag/prdf/common/prdfTrace.H
index 4e9fb39e3..a5f74cf6d 100755
--- a/src/usr/diag/prdf/common/prdfTrace.H
+++ b/src/usr/diag/prdf/common/prdfTrace.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/prdf_types.h b/src/usr/diag/prdf/common/prdf_types.h
index 33d19ca9e..65dbf350a 100755
--- a/src/usr/diag/prdf/common/prdf_types.h
+++ b/src/usr/diag/prdf/common/prdf_types.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/CcAutoDeletePointer.h b/src/usr/diag/prdf/common/util/CcAutoDeletePointer.h
index 9e20415ef..37490074f 100755
--- a/src/usr/diag/prdf/common/util/CcAutoDeletePointer.h
+++ b/src/usr/diag/prdf/common/util/CcAutoDeletePointer.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1995,2012 */
+/* COPYRIGHT International Business Machines Corp. 1995,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/CcAutoDeletePointer.inl b/src/usr/diag/prdf/common/util/CcAutoDeletePointer.inl
index 7f7241e07..98c2e931c 100755
--- a/src/usr/diag/prdf/common/util/CcAutoDeletePointer.inl
+++ b/src/usr/diag/prdf/common/util/CcAutoDeletePointer.inl
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1995,2012 */
+/* COPYRIGHT International Business Machines Corp. 1995,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/CcSynch.h b/src/usr/diag/prdf/common/util/CcSynch.h
index c37c68836..aa346c5b3 100755
--- a/src/usr/diag/prdf/common/util/CcSynch.h
+++ b/src/usr/diag/prdf/common/util/CcSynch.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1995,2012 */
+/* COPYRIGHT International Business Machines Corp. 1995,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/CcSynch.inl b/src/usr/diag/prdf/common/util/CcSynch.inl
index 15e620cc7..d4fa86fa0 100755
--- a/src/usr/diag/prdf/common/util/CcSynch.inl
+++ b/src/usr/diag/prdf/common/util/CcSynch.inl
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1995,2012 */
+/* COPYRIGHT International Business Machines Corp. 1995,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/UtilFunct.H b/src/usr/diag/prdf/common/util/UtilFunct.H
index f6687746e..8e91af488 100755
--- a/src/usr/diag/prdf/common/util/UtilFunct.H
+++ b/src/usr/diag/prdf/common/util/UtilFunct.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2005,2012 */
+/* COPYRIGHT International Business Machines Corp. 2005,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/UtilHash.H b/src/usr/diag/prdf/common/util/UtilHash.H
index 7e0dee5dc..2941a68fb 100755
--- a/src/usr/diag/prdf/common/util/UtilHash.H
+++ b/src/usr/diag/prdf/common/util/UtilHash.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/UtilMapX.H b/src/usr/diag/prdf/common/util/UtilMapX.H
index bc34a6886..523e54a25 100755
--- a/src/usr/diag/prdf/common/util/UtilMapX.H
+++ b/src/usr/diag/prdf/common/util/UtilMapX.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/UtilSMap.H b/src/usr/diag/prdf/common/util/UtilSMap.H
index 042394f09..bbf337947 100755
--- a/src/usr/diag/prdf/common/util/UtilSMap.H
+++ b/src/usr/diag/prdf/common/util/UtilSMap.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2007,2012 */
+/* COPYRIGHT International Business Machines Corp. 2007,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/UtilTree.C b/src/usr/diag/prdf/common/util/UtilTree.C
index 464ec6557..59cd16a5e 100755
--- a/src/usr/diag/prdf/common/util/UtilTree.C
+++ b/src/usr/diag/prdf/common/util/UtilTree.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/UtilTree.H b/src/usr/diag/prdf/common/util/UtilTree.H
index 90dce80f8..af24805c9 100755
--- a/src/usr/diag/prdf/common/util/UtilTree.H
+++ b/src/usr/diag/prdf/common/util/UtilTree.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/UtilTreeX.H b/src/usr/diag/prdf/common/util/UtilTreeX.H
index 7fa33211f..0df0a57be 100755
--- a/src/usr/diag/prdf/common/util/UtilTreeX.H
+++ b/src/usr/diag/prdf/common/util/UtilTreeX.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/iipbits.h b/src/usr/diag/prdf/common/util/iipbits.h
index 4d00b5cc3..a5fc6acce 100755
--- a/src/usr/diag/prdf/common/util/iipbits.h
+++ b/src/usr/diag/prdf/common/util/iipbits.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1993,2012 */
+/* COPYRIGHT International Business Machines Corp. 1993,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/iipbtlst.h b/src/usr/diag/prdf/common/util/iipbtlst.h
index 6f0f5d840..03f021d97 100755
--- a/src/usr/diag/prdf/common/util/iipbtlst.h
+++ b/src/usr/diag/prdf/common/util/iipbtlst.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1993,2012 */
+/* COPYRIGHT International Business Machines Corp. 1993,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/iipdgtb.C b/src/usr/diag/prdf/common/util/iipdgtb.C
index 65b6938b0..6dbf82a4a 100755
--- a/src/usr/diag/prdf/common/util/iipdgtb.C
+++ b/src/usr/diag/prdf/common/util/iipdgtb.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1993,2012 */
+/* COPYRIGHT International Business Machines Corp. 1993,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/iipdgtb.h b/src/usr/diag/prdf/common/util/iipdgtb.h
index 11e3ff06b..2fc8f2b1a 100755
--- a/src/usr/diag/prdf/common/util/iipdgtb.h
+++ b/src/usr/diag/prdf/common/util/iipdgtb.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1993,2012 */
+/* COPYRIGHT International Business Machines Corp. 1993,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/iipdigit.C b/src/usr/diag/prdf/common/util/iipdigit.C
index 56cb1823c..b014483f2 100755
--- a/src/usr/diag/prdf/common/util/iipdigit.C
+++ b/src/usr/diag/prdf/common/util/iipdigit.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1993,2012 */
+/* COPYRIGHT International Business Machines Corp. 1993,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/iipdigit.h b/src/usr/diag/prdf/common/util/iipdigit.h
index ebf0cc50a..24215dbd1 100755
--- a/src/usr/diag/prdf/common/util/iipdigit.h
+++ b/src/usr/diag/prdf/common/util/iipdigit.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1993,2012 */
+/* COPYRIGHT International Business Machines Corp. 1993,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/iipfltr.h b/src/usr/diag/prdf/common/util/iipfltr.h
index 182bd4ac4..a619e79b7 100755
--- a/src/usr/diag/prdf/common/util/iipfltr.h
+++ b/src/usr/diag/prdf/common/util/iipfltr.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1993,2012 */
+/* COPYRIGHT International Business Machines Corp. 1993,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfAssert.C b/src/usr/diag/prdf/common/util/prdfAssert.C
index fcbecff98..b45ace541 100755
--- a/src/usr/diag/prdf/common/util/prdfAssert.C
+++ b/src/usr/diag/prdf/common/util/prdfAssert.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfAssert.h b/src/usr/diag/prdf/common/util/prdfAssert.h
index ed05cf37e..e7f33f389 100755
--- a/src/usr/diag/prdf/common/util/prdfAssert.h
+++ b/src/usr/diag/prdf/common/util/prdfAssert.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfBitKey.C b/src/usr/diag/prdf/common/util/prdfBitKey.C
index 8a2bcc9a4..37e14e7a1 100755
--- a/src/usr/diag/prdf/common/util/prdfBitKey.C
+++ b/src/usr/diag/prdf/common/util/prdfBitKey.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfBitKey.H b/src/usr/diag/prdf/common/util/prdfBitKey.H
index 34dd7c954..91819dec7 100755
--- a/src/usr/diag/prdf/common/util/prdfBitKey.H
+++ b/src/usr/diag/prdf/common/util/prdfBitKey.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfBitString.C b/src/usr/diag/prdf/common/util/prdfBitString.C
index c4a8e600b..c46f9e6b3 100755
--- a/src/usr/diag/prdf/common/util/prdfBitString.C
+++ b/src/usr/diag/prdf/common/util/prdfBitString.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfBitString.H b/src/usr/diag/prdf/common/util/prdfBitString.H
index 723c73144..055d8ef3c 100755
--- a/src/usr/diag/prdf/common/util/prdfBitString.H
+++ b/src/usr/diag/prdf/common/util/prdfBitString.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfErrlSmartPtr.C b/src/usr/diag/prdf/common/util/prdfErrlSmartPtr.C
index 050dcc7f5..02def05a8 100755
--- a/src/usr/diag/prdf/common/util/prdfErrlSmartPtr.C
+++ b/src/usr/diag/prdf/common/util/prdfErrlSmartPtr.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfErrlSmartPtr.H b/src/usr/diag/prdf/common/util/prdfErrlSmartPtr.H
index fb847e845..c97ad3a96 100755
--- a/src/usr/diag/prdf/common/util/prdfErrlSmartPtr.H
+++ b/src/usr/diag/prdf/common/util/prdfErrlSmartPtr.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2003,2012 */
+/* COPYRIGHT International Business Machines Corp. 2003,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfErrorSignature.H b/src/usr/diag/prdf/common/util/prdfErrorSignature.H
index 2fb2cc877..0497fcbb4 100755
--- a/src/usr/diag/prdf/common/util/prdfErrorSignature.H
+++ b/src/usr/diag/prdf/common/util/prdfErrorSignature.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfFilters.C b/src/usr/diag/prdf/common/util/prdfFilters.C
index aa8c55c8e..8085b6cd5 100755
--- a/src/usr/diag/prdf/common/util/prdfFilters.C
+++ b/src/usr/diag/prdf/common/util/prdfFilters.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 1996,2012 */
+/* COPYRIGHT International Business Machines Corp. 1996,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfFilters.H b/src/usr/diag/prdf/common/util/prdfFilters.H
index 4e2fe7cca..032ba4521 100755
--- a/src/usr/diag/prdf/common/util/prdfFilters.H
+++ b/src/usr/diag/prdf/common/util/prdfFilters.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2004,2012 */
+/* COPYRIGHT International Business Machines Corp. 2004,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfFlyWeight.C b/src/usr/diag/prdf/common/util/prdfFlyWeight.C
index 364e2e7db..2cdc8673e 100755
--- a/src/usr/diag/prdf/common/util/prdfFlyWeight.C
+++ b/src/usr/diag/prdf/common/util/prdfFlyWeight.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2000,2012 */
+/* COPYRIGHT International Business Machines Corp. 2000,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfFlyWeight.H b/src/usr/diag/prdf/common/util/prdfFlyWeight.H
index 64573dda2..28792d873 100755
--- a/src/usr/diag/prdf/common/util/prdfFlyWeight.H
+++ b/src/usr/diag/prdf/common/util/prdfFlyWeight.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfFlyWeightS.C b/src/usr/diag/prdf/common/util/prdfFlyWeightS.C
index d1ef67050..7273a9d66 100755
--- a/src/usr/diag/prdf/common/util/prdfFlyWeightS.C
+++ b/src/usr/diag/prdf/common/util/prdfFlyWeightS.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2007,2012 */
+/* COPYRIGHT International Business Machines Corp. 2007,2013 */
/* */
/* p1 */
/* */
@@ -286,6 +286,16 @@ void FlyWeightS<T,S>::increaseSize()
};
+#ifdef __MEM_PROFILING
+template < class T , uint32_t S >
+void FlyWeightS<T,S>::printStats(void)
+{
+ using namespace std;
+ PRDF_DTRAC( "no. of elements %d Flyweight size %d",
+ iv_heaps.size()*S,(iv_heaps.size() * sizeof(T) * S) );
+}
+#endif
+
/*
template <typename T, uint32_t S>
void FlyWeightS<T,S>::print()
diff --git a/src/usr/diag/prdf/common/util/prdfFlyWeightS.H b/src/usr/diag/prdf/common/util/prdfFlyWeightS.H
index f6949cadf..ffae8a5ac 100755
--- a/src/usr/diag/prdf/common/util/prdfFlyWeightS.H
+++ b/src/usr/diag/prdf/common/util/prdfFlyWeightS.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2007,2012 */
+/* COPYRIGHT International Business Machines Corp. 2007,2013 */
/* */
/* p1 */
/* */
@@ -45,6 +45,10 @@ class FlyWeightS
T & get(const T & key);
//void print();
+#ifdef __MEM_PROFILING
+
+ void printStats();
+#endif
private:
diff --git a/src/usr/diag/prdf/common/util/prdfHeapBucketSize.H b/src/usr/diag/prdf/common/util/prdfHeapBucketSize.H
index 4073b67ba..5e9373c3b 100755
--- a/src/usr/diag/prdf/common/util/prdfHeapBucketSize.H
+++ b/src/usr/diag/prdf/common/util/prdfHeapBucketSize.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2012 */
+/* COPYRIGHT International Business Machines Corp. 2012,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfRegisterData.C b/src/usr/diag/prdf/common/util/prdfRegisterData.C
index e33ba1340..9fd9b27eb 100755
--- a/src/usr/diag/prdf/common/util/prdfRegisterData.C
+++ b/src/usr/diag/prdf/common/util/prdfRegisterData.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2005,2012 */
+/* COPYRIGHT International Business Machines Corp. 2005,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfRegisterData.H b/src/usr/diag/prdf/common/util/prdfRegisterData.H
index 4322f5b19..5aea0ce4e 100755
--- a/src/usr/diag/prdf/common/util/prdfRegisterData.H
+++ b/src/usr/diag/prdf/common/util/prdfRegisterData.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2005,2012 */
+/* COPYRIGHT International Business Machines Corp. 2005,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/prdfTimer.H b/src/usr/diag/prdf/common/util/prdfTimer.H
index 9ed4daff8..bf3c01856 100755
--- a/src/usr/diag/prdf/common/util/prdfTimer.H
+++ b/src/usr/diag/prdf/common/util/prdfTimer.H
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2002,2012 */
+/* COPYRIGHT International Business Machines Corp. 2002,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/xspprdFilterLink.h b/src/usr/diag/prdf/common/util/xspprdFilterLink.h
index 3fd0b91c0..13cf25bca 100755
--- a/src/usr/diag/prdf/common/util/xspprdFilterLink.h
+++ b/src/usr/diag/prdf/common/util/xspprdFilterLink.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2001,2012 */
+/* COPYRIGHT International Business Machines Corp. 2001,2013 */
/* */
/* p1 */
/* */
diff --git a/src/usr/diag/prdf/common/util/xspprdScanCommFilter.h b/src/usr/diag/prdf/common/util/xspprdScanCommFilter.h
index a64820fe9..252622357 100755
--- a/src/usr/diag/prdf/common/util/xspprdScanCommFilter.h
+++ b/src/usr/diag/prdf/common/util/xspprdScanCommFilter.h
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2001,2012 */
+/* COPYRIGHT International Business Machines Corp. 2001,2013 */
/* */
/* p1 */
/* */
OpenPOWER on IntegriCloud