drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
102
static void hisi_cpa_pmu_disable_pm(struct hisi_pmu *cpa_pmu)
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
111
static void hisi_cpa_pmu_enable_pm(struct hisi_pmu *cpa_pmu)
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
120
static void hisi_cpa_pmu_enable_counter(struct hisi_pmu *cpa_pmu,
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
131
static void hisi_cpa_pmu_disable_counter(struct hisi_pmu *cpa_pmu,
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
142
static void hisi_cpa_pmu_enable_counter_int(struct hisi_pmu *cpa_pmu,
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
153
static void hisi_cpa_pmu_disable_counter_int(struct hisi_pmu *cpa_pmu,
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
164
static u32 hisi_cpa_pmu_get_int_status(struct hisi_pmu *cpa_pmu)
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
169
static void hisi_cpa_pmu_clear_int_status(struct hisi_pmu *cpa_pmu, int idx)
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
181
struct hisi_pmu *cpa_pmu)
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
252
struct hisi_pmu *cpa_pmu)
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
277
struct hisi_pmu *cpa_pmu;
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
321
struct hisi_pmu *cpa_pmu = platform_get_drvdata(pdev);
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
49
static u64 hisi_cpa_pmu_read_counter(struct hisi_pmu *cpa_pmu,
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
55
static void hisi_cpa_pmu_write_counter(struct hisi_pmu *cpa_pmu,
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
61
static void hisi_cpa_pmu_write_evtype(struct hisi_pmu *cpa_pmu, int idx,
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
84
static void hisi_cpa_pmu_start_counters(struct hisi_pmu *cpa_pmu)
drivers/perf/hisilicon/hisi_uncore_cpa_pmu.c
93
static void hisi_cpa_pmu_stop_counters(struct hisi_pmu *cpa_pmu)
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
113
static void hisi_ddrc_pmu_write_evtype(struct hisi_pmu *ddrc_pmu, int idx,
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
126
struct hisi_pmu *ddrc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
142
struct hisi_pmu *ddrc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
151
static void hisi_ddrc_pmu_start_counters(struct hisi_pmu *ddrc_pmu)
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
161
static void hisi_ddrc_pmu_stop_counters(struct hisi_pmu *ddrc_pmu)
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
171
static void hisi_ddrc_pmu_enable_counter(struct hisi_pmu *ddrc_pmu,
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
182
static void hisi_ddrc_pmu_disable_counter(struct hisi_pmu *ddrc_pmu,
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
193
static void hisi_ddrc_pmu_enable_counter_int(struct hisi_pmu *ddrc_pmu,
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
204
static void hisi_ddrc_pmu_disable_counter_int(struct hisi_pmu *ddrc_pmu,
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
215
static u32 hisi_ddrc_pmu_get_int_status(struct hisi_pmu *ddrc_pmu)
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
222
static void hisi_ddrc_pmu_clear_int_status(struct hisi_pmu *ddrc_pmu,
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
231
struct hisi_pmu *ddrc_pmu)
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
352
struct hisi_pmu *ddrc_pmu)
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
377
struct hisi_pmu *ddrc_pmu;
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
425
struct hisi_pmu *ddrc_pmu = platform_get_drvdata(pdev);
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
86
static u64 hisi_ddrc_pmu_read_counter(struct hisi_pmu *ddrc_pmu,
drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c
97
static void hisi_ddrc_pmu_write_counter(struct hisi_pmu *ddrc_pmu,
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
113
struct hisi_pmu *hha_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
129
struct hisi_pmu *hha_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
168
static u64 hisi_hha_pmu_read_counter(struct hisi_pmu *hha_pmu,
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
175
static void hisi_hha_pmu_write_counter(struct hisi_pmu *hha_pmu,
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
182
static void hisi_hha_pmu_write_evtype(struct hisi_pmu *hha_pmu, int idx,
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
205
static void hisi_hha_pmu_start_counters(struct hisi_pmu *hha_pmu)
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
218
static void hisi_hha_pmu_stop_counters(struct hisi_pmu *hha_pmu)
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
231
static void hisi_hha_pmu_enable_counter(struct hisi_pmu *hha_pmu,
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
242
static void hisi_hha_pmu_disable_counter(struct hisi_pmu *hha_pmu,
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
253
static void hisi_hha_pmu_enable_counter_int(struct hisi_pmu *hha_pmu,
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
264
static void hisi_hha_pmu_disable_counter_int(struct hisi_pmu *hha_pmu,
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
275
static u32 hisi_hha_pmu_get_int_status(struct hisi_pmu *hha_pmu)
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
280
static void hisi_hha_pmu_clear_int_status(struct hisi_pmu *hha_pmu, int idx)
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
293
struct hisi_pmu *hha_pmu)
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
442
struct hisi_pmu *hha_pmu)
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
474
struct hisi_pmu *hha_pmu;
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
514
struct hisi_pmu *hha_pmu = platform_get_drvdata(pdev);
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
61
struct hisi_pmu *hha_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
75
struct hisi_pmu *hha_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
85
struct hisi_pmu *hha_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c
99
struct hisi_pmu *hha_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
120
struct hisi_pmu *l3c_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
347
struct hisi_pmu *l3c_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
368
static u64 hisi_l3c_pmu_read_counter(struct hisi_pmu *l3c_pmu,
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
374
static void hisi_l3c_pmu_write_counter(struct hisi_pmu *l3c_pmu,
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
380
static void hisi_l3c_pmu_write_evtype(struct hisi_pmu *l3c_pmu, int idx,
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
406
static void hisi_l3c_pmu_start_counters(struct hisi_pmu *l3c_pmu)
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
437
static void hisi_l3c_pmu_stop_counters(struct hisi_pmu *l3c_pmu)
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
468
static void hisi_l3c_pmu_enable_counter(struct hisi_pmu *l3c_pmu,
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
479
static void hisi_l3c_pmu_disable_counter(struct hisi_pmu *l3c_pmu,
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
490
static void hisi_l3c_pmu_enable_counter_int(struct hisi_pmu *l3c_pmu,
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
501
static void hisi_l3c_pmu_disable_counter_int(struct hisi_pmu *l3c_pmu,
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
512
static u32 hisi_l3c_pmu_get_int_status(struct hisi_pmu *l3c_pmu)
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
531
static void hisi_l3c_pmu_clear_int_status(struct hisi_pmu *l3c_pmu, int idx)
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
539
struct hisi_pmu *l3c_pmu)
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
572
static int hisi_l3c_pmu_init_ext(struct hisi_pmu *l3c_pmu, struct platform_device *pdev)
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
71
struct hisi_pmu l3c_pmu;
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
782
struct hisi_pmu *l3c_pmu)
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
823
struct hisi_pmu *l3c_pmu;
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
869
struct hisi_pmu *l3c_pmu = platform_get_drvdata(pdev);
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
896
struct hisi_pmu *l3c_pmu = hlist_entry_safe(node, struct hisi_pmu, node);
drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c
917
struct hisi_pmu *l3c_pmu = hlist_entry_safe(node, struct hisi_pmu, node);
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
105
static void hisi_mn_pmu_start_counters(struct hisi_pmu *mn_pmu)
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
115
static void hisi_mn_pmu_stop_counters(struct hisi_pmu *mn_pmu)
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
127
static void hisi_mn_pmu_enable_counter(struct hisi_pmu *mn_pmu,
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
138
static void hisi_mn_pmu_disable_counter(struct hisi_pmu *mn_pmu,
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
149
static void hisi_mn_pmu_enable_counter_int(struct hisi_pmu *mn_pmu,
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
160
static void hisi_mn_pmu_disable_counter_int(struct hisi_pmu *mn_pmu,
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
171
static u32 hisi_mn_pmu_get_int_status(struct hisi_pmu *mn_pmu)
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
178
static void hisi_mn_pmu_clear_int_status(struct hisi_pmu *mn_pmu, int idx)
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
251
struct hisi_pmu *mn_pmu)
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
305
struct hisi_pmu *mn_pmu;
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
56
static void hisi_mn_pmu_counter_flush(struct hisi_pmu *mn_pmu)
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
73
static u64 hisi_mn_pmu_read_counter(struct hisi_pmu *mn_pmu,
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
81
static void hisi_mn_pmu_write_counter(struct hisi_pmu *mn_pmu,
drivers/perf/hisilicon/hisi_uncore_mn_pmu.c
89
static void hisi_mn_pmu_write_evtype(struct hisi_pmu *mn_pmu, int idx, u32 type)
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
100
static void hisi_noc_pmu_write_counter(struct hisi_pmu *noc_pmu,
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
108
static void hisi_noc_pmu_enable_counter(struct hisi_pmu *noc_pmu,
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
119
static void hisi_noc_pmu_disable_counter(struct hisi_pmu *noc_pmu,
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
130
static void hisi_noc_pmu_enable_counter_int(struct hisi_pmu *noc_pmu,
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
136
static void hisi_noc_pmu_disable_counter_int(struct hisi_pmu *noc_pmu,
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
141
static void hisi_noc_pmu_start_counters(struct hisi_pmu *noc_pmu)
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
151
static void hisi_noc_pmu_stop_counters(struct hisi_pmu *noc_pmu)
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
161
static u32 hisi_noc_pmu_get_int_status(struct hisi_pmu *noc_pmu)
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
168
static void hisi_noc_pmu_clear_int_status(struct hisi_pmu *noc_pmu, int idx)
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
180
struct hisi_pmu *noc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
208
struct hisi_pmu *noc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
288
static int hisi_noc_pmu_dev_init(struct platform_device *pdev, struct hisi_pmu *noc_pmu)
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
339
struct hisi_pmu *noc_pmu;
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
67
static void hisi_noc_pmu_write_evtype(struct hisi_pmu *noc_pmu, int idx, u32 type)
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
80
struct hisi_pmu *noc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_noc_pmu.c
92
static u64 hisi_noc_pmu_read_counter(struct hisi_pmu *noc_pmu,
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
104
struct hisi_pmu *pa_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
113
struct hisi_pmu *pa_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
126
struct hisi_pmu *pa_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
156
static u64 hisi_pa_pmu_read_counter(struct hisi_pmu *pa_pmu,
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
162
static void hisi_pa_pmu_write_counter(struct hisi_pmu *pa_pmu,
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
168
static void hisi_pa_pmu_write_evtype(struct hisi_pmu *pa_pmu, int idx,
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
191
static void hisi_pa_pmu_start_counters(struct hisi_pmu *pa_pmu)
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
200
static void hisi_pa_pmu_stop_counters(struct hisi_pmu *pa_pmu)
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
209
static void hisi_pa_pmu_enable_counter(struct hisi_pmu *pa_pmu,
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
220
static void hisi_pa_pmu_disable_counter(struct hisi_pmu *pa_pmu,
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
231
static void hisi_pa_pmu_enable_counter_int(struct hisi_pmu *pa_pmu,
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
243
static void hisi_pa_pmu_disable_counter_int(struct hisi_pmu *pa_pmu,
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
255
static u32 hisi_pa_pmu_get_int_status(struct hisi_pmu *pa_pmu)
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
262
static void hisi_pa_pmu_clear_int_status(struct hisi_pmu *pa_pmu, int idx)
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
270
struct hisi_pmu *pa_pmu)
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
428
struct hisi_pmu *pa_pmu)
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
453
struct hisi_pmu *pa_pmu;
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
493
struct hisi_pmu *pa_pmu = platform_get_drvdata(pdev);
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
63
struct hisi_pmu *pa_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
77
struct hisi_pmu *pa_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pa_pmu.c
91
struct hisi_pmu *pa_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
100
struct hisi_pmu *hisi_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
127
return counters <= hisi_pmu->num_counters;
drivers/perf/hisilicon/hisi_uncore_pmu.c
132
struct hisi_pmu *hisi_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
133
unsigned long *used_mask = hisi_pmu->pmu_events.used_mask;
drivers/perf/hisilicon/hisi_uncore_pmu.c
134
u32 num_counters = hisi_pmu->num_counters;
drivers/perf/hisilicon/hisi_uncore_pmu.c
147
static void hisi_uncore_pmu_clear_event_idx(struct hisi_pmu *hisi_pmu, int idx)
drivers/perf/hisilicon/hisi_uncore_pmu.c
149
clear_bit(idx, hisi_pmu->pmu_events.used_mask);
drivers/perf/hisilicon/hisi_uncore_pmu.c
154
struct hisi_pmu *hisi_pmu = data;
drivers/perf/hisilicon/hisi_uncore_pmu.c
159
overflown = hisi_pmu->ops->get_int_status(hisi_pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
167
for_each_set_bit(idx, &overflown, hisi_pmu->num_counters) {
drivers/perf/hisilicon/hisi_uncore_pmu.c
169
hisi_pmu->ops->clear_int_status(hisi_pmu, idx);
drivers/perf/hisilicon/hisi_uncore_pmu.c
171
event = hisi_pmu->pmu_events.hw_events[idx];
drivers/perf/hisilicon/hisi_uncore_pmu.c
183
int hisi_uncore_pmu_init_irq(struct hisi_pmu *hisi_pmu,
drivers/perf/hisilicon/hisi_uncore_pmu.c
194
dev_name(&pdev->dev), hisi_pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
201
hisi_pmu->irq = irq;
drivers/perf/hisilicon/hisi_uncore_pmu.c
210
struct hisi_pmu *hisi_pmu;
drivers/perf/hisilicon/hisi_uncore_pmu.c
237
hisi_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
238
if ((event->attr.config & HISI_EVENTID_MASK) > hisi_pmu->check_event)
drivers/perf/hisilicon/hisi_uncore_pmu.c
241
if (hisi_pmu->on_cpu == -1)
drivers/perf/hisilicon/hisi_uncore_pmu.c
251
if (hisi_pmu->ops->check_filter && hisi_pmu->ops->check_filter(event))
drivers/perf/hisilicon/hisi_uncore_pmu.c
255
event->cpu = hisi_pmu->on_cpu;
drivers/perf/hisilicon/hisi_uncore_pmu.c
267
struct hisi_pmu *hisi_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
270
hisi_pmu->ops->write_evtype(hisi_pmu, hwc->idx,
drivers/perf/hisilicon/hisi_uncore_pmu.c
273
if (hisi_pmu->ops->enable_filter)
drivers/perf/hisilicon/hisi_uncore_pmu.c
274
hisi_pmu->ops->enable_filter(event);
drivers/perf/hisilicon/hisi_uncore_pmu.c
276
hisi_pmu->ops->enable_counter_int(hisi_pmu, hwc);
drivers/perf/hisilicon/hisi_uncore_pmu.c
277
hisi_pmu->ops->enable_counter(hisi_pmu, hwc);
drivers/perf/hisilicon/hisi_uncore_pmu.c
285
struct hisi_pmu *hisi_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
288
hisi_pmu->ops->disable_counter(hisi_pmu, hwc);
drivers/perf/hisilicon/hisi_uncore_pmu.c
289
hisi_pmu->ops->disable_counter_int(hisi_pmu, hwc);
drivers/perf/hisilicon/hisi_uncore_pmu.c
291
if (hisi_pmu->ops->disable_filter)
drivers/perf/hisilicon/hisi_uncore_pmu.c
292
hisi_pmu->ops->disable_filter(event);
drivers/perf/hisilicon/hisi_uncore_pmu.c
297
struct hisi_pmu *hisi_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
307
u64 val = BIT_ULL(hisi_pmu->counter_bits - 1);
drivers/perf/hisilicon/hisi_uncore_pmu.c
311
hisi_pmu->ops->write_counter(hisi_pmu, hwc, val);
drivers/perf/hisilicon/hisi_uncore_pmu.c
317
struct hisi_pmu *hisi_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
323
new_raw_count = hisi_pmu->ops->read_counter(hisi_pmu, hwc);
drivers/perf/hisilicon/hisi_uncore_pmu.c
331
HISI_MAX_PERIOD(hisi_pmu->counter_bits);
drivers/perf/hisilicon/hisi_uncore_pmu.c
338
struct hisi_pmu *hisi_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
351
hisi_pmu->ops->write_counter(hisi_pmu, hwc, prev_raw_count);
drivers/perf/hisilicon/hisi_uncore_pmu.c
378
struct hisi_pmu *hisi_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
385
idx = hisi_pmu->ops->get_event_idx(event);
drivers/perf/hisilicon/hisi_uncore_pmu.c
390
hisi_pmu->pmu_events.hw_events[idx] = event;
drivers/perf/hisilicon/hisi_uncore_pmu.c
401
struct hisi_pmu *hisi_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
405
hisi_uncore_pmu_clear_event_idx(hisi_pmu, hwc->idx);
drivers/perf/hisilicon/hisi_uncore_pmu.c
407
hisi_pmu->pmu_events.hw_events[hwc->idx] = NULL;
drivers/perf/hisilicon/hisi_uncore_pmu.c
420
struct hisi_pmu *hisi_pmu = to_hisi_pmu(pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
421
bool enabled = !bitmap_empty(hisi_pmu->pmu_events.used_mask,
drivers/perf/hisilicon/hisi_uncore_pmu.c
422
hisi_pmu->num_counters);
drivers/perf/hisilicon/hisi_uncore_pmu.c
427
hisi_pmu->ops->start_counters(hisi_pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
433
struct hisi_pmu *hisi_pmu = to_hisi_pmu(pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
435
hisi_pmu->ops->stop_counters(hisi_pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
46
struct hisi_pmu *hisi_pmu = to_hisi_pmu(dev_get_drvdata(dev));
drivers/perf/hisilicon/hisi_uncore_pmu.c
48
return sysfs_emit(buf, "%d\n", hisi_pmu->on_cpu);
drivers/perf/hisilicon/hisi_uncore_pmu.c
482
static bool hisi_pmu_cpu_is_associated_pmu(struct hisi_pmu *hisi_pmu)
drivers/perf/hisilicon/hisi_uncore_pmu.c
484
struct hisi_pmu_topology *topo = &hisi_pmu->topo;
drivers/perf/hisilicon/hisi_uncore_pmu.c
501
struct hisi_pmu *hisi_pmu = hlist_entry_safe(node, struct hisi_pmu,
drivers/perf/hisilicon/hisi_uncore_pmu.c
509
if (!hisi_pmu_cpu_is_associated_pmu(hisi_pmu)) {
drivers/perf/hisilicon/hisi_uncore_pmu.c
510
if (hisi_pmu->on_cpu != -1)
drivers/perf/hisilicon/hisi_uncore_pmu.c
513
hisi_pmu->on_cpu = cpumask_local_spread(0, dev_to_node(hisi_pmu->dev));
drivers/perf/hisilicon/hisi_uncore_pmu.c
514
if (hisi_pmu->irq > 0)
drivers/perf/hisilicon/hisi_uncore_pmu.c
515
WARN_ON(irq_set_affinity(hisi_pmu->irq,
drivers/perf/hisilicon/hisi_uncore_pmu.c
516
cpumask_of(hisi_pmu->on_cpu)));
drivers/perf/hisilicon/hisi_uncore_pmu.c
520
cpumask_set_cpu(cpu, &hisi_pmu->associated_cpus);
drivers/perf/hisilicon/hisi_uncore_pmu.c
523
if (hisi_pmu->on_cpu != -1 &&
drivers/perf/hisilicon/hisi_uncore_pmu.c
524
cpumask_test_cpu(hisi_pmu->on_cpu, &hisi_pmu->associated_cpus))
drivers/perf/hisilicon/hisi_uncore_pmu.c
528
hisi_pmu->on_cpu = cpu;
drivers/perf/hisilicon/hisi_uncore_pmu.c
531
if (hisi_pmu->irq > 0)
drivers/perf/hisilicon/hisi_uncore_pmu.c
532
WARN_ON(irq_set_affinity(hisi_pmu->irq, cpumask_of(cpu)));
drivers/perf/hisilicon/hisi_uncore_pmu.c
540
struct hisi_pmu *hisi_pmu = hlist_entry_safe(node, struct hisi_pmu,
drivers/perf/hisilicon/hisi_uncore_pmu.c
545
if (hisi_pmu->on_cpu != cpu)
drivers/perf/hisilicon/hisi_uncore_pmu.c
549
hisi_pmu->on_cpu = -1;
drivers/perf/hisilicon/hisi_uncore_pmu.c
556
target = cpumask_any_and_but(&hisi_pmu->associated_cpus,
drivers/perf/hisilicon/hisi_uncore_pmu.c
564
perf_pmu_migrate_context(&hisi_pmu->pmu, cpu, target);
drivers/perf/hisilicon/hisi_uncore_pmu.c
566
hisi_pmu->on_cpu = target;
drivers/perf/hisilicon/hisi_uncore_pmu.c
568
if (hisi_pmu->irq > 0)
drivers/perf/hisilicon/hisi_uncore_pmu.c
569
WARN_ON(irq_set_affinity(hisi_pmu->irq, cpumask_of(target)));
drivers/perf/hisilicon/hisi_uncore_pmu.c
57
struct hisi_pmu *hisi_pmu = to_hisi_pmu(dev_get_drvdata(dev));
drivers/perf/hisilicon/hisi_uncore_pmu.c
581
void hisi_uncore_pmu_init_topology(struct hisi_pmu *hisi_pmu, struct device *dev)
drivers/perf/hisilicon/hisi_uncore_pmu.c
583
struct hisi_pmu_topology *topo = &hisi_pmu->topo;
drivers/perf/hisilicon/hisi_uncore_pmu.c
59
return cpumap_print_to_pagebuf(true, buf, &hisi_pmu->associated_cpus);
drivers/perf/hisilicon/hisi_uncore_pmu.c
604
void hisi_pmu_init(struct hisi_pmu *hisi_pmu, struct module *module)
drivers/perf/hisilicon/hisi_uncore_pmu.c
606
struct pmu *pmu = &hisi_pmu->pmu;
drivers/perf/hisilicon/hisi_uncore_pmu.c
609
pmu->parent = hisi_pmu->dev;
drivers/perf/hisilicon/hisi_uncore_pmu.c
619
pmu->attr_groups = hisi_pmu->pmu_events.attr_groups;
drivers/perf/hisilicon/hisi_uncore_pmu.c
78
struct hisi_pmu *hisi_pmu = to_hisi_pmu(dev_get_drvdata(dev));
drivers/perf/hisilicon/hisi_uncore_pmu.c
80
return sysfs_emit(page, "0x%08x\n", hisi_pmu->identifier);
drivers/perf/hisilicon/hisi_uncore_pmu.h
169
int hisi_uncore_pmu_init_irq(struct hisi_pmu *hisi_pmu,
drivers/perf/hisilicon/hisi_uncore_pmu.h
171
void hisi_uncore_pmu_init_topology(struct hisi_pmu *hisi_pmu, struct device *dev);
drivers/perf/hisilicon/hisi_uncore_pmu.h
173
void hisi_pmu_init(struct hisi_pmu *hisi_pmu, struct module *module);
drivers/perf/hisilicon/hisi_uncore_pmu.h
28
#define to_hisi_pmu(p) (container_of(p, struct hisi_pmu, pmu))
drivers/perf/hisilicon/hisi_uncore_pmu.h
52
struct hisi_pmu;
drivers/perf/hisilicon/hisi_uncore_pmu.h
56
void (*write_evtype)(struct hisi_pmu *, int, u32);
drivers/perf/hisilicon/hisi_uncore_pmu.h
58
u64 (*read_counter)(struct hisi_pmu *, struct hw_perf_event *);
drivers/perf/hisilicon/hisi_uncore_pmu.h
59
void (*write_counter)(struct hisi_pmu *, struct hw_perf_event *, u64);
drivers/perf/hisilicon/hisi_uncore_pmu.h
60
void (*enable_counter)(struct hisi_pmu *, struct hw_perf_event *);
drivers/perf/hisilicon/hisi_uncore_pmu.h
61
void (*disable_counter)(struct hisi_pmu *, struct hw_perf_event *);
drivers/perf/hisilicon/hisi_uncore_pmu.h
62
void (*enable_counter_int)(struct hisi_pmu *, struct hw_perf_event *);
drivers/perf/hisilicon/hisi_uncore_pmu.h
63
void (*disable_counter_int)(struct hisi_pmu *, struct hw_perf_event *);
drivers/perf/hisilicon/hisi_uncore_pmu.h
64
void (*start_counters)(struct hisi_pmu *);
drivers/perf/hisilicon/hisi_uncore_pmu.h
65
void (*stop_counters)(struct hisi_pmu *);
drivers/perf/hisilicon/hisi_uncore_pmu.h
66
u32 (*get_int_status)(struct hisi_pmu *hisi_pmu);
drivers/perf/hisilicon/hisi_uncore_pmu.h
67
void (*clear_int_status)(struct hisi_pmu *hisi_pmu, int idx);
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
109
struct hisi_pmu *sllc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
124
struct hisi_pmu *sllc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
143
struct hisi_pmu *sllc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
161
struct hisi_pmu *sllc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
181
struct hisi_pmu *sllc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
214
static u64 hisi_sllc_pmu_read_counter(struct hisi_pmu *sllc_pmu,
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
222
static void hisi_sllc_pmu_write_counter(struct hisi_pmu *sllc_pmu,
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
230
static void hisi_sllc_pmu_write_evtype(struct hisi_pmu *sllc_pmu, int idx,
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
252
static void hisi_sllc_pmu_start_counters(struct hisi_pmu *sllc_pmu)
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
262
static void hisi_sllc_pmu_stop_counters(struct hisi_pmu *sllc_pmu)
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
272
static void hisi_sllc_pmu_enable_counter(struct hisi_pmu *sllc_pmu,
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
283
static void hisi_sllc_pmu_disable_counter(struct hisi_pmu *sllc_pmu,
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
294
static void hisi_sllc_pmu_enable_counter_int(struct hisi_pmu *sllc_pmu,
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
305
static void hisi_sllc_pmu_disable_counter_int(struct hisi_pmu *sllc_pmu,
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
316
static u32 hisi_sllc_pmu_get_int_status(struct hisi_pmu *sllc_pmu)
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
323
static void hisi_sllc_pmu_clear_int_status(struct hisi_pmu *sllc_pmu, int idx)
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
331
struct hisi_pmu *sllc_pmu)
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
464
struct hisi_pmu *sllc_pmu)
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
489
struct hisi_pmu *sllc_pmu;
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
530
struct hisi_pmu *sllc_pmu = platform_get_drvdata(pdev);
drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c
94
struct hisi_pmu *sllc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
118
struct hisi_pmu *uc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
145
struct hisi_pmu *uc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
170
struct hisi_pmu *uc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
191
struct hisi_pmu *uc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
228
static void hisi_uc_pmu_write_evtype(struct hisi_pmu *uc_pmu, int idx, u32 type)
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
243
static void hisi_uc_pmu_start_counters(struct hisi_pmu *uc_pmu)
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
252
static void hisi_uc_pmu_stop_counters(struct hisi_pmu *uc_pmu)
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
261
static void hisi_uc_pmu_enable_counter(struct hisi_pmu *uc_pmu,
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
272
static void hisi_uc_pmu_disable_counter(struct hisi_pmu *uc_pmu,
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
283
static u64 hisi_uc_pmu_read_counter(struct hisi_pmu *uc_pmu,
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
289
static bool hisi_uc_pmu_get_glb_en_state(struct hisi_pmu *uc_pmu)
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
297
static void hisi_uc_pmu_write_counter_normal(struct hisi_pmu *uc_pmu,
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
303
static void hisi_uc_pmu_write_counter_quirk_v2(struct hisi_pmu *uc_pmu,
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
311
static void hisi_uc_pmu_write_counter(struct hisi_pmu *uc_pmu,
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
335
static void hisi_uc_pmu_enable_counter_int(struct hisi_pmu *uc_pmu,
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
345
static void hisi_uc_pmu_disable_counter_int(struct hisi_pmu *uc_pmu,
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
355
static u32 hisi_uc_pmu_get_int_status(struct hisi_pmu *uc_pmu)
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
360
static void hisi_uc_pmu_clear_int_status(struct hisi_pmu *uc_pmu, int idx)
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
366
struct hisi_pmu *uc_pmu)
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
467
struct hisi_pmu *uc_pmu)
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
502
struct hisi_pmu *uc_pmu;
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
55
struct hisi_pmu *uc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
77
struct hisi_pmu *uc_pmu = to_hisi_pmu(event->pmu);
drivers/perf/hisilicon/hisi_uncore_uc_pmu.c
98
struct hisi_pmu *uc_pmu = to_hisi_pmu(event->pmu);