162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci#include "map_symbol.h" 362306a36Sopenharmony_ci#include "mem-events.h" 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci#define E(t, n, s) { .tag = t, .name = n, .sysfs_name = s } 662306a36Sopenharmony_ci 762306a36Sopenharmony_cistatic struct perf_mem_event perf_mem_events[PERF_MEM_EVENTS__MAX] = { 862306a36Sopenharmony_ci E("spe-load", "arm_spe_0/ts_enable=1,pa_enable=1,load_filter=1,store_filter=0,min_latency=%u/", "arm_spe_0"), 962306a36Sopenharmony_ci E("spe-store", "arm_spe_0/ts_enable=1,pa_enable=1,load_filter=0,store_filter=1/", "arm_spe_0"), 1062306a36Sopenharmony_ci E("spe-ldst", "arm_spe_0/ts_enable=1,pa_enable=1,load_filter=1,store_filter=1,min_latency=%u/", "arm_spe_0"), 1162306a36Sopenharmony_ci}; 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_cistatic char mem_ev_name[100]; 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_cistruct perf_mem_event *perf_mem_events__ptr(int i) 1662306a36Sopenharmony_ci{ 1762306a36Sopenharmony_ci if (i >= PERF_MEM_EVENTS__MAX) 1862306a36Sopenharmony_ci return NULL; 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ci return &perf_mem_events[i]; 2162306a36Sopenharmony_ci} 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ciconst char *perf_mem_events__name(int i, const char *pmu_name __maybe_unused) 2462306a36Sopenharmony_ci{ 2562306a36Sopenharmony_ci struct perf_mem_event *e = perf_mem_events__ptr(i); 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci if (i >= PERF_MEM_EVENTS__MAX) 2862306a36Sopenharmony_ci return NULL; 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci if (i == PERF_MEM_EVENTS__LOAD || i == PERF_MEM_EVENTS__LOAD_STORE) 3162306a36Sopenharmony_ci scnprintf(mem_ev_name, sizeof(mem_ev_name), 3262306a36Sopenharmony_ci e->name, perf_mem_events__loads_ldlat); 3362306a36Sopenharmony_ci else /* PERF_MEM_EVENTS__STORE */ 3462306a36Sopenharmony_ci scnprintf(mem_ev_name, sizeof(mem_ev_name), e->name); 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci return mem_ev_name; 3762306a36Sopenharmony_ci} 38