Main Page Modules Alphabetical List Data Structures File List Data Fields Globals # IxPerfProfAcc.h Go to the documentation of this file.
    00001
    00054 #ifndef IXPERFPROFACC_H
    00055 #define IXPERFPROFACC_H
    00056
    00057 #include "IxTypes.h"
    00058 #include "IxOsCacheMMU.h"
    00059 #include "IxOsServices.h"
    00060
    00061 #ifdef __linux
    00062 #include <linux/proc_fs.h>
    00063 #endif
    00064
    00065 /*
    00066  * Section for #define
    00067  */
    00076 #define IX_PERFPROF_ACC_XSCALE_PMU_MAX_PROFILE_SAMPLES  0xFFFF
    00077
    00087 #define IX_PERFPROF_ACC_BUS_PMU_MAX_PECS        7
    00088
    00098 #define IX_PERFPROF_ACC_XCYCLE_MAX_NUM_OF_MEASUREMENTS 600
    00099
    00118 #ifndef NDEBUG
    00119 #define IX_PERFPROF_ACC_LOG(level, str, a, b, c, d, e, f)\
    00120              (ixOsServLog (level, str, a, b, c, d, e, f))
    00121 #else /*do nothing*/
    00122 #define IX_PERFPROF_ACC_LOG(level, str, a, b, c, d, e, f)
    00123 #endif /*ifdef NDEBUG */
    00124
    00125 /*
    00126  * Section for struct
    00127  */
    00128
    00135 typedef struct
    00136 {
    00137     UINT32 programCounter;
    00138     UINT32 freq;
    00139 } IxPerfProfAccXscalePmuSamplePcProfile;
    00140
    00147 typedef struct
    00148 {
    00149     UINT32 lower32BitsEventCount;
    00150     UINT32 upper32BitsEventCount;
    00151 }   IxPerfProfAccXscalePmuEvtCnt;
    00152
    00159 typedef struct
    00160 {
    00161     UINT32 clk_value;
    00162     UINT32 clk_samples;
    00163     UINT32 event1_value;
    00164     UINT32 event1_samples;
    00165     UINT32 event2_value;
    00166     UINT32 event2_samples;
    00167     UINT32 event3_value;
    00168     UINT32 event3_samples;
    00169     UINT32 event4_value;
    00170     UINT32 event4_samples;
    00171 } IxPerfProfAccXscalePmuResults;
    00172
    00177 typedef struct
    00178 {
    00179     float maxIdlePercentage;
    00180     float minIdlePercentage;
    00181     float aveIdlePercentage;
    00182     UINT32 totalMeasurements;
    00183 } IxPerfProfAccXcycleResults;
    00184
    00191 typedef struct
    00192 {
    00193     UINT32 statsToGetLower27Bit[IX_PERFPROF_ACC_BUS_PMU_MAX_PECS];
    00194     UINT32 statsToGetUpper32Bit[IX_PERFPROF_ACC_BUS_PMU_MAX_PECS];
    00195 } IxPerfProfAccBusPmuResults;
    00196
    00197 /*
    00198  * Section for enum
    00199  */
    00200
    00210 typedef enum
    00211 {
    00212     IX_PERFPROF_ACC_BUS_PMU_PEC1_NORTH_NPEA_GRANT_SELECT = 1,
    00213     IX_PERFPROF_ACC_BUS_PMU_PEC1_NORTH_NPEB_GRANT_SELECT,
    00214     IX_PERFPROF_ACC_BUS_PMU_PEC1_NORTH_NPEC_GRANT_SELECT,
    00215     IX_PERFPROF_ACC_BUS_PMU_PEC1_NORTH_BUS_IDLE_SELECT,
    00216     IX_PERFPROF_ACC_BUS_PMU_PEC1_NORTH_NPEA_REQ_SELECT,
    00217     IX_PERFPROF_ACC_BUS_PMU_PEC1_NORTH_NPEB_REQ_SELECT,
    00218     IX_PERFPROF_ACC_BUS_PMU_PEC1_NORTH_NPEC_REQ_SELECT,
    00220     IX_PERFPROF_ACC_BUS_PMU_PEC1_SOUTH_GSKT_GRANT_SELECT,
    00221     IX_PERFPROF_ACC_BUS_PMU_PEC1_SOUTH_ABB_GRANT_SELECT,
    00222     IX_PERFPROF_ACC_BUS_PMU_PEC1_SOUTH_PCI_GRANT_SELECT,
    00223     IX_PERFPROF_ACC_BUS_PMU_PEC1_SOUTH_APB_GRANT_SELECT,
    00224     IX_PERFPROF_ACC_BUS_PMU_PEC1_SOUTH_GSKT_REQ_SELECT,
    00225     IX_PERFPROF_ACC_BUS_PMU_PEC1_SOUTH_ABB_REQ_SELECT,
    00226     IX_PERFPROF_ACC_BUS_PMU_PEC1_SOUTH_PCI_REQ_SELECT,
    00227     IX_PERFPROF_ACC_BUS_PMU_PEC1_SOUTH_APB_REQ_SELECT,
    00229     IX_PERFPROF_ACC_BUS_PMU_PEC1_SDR_0_HIT_SELECT,
    00230     IX_PERFPROF_ACC_BUS_PMU_PEC1_SDR_1_HIT_SELECT,
    00231     IX_PERFPROF_ACC_BUS_PMU_PEC1_SDR_2_HIT_SELECT,
    00232     IX_PERFPROF_ACC_BUS_PMU_PEC1_SDR_3_HIT_SELECT,
    00233     IX_PERFPROF_ACC_BUS_PMU_PEC1_SDR_4_MISS_SELECT,
    00234     IX_PERFPROF_ACC_BUS_PMU_PEC1_SDR_5_MISS_SELECT,
    00235     IX_PERFPROF_ACC_BUS_PMU_PEC1_SDR_6_MISS_SELECT,
    00236     IX_PERFPROF_ACC_BUS_PMU_PEC1_SDR_7_MISS_SELECT
    00237 } IxPerfProfAccBusPmuEventCounters1;
    00238
    00248 typedef enum
    00249 {
    00250     IX_PERFPROF_ACC_BUS_PMU_PEC2_NORTH_NPEA_XFER_SELECT = 24,
    00251     IX_PERFPROF_ACC_BUS_PMU_PEC2_NORTH_NPEB_XFER_SELECT,
    00252     IX_PERFPROF_ACC_BUS_PMU_PEC2_NORTH_NPEC_XFER_SELECT,
    00253     IX_PERFPROF_ACC_BUS_PMU_PEC2_NORTH_BUS_WRITE_SELECT,
    00254     IX_PERFPROF_ACC_BUS_PMU_PEC2_NORTH_NPEA_OWN_SELECT,
    00255     IX_PERFPROF_ACC_BUS_PMU_PEC2_NORTH_NPEB_OWN_SELECT,
    00256     IX_PERFPROF_ACC_BUS_PMU_PEC2_NORTH_NPEC_OWN_SELECT,
    00258     IX_PERFPROF_ACC_BUS_PMU_PEC2_SOUTH_GSKT_XFER_SELECT,
    00259     IX_PERFPROF_ACC_BUS_PMU_PEC2_SOUTH_ABB_XFER_SELECT,
    00260     IX_PERFPROF_ACC_BUS_PMU_PEC2_SOUTH_PCI_XFER_SELECT,
    00261     IX_PERFPROF_ACC_BUS_PMU_PEC2_SOUTH_APB_XFER_SELECT,
    00262     IX_PERFPROF_ACC_BUS_PMU_PEC2_SOUTH_GSKT_OWN_SELECT,
    00263     IX_PERFPROF_ACC_BUS_PMU_PEC2_SOUTH_ABB_OWN_SELECT,
    00264     IX_PERFPROF_ACC_BUS_PMU_PEC2_SOUTH_PCI_OWN_SELECT,
    00265     IX_PERFPROF_ACC_BUS_PMU_PEC2_SOUTH_APB_OWN_SELECT,
    00267     IX_PERFPROF_ACC_BUS_PMU_PEC2_SDR_1_HIT_SELECT,
    00268     IX_PERFPROF_ACC_BUS_PMU_PEC2_SDR_2_HIT_SELECT,
    00269     IX_PERFPROF_ACC_BUS_PMU_PEC2_SDR_3_HIT_SELECT,
    00270     IX_PERFPROF_ACC_BUS_PMU_PEC2_SDR_4_HIT_SELECT,
    00271     IX_PERFPROF_ACC_BUS_PMU_PEC2_SDR_5_MISS_SELECT,
    00272     IX_PERFPROF_ACC_BUS_PMU_PEC2_SDR_6_MISS_SELECT,
    00273     IX_PERFPROF_ACC_BUS_PMU_PEC2_SDR_7_MISS_SELECT,
    00274     IX_PERFPROF_ACC_BUS_PMU_PEC2_SDR_0_MISS_SELECT
    00275 } IxPerfProfAccBusPmuEventCounters2;
    00276
    00286 typedef enum
    00287 {
    00288     IX_PERFPROF_ACC_BUS_PMU_PEC3_NORTH_NPEA_RETRY_SELECT = 47,
    00289     IX_PERFPROF_ACC_BUS_PMU_PEC3_NORTH_NPEB_RETRY_SELECT,
    00290     IX_PERFPROF_ACC_BUS_PMU_PEC3_NORTH_NPEC_RETRY_SELECT,
    00291     IX_PERFPROF_ACC_BUS_PMU_PEC3_NORTH_BUS_READ_SELECT,
    00292     IX_PERFPROF_ACC_BUS_PMU_PEC3_NORTH_NPEA_WRITE_SELECT,
    00293     IX_PERFPROF_ACC_BUS_PMU_PEC3_NORTH_NPEB_WRITE_SELECT,
    00294     IX_PERFPROF_ACC_BUS_PMU_PEC3_NORTH_NPEC_WRITE_SELECT,
    00296     IX_PERFPROF_ACC_BUS_PMU_PEC3_SOUTH_GSKT_RETRY_SELECT,
    00297     IX_PERFPROF_ACC_BUS_PMU_PEC3_SOUTH_ABB_RETRY_SELECT,
    00298     IX_PERFPROF_ACC_BUS_PMU_PEC3_SOUTH_PCI_RETRY_SELECT,
    00299     IX_PERFPROF_ACC_BUS_PMU_PEC3_SOUTH_APB_RETRY_SELECT,
    00300     IX_PERFPROF_ACC_BUS_PMU_PEC3_SOUTH_GSKT_WRITE_SELECT,
    00301     IX_PERFPROF_ACC_BUS_PMU_PEC3_SOUTH_ABB_WRITE_SELECT,
    00302     IX_PERFPROF_ACC_BUS_PMU_PEC3_SOUTH_PCI_WRITE_SELECT,
    00303     IX_PERFPROF_ACC_BUS_PMU_PEC3_SOUTH_APB_WRITE_SELECT,
    00305     IX_PERFPROF_ACC_BUS_PMU_PEC3_SDR_2_HIT_SELECT,
    00306     IX_PERFPROF_ACC_BUS_PMU_PEC3_SDR_3_HIT_SELECT,
    00307     IX_PERFPROF_ACC_BUS_PMU_PEC3_SDR_4_HIT_SELECT,
    00308     IX_PERFPROF_ACC_BUS_PMU_PEC3_SDR_5_HIT_SELECT,
    00309     IX_PERFPROF_ACC_BUS_PMU_PEC3_SDR_6_MISS_SELECT,
    00310     IX_PERFPROF_ACC_BUS_PMU_PEC3_SDR_7_MISS_SELECT,
    00311     IX_PERFPROF_ACC_BUS_PMU_PEC3_SDR_0_MISS_SELECT,
    00312     IX_PERFPROF_ACC_BUS_PMU_PEC3_SDR_1_MISS_SELECT
    00313 } IxPerfProfAccBusPmuEventCounters3;
    00314
    00324 typedef enum
    00325 {
    00326     IX_PERFPROF_ACC_BUS_PMU_PEC4_SOUTH_PCI_SPLIT_SELECT = 70,
    00327     IX_PERFPROF_ACC_BUS_PMU_PEC4_SOUTH_EXP_SPLIT_SELECT,
    00328     IX_PERFPROF_ACC_BUS_PMU_PEC4_SOUTH_APB_GRANT_SELECT,
    00329     IX_PERFPROF_ACC_BUS_PMU_PEC4_SOUTH_APB_XFER_SELECT,
    00330     IX_PERFPROF_ACC_BUS_PMU_PEC4_SOUTH_GSKT_READ_SELECT,
    00331     IX_PERFPROF_ACC_BUS_PMU_PEC4_SOUTH_ABB_READ_SELECT,
    00332     IX_PERFPROF_ACC_BUS_PMU_PEC4_SOUTH_PCI_READ_SELECT,
    00333     IX_PERFPROF_ACC_BUS_PMU_PEC4_SOUTH_APB_READ_SELECT,
    00335     IX_PERFPROF_ACC_BUS_PMU_PEC4_NORTH_ABB_SPLIT_SELECT,
    00336     IX_PERFPROF_ACC_BUS_PMU_PEC4_NORTH_NPEA_REQ_SELECT,
    00337     IX_PERFPROF_ACC_BUS_PMU_PEC4_NORTH_NPEA_READ_SELECT,
    00338     IX_PERFPROF_ACC_BUS_PMU_PEC4_NORTH_NPEB_READ_SELECT,
    00339     IX_PERFPROF_ACC_BUS_PMU_PEC4_NORTH_NPEC_READ_SELECT,
    00341     IX_PERFPROF_ACC_BUS_PMU_PEC4_SDR_3_HIT_SELECT,
    00342     IX_PERFPROF_ACC_BUS_PMU_PEC4_SDR_4_HIT_SELECT,
    00343     IX_PERFPROF_ACC_BUS_PMU_PEC4_SDR_5_HIT_SELECT,
    00344     IX_PERFPROF_ACC_BUS_PMU_PEC4_SDR_6_HIT_SELECT,
    00345     IX_PERFPROF_ACC_BUS_PMU_PEC4_SDR_7_MISS_SELECT,
    00346     IX_PERFPROF_ACC_BUS_PMU_PEC4_SDR_0_MISS_SELECT,
    00347     IX_PERFPROF_ACC_BUS_PMU_PEC4_SDR_1_MISS_SELECT,
    00348     IX_PERFPROF_ACC_BUS_PMU_PEC4_SDR_2_MISS_SELECT
    00349 } IxPerfProfAccBusPmuEventCounters4;
    00350
    00360 typedef enum
    00361 {
    00362     IX_PERFPROF_ACC_BUS_PMU_PEC5_SOUTH_ABB_GRANT_SELECT = 91,
    00363     IX_PERFPROF_ACC_BUS_PMU_PEC5_SOUTH_ABB_XFER_SELECT,
    00364     IX_PERFPROF_ACC_BUS_PMU_PEC5_SOUTH_ABB_RETRY_SELECT,
    00365     IX_PERFPROF_ACC_BUS_PMU_PEC5_SOUTH_EXP_SPLIT_SELECT,
    00366     IX_PERFPROF_ACC_BUS_PMU_PEC5_SOUTH_ABB_REQ_SELECT,
    00367     IX_PERFPROF_ACC_BUS_PMU_PEC5_SOUTH_ABB_OWN_SELECT,
    00368     IX_PERFPROF_ACC_BUS_PMU_PEC5_SOUTH_BUS_IDLE_SELECT,
    00370     IX_PERFPROF_ACC_BUS_PMU_PEC5_NORTH_NPEB_GRANT_SELECT,
    00371     IX_PERFPROF_ACC_BUS_PMU_PEC5_NORTH_NPEB_XFER_SELECT,
    00372     IX_PERFPROF_ACC_BUS_PMU_PEC5_NORTH_NPEB_RETRY_SELECT,
    00373     IX_PERFPROF_ACC_BUS_PMU_PEC5_NORTH_NPEB_REQ_SELECT,
    00374     IX_PERFPROF_ACC_BUS_PMU_PEC5_NORTH_NPEB_OWN_SELECT,
    00375     IX_PERFPROF_ACC_BUS_PMU_PEC5_NORTH_NPEB_WRITE_SELECT,
    00376     IX_PERFPROF_ACC_BUS_PMU_PEC5_NORTH_NPEB_READ_SELECT,
    00378     IX_PERFPROF_ACC_BUS_PMU_PEC5_SDR_4_HIT_SELECT,
    00379     IX_PERFPROF_ACC_BUS_PMU_PEC5_SDR_5_HIT_SELECT,
    00380     IX_PERFPROF_ACC_BUS_PMU_PEC5_SDR_6_HIT_SELECT,
    00381     IX_PERFPROF_ACC_BUS_PMU_PEC5_SDR_7_HIT_SELECT,
    00382     IX_PERFPROF_ACC_BUS_PMU_PEC5_SDR_0_MISS_SELECT,
    00383     IX_PERFPROF_ACC_BUS_PMU_PEC5_SDR_1_MISS_SELECT,
    00384     IX_PERFPROF_ACC_BUS_PMU_PEC5_SDR_2_MISS_SELECT,
    00385     IX_PERFPROF_ACC_BUS_PMU_PEC5_SDR_3_MISS_SELECT
    00386 } IxPerfProfAccBusPmuEventCounters5;
    00387
    00397 typedef enum
    00398 {
    00399     IX_PERFPROF_ACC_BUS_PMU_PEC6_SOUTH_PCI_GRANT_SELECT = 113,
    00400     IX_PERFPROF_ACC_BUS_PMU_PEC6_SOUTH_PCI_XFER_SELECT,
    00401     IX_PERFPROF_ACC_BUS_PMU_PEC6_SOUTH_PCI_RETRY_SELECT,
    00402     IX_PERFPROF_ACC_BUS_PMU_PEC6_SOUTH_PCI_SPLIT_SELECT,
    00403     IX_PERFPROF_ACC_BUS_PMU_PEC6_SOUTH_PCI_REQ_SELECT,
    00404     IX_PERFPROF_ACC_BUS_PMU_PEC6_SOUTH_PCI_OWN_SELECT,
    00405     IX_PERFPROF_ACC_BUS_PMU_PEC6_SOUTH_BUS_WRITE_SELECT,
    00407     IX_PERFPROF_ACC_BUS_PMU_PEC6_NORTH_NPEC_GRANT_SELECT,
    00408     IX_PERFPROF_ACC_BUS_PMU_PEC6_NORTH_NPEC_XFER_SELECT,
    00409     IX_PERFPROF_ACC_BUS_PMU_PEC6_NORTH_NPEC_RETRY_SELECT,
    00410     IX_PERFPROF_ACC_BUS_PMU_PEC6_NORTH_NPEC_REQ_SELECT,
    00411     IX_PERFPROF_ACC_BUS_PMU_PEC6_NORTH_NPEC_OWN_SELECT,
    00412     IX_PERFPROF_ACC_BUS_PMU_PEC6_NORTH_NPEB_WRITE_SELECT,
    00413     IX_PERFPROF_ACC_BUS_PMU_PEC6_NORTH_NPEC_READ_SELECT,
    00415     IX_PERFPROF_ACC_BUS_PMU_PEC6_SDR_5_HIT_SELECT,
    00416     IX_PERFPROF_ACC_BUS_PMU_PEC6_SDR_6_HIT_SELECT,
    00417     IX_PERFPROF_ACC_BUS_PMU_PEC6_SDR_7_HIT_SELECT,
    00418     IX_PERFPROF_ACC_BUS_PMU_PEC6_SDR_0_HIT_SELECT,
    00419     IX_PERFPROF_ACC_BUS_PMU_PEC6_SDR_1_MISS_SELECT,
    00420     IX_PERFPROF_ACC_BUS_PMU_PEC6_SDR_2_MISS_SELECT,
    00421     IX_PERFPROF_ACC_BUS_PMU_PEC6_SDR_3_MISS_SELECT,
    00422     IX_PERFPROF_ACC_BUS_PMU_PEC6_SDR_4_MISS_SELECT
    00423 } IxPerfProfAccBusPmuEventCounters6;
    00424
    00434 typedef enum
    00435 {
    00436     IX_PERFPROF_ACC_BUS_PMU_PEC7_SOUTH_APB_RETRY_SELECT = 135,
    00437     IX_PERFPROF_ACC_BUS_PMU_PEC7_SOUTH_APB_REQ_SELECT,
    00438     IX_PERFPROF_ACC_BUS_PMU_PEC7_SOUTH_APB_OWN_SELECT,
    00439     IX_PERFPROF_ACC_BUS_PMU_PEC7_SOUTH_BUS_READ_SELECT,
    00440     IX_PERFPROF_ACC_BUS_PMU_PEC7_CYCLE_COUNT_SELECT
    00441 } IxPerfProfAccBusPmuEventCounters7;
    00442
    00453 typedef enum
    00454 {
    00455     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_CACHE_MISS=0,
    00456     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_CACHE_INSTRUCTION,
    00457     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_STALL,
    00458     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_INST_TLB_MISS,
    00459     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_DATA_TLB_MISS,
    00460     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_BRANCH_EXEC,
    00461     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_BRANCH_MISPREDICT,
    00462     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_INST_EXEC,
    00463     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_FULL_EVERYCYCLE,
    00470     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_ONCE,
    00475     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_DATA_CACHE_ACCESS,
    00476     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_DATA_CACHE_MISS,
    00477     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_DATA_CACHE_WRITEBACK,
    00480     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_SW_CHANGE_PC,
    00481     IX_PERFPROF_ACC_XSCALE_PMU_EVENT_MAX
    00482 } IxPerfProfAccXscalePmuEvent;
    00483
    00493 typedef enum
    00494 {
    00495     IX_PERFPROF_ACC_STATUS_SUCCESS = IX_SUCCESS,
    00496     IX_PERFPROF_ACC_STATUS_FAIL = IX_FAIL,
    00497     IX_PERFPROF_ACC_STATUS_ANOTHER_UTIL_IN_PROGRESS,
    00500     IX_PERFPROF_ACC_STATUS_XCYCLE_MEASUREMENT_IN_PROGRESS,
    00503     IX_PERFPROF_ACC_STATUS_XCYCLE_NO_BASELINE,
    00504     IX_PERFPROF_ACC_STATUS_XCYCLE_MEASUREMENT_REQUEST_OUT_OF_RANGE,
    00508     IX_PERFPROF_ACC_STATUS_XCYCLE_PRIORITY_SET_FAIL,
    00512     IX_PERFPROF_ACC_STATUS_XCYCLE_THREAD_CREATE_FAIL,
    00515     IX_PERFPROF_ACC_STATUS_XCYCLE_PRIORITY_RESTORE_FAIL,
    00519     IX_PERFPROF_ACC_STATUS_XCYCLE_MEASUREMENT_NOT_RUNNING,
    00520     IX_PERFPROF_ACC_STATUS_XSCALE_PMU_NUM_INVALID,
    00523     IX_PERFPROF_ACC_STATUS_XSCALE_PMU_EVENT_INVALID,
    00524     IX_PERFPROF_ACC_STATUS_XSCALE_PMU_START_NOT_CALLED,
    00530     IX_PERFPROF_ACC_STATUS_BUS_PMU_MODE_ERROR,
    00531     IX_PERFPROF_ACC_STATUS_BUS_PMU_PEC1_ERROR,
    00532     IX_PERFPROF_ACC_STATUS_BUS_PMU_PEC2_ERROR,
    00533     IX_PERFPROF_ACC_STATUS_BUS_PMU_PEC3_ERROR,
    00534     IX_PERFPROF_ACC_STATUS_BUS_PMU_PEC4_ERROR,
    00535     IX_PERFPROF_ACC_STATUS_BUS_PMU_PEC5_ERROR,
    00536     IX_PERFPROF_ACC_STATUS_BUS_PMU_PEC6_ERROR,
    00537     IX_PERFPROF_ACC_STATUS_BUS_PMU_PEC7_ERROR,
    00538     IX_PERFPROF_ACC_STATUS_BUS_PMU_START_NOT_CALLED
    00543 } IxPerfProfAccStatus;
    00544
    00555 typedef enum
    00556 {
    00557         IX_PERFPROF_ACC_BUS_PMU_MODE_HALT=0,
    00558         IX_PERFPROF_ACC_BUS_PMU_MODE_SOUTH,
    00559         IX_PERFPROF_ACC_BUS_PMU_MODE_NORTH,
    00560         IX_PERFPROF_ACC_BUS_PMU_MODE_SDRAM
    00561 } IxPerfProfAccBusPmuMode;
    00562
    00563 /*
    00564  * Section for prototypes interface functions
    00565  */
    00566
    00616 PUBLIC IxPerfProfAccStatus
    00617 ixPerfProfAccXscalePmuEventCountStart(
    00618     BOOL clkCntDiv,
    00619     UINT32 numEvents,
    00620     IxPerfProfAccXscalePmuEvent pmuEvent1,
    00621     IxPerfProfAccXscalePmuEvent pmuEvent2,
    00622     IxPerfProfAccXscalePmuEvent pmuEvent3,
    00623     IxPerfProfAccXscalePmuEvent pmuEvent4 );
    00624
    00653 PUBLIC IxPerfProfAccStatus
    00654 ixPerfProfAccXscalePmuEventCountStop(
    00655    IxPerfProfAccXscalePmuResults *eventCountStopResults);
    00656
    00694 PUBLIC IxPerfProfAccStatus
    00695 ixPerfProfAccXscalePmuTimeSampStart(
    00696     UINT32 samplingRate,
    00697     BOOL clkCntDiv);
    00698
    00731 PUBLIC IxPerfProfAccStatus
    00732 ixPerfProfAccXscalePmuTimeSampStop(
    00733     IxPerfProfAccXscalePmuEvtCnt *clkCount,
    00734     IxPerfProfAccXscalePmuSamplePcProfile *timeProfile);
    00735
    00804 PUBLIC IxPerfProfAccStatus
    00805 ixPerfProfAccXscalePmuEventSampStart(
    00806     UINT32 numEvents,
    00807     IxPerfProfAccXscalePmuEvent pmuEvent1,
    00808     UINT32 eventRate1,
    00809     IxPerfProfAccXscalePmuEvent pmuEvent2,
    00810     UINT32 eventRate2,
    00811     IxPerfProfAccXscalePmuEvent pmuEvent3,
    00812     UINT32 eventRate3,
    00813     IxPerfProfAccXscalePmuEvent pmuEvent4,
    00814     UINT32 eventRate4);
    00815
    00862 PUBLIC IxPerfProfAccStatus
    00863 ixPerfProfAccXscalePmuEventSampStop(
    00864     IxPerfProfAccXscalePmuSamplePcProfile *eventProfile1,
    00865     IxPerfProfAccXscalePmuSamplePcProfile *eventProfile2,
    00866     IxPerfProfAccXscalePmuSamplePcProfile *eventProfile3,
    00867     IxPerfProfAccXscalePmuSamplePcProfile *eventProfile4);
    00868
    00894 PUBLIC void
    00895 ixPerfProfAccXscalePmuResultsGet(IxPerfProfAccXscalePmuResults *results);
    00896
    00955 PUBLIC
    00956 IxPerfProfAccStatus ixPerfProfAccBusPmuStart (
    00957         IxPerfProfAccBusPmuMode mode,
    00958         IxPerfProfAccBusPmuEventCounters1 pecEvent1,
    00959         IxPerfProfAccBusPmuEventCounters2 pecEvent2,
    00960         IxPerfProfAccBusPmuEventCounters3 pecEvent3,
    00961         IxPerfProfAccBusPmuEventCounters4 pecEvent4,
    00962         IxPerfProfAccBusPmuEventCounters5 pecEvent5,
    00963         IxPerfProfAccBusPmuEventCounters6 pecEvent6,
    00964         IxPerfProfAccBusPmuEventCounters7 pecEvent7);
    00965
    00985 PUBLIC IxPerfProfAccStatus
    00986 ixPerfProfAccBusPmuStop (void);
    00987
    01007 PUBLIC void
    01008 ixPerfProfAccBusPmuResultsGet (IxPerfProfAccBusPmuResults *BusPmuResults);
    01009
    01077 PUBLIC void
    01078 ixPerfProfAccBusPmuPMSRGet (
    01079 UINT32 *pmsrValue);
    01080
    01081
    01126 PUBLIC IxPerfProfAccStatus
    01127 ixPerfProfAccXcycleBaselineRun(
    01128     UINT32 *numBaselineCycle);
    01129
    01186 PUBLIC IxPerfProfAccStatus
    01187 ixPerfProfAccXcycleStart (
    01188     UINT32 numMeasurementsRequested);
    01189
    01217 PUBLIC IxPerfProfAccStatus
    01218 ixPerfProfAccXcycleStop(void);
    01219
    01250 PUBLIC IxPerfProfAccStatus
    01251 ixPerfProfAccXcycleResultsGet (
    01252     IxPerfProfAccXcycleResults *xcycleResult);
    01253
    01275 PUBLIC BOOL
    01276 ixPerfProfAccXcycleInProgress(void);
    01277
    01278 #ifdef __linux
    01279
    01302 int
    01303 ixPerfProfAccXscalePmuTimeSampCreateProcFile (char *buf, char **start, off_t offset,
    01304                                       int count, int *eof, void *data);
    01305
    01329 int
    01330 ixPerfProfAccXscalePmuEventSampCreateProcFile (char *buf, char **start, off_t offset,
    01331                                       int count, int *eof, void *data);
    01332
    01333
    01334 #endif /* ifdef __linux */
    01335
    01336 #endif /* ndef IXPERFPROFACC_H */
    01337
Automatically generated from sources. © Intel Corp. 2003