Blame src/libpfm4/lib/pfmlib_powerpc_nest.c

Packit 577717
/*
Packit 577717
 * pfmlib_powerpc_nest.c
Packit 577717
 */
Packit 577717
Packit 577717
#include "pfmlib_priv.h"
Packit 577717
#include "pfmlib_power_priv.h"
Packit 577717
#include "events/powerpc_nest_events.h"
Packit 577717
Packit 577717
static int pfm_powerpc_nest_detect(void* this)
Packit 577717
{
Packit 577717
    if (__is_processor(PV_POWER8))
Packit 577717
        return PFM_SUCCESS;
Packit 577717
    return PFM_ERR_NOTSUPP;
Packit 577717
}
Packit 577717
Packit 577717
pfmlib_pmu_t powerpc_nest_mcs_read_support={
Packit 577717
    .desc           = "POWERPC_NEST_MCS_RD_BW",
Packit 577717
    .name           = "powerpc_nest_mcs_read",
Packit 577717
    .pmu            = PFM_PMU_POWERPC_NEST_MCS_READ_BW,
Packit 577717
    .perf_name      = "Nest_MCS_Read_BW",
Packit 577717
    .pme_count      = LIBPFM_ARRAY_SIZE(powerpc_nest_read_pe),
Packit 577717
    .type           = PFM_PMU_TYPE_UNCORE,
Packit 577717
    .num_cntrs      = 4,
Packit 577717
    .num_fixed_cntrs    = 0,
Packit 577717
    .max_encoding       = 1,
Packit 577717
    .pe         = powerpc_nest_read_pe,
Packit 577717
    .pmu_detect     = pfm_powerpc_nest_detect,
Packit 577717
    .get_event_encoding[PFM_OS_NONE] = pfm_gen_powerpc_get_encoding,
Packit 577717
    PFMLIB_ENCODE_PERF(pfm_gen_powerpc_get_nest_perf_encoding),
Packit 577717
    PFMLIB_VALID_PERF_PATTRS(pfm_gen_powerpc_perf_validate_pattrs),
Packit 577717
    .get_event_first    = pfm_gen_powerpc_get_event_first,
Packit 577717
    .get_event_next     = pfm_gen_powerpc_get_event_next,
Packit 577717
    .event_is_valid     = pfm_gen_powerpc_event_is_valid,
Packit 577717
    .validate_table     = pfm_gen_powerpc_validate_table,
Packit 577717
    .get_event_info     = pfm_gen_powerpc_get_event_info,
Packit 577717
    .get_event_attr_info    = pfm_gen_powerpc_get_event_attr_info,
Packit 577717
};
Packit 577717
Packit 577717
pfmlib_pmu_t powerpc_nest_mcs_write_support={
Packit 577717
    .desc           = "POWERPC_NEST_MCS_WR_BW",
Packit 577717
    .name           = "powerpc_nest_mcs_write",
Packit 577717
    .pmu            = PFM_PMU_POWERPC_NEST_MCS_WRITE_BW,
Packit 577717
    .perf_name      = "Nest_MCS_Write_BW",
Packit 577717
    .pme_count      = LIBPFM_ARRAY_SIZE(powerpc_nest_write_pe),
Packit 577717
    .type           = PFM_PMU_TYPE_UNCORE,
Packit 577717
    .num_cntrs      = 4,
Packit 577717
    .num_fixed_cntrs    = 0,
Packit 577717
    .max_encoding       = 1,
Packit 577717
    .pe         = powerpc_nest_write_pe,
Packit 577717
    .pmu_detect     = pfm_powerpc_nest_detect,
Packit 577717
    .get_event_encoding[PFM_OS_NONE] = pfm_gen_powerpc_get_encoding,
Packit 577717
    PFMLIB_ENCODE_PERF(pfm_gen_powerpc_get_nest_perf_encoding),
Packit 577717
    PFMLIB_VALID_PERF_PATTRS(pfm_gen_powerpc_perf_validate_pattrs),
Packit 577717
    .get_event_first    = pfm_gen_powerpc_get_event_first,
Packit 577717
    .get_event_next     = pfm_gen_powerpc_get_event_next,
Packit 577717
    .event_is_valid     = pfm_gen_powerpc_event_is_valid,
Packit 577717
    .validate_table     = pfm_gen_powerpc_validate_table,
Packit 577717
    .get_event_info     = pfm_gen_powerpc_get_event_info,
Packit 577717
    .get_event_attr_info    = pfm_gen_powerpc_get_event_attr_info,
Packit 577717
};