Skip to content

Commit 8a4bd1c

Browse files
ZideChen0Peter Zijlstra
authored andcommitted
perf/x86/intel/uncore: Add freerunning event descriptor helper macro
Freerunning counter events are repetitive: the event code is fixed to 0xff, the unit is always "MiB", and the scale is identical across all counters on a given PMON unit. Introduce a new helper macro, INTEL_UNCORE_FR_EVENT_DESC(), to populate the event, scale, and unit descriptor triplet. This reduces duplicated lines and improves readability. No functional change intended. Signed-off-by: Zide Chen <zide.chen@intel.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Dapeng Mi <dapeng1.mi@linux.intel.com> Link: https://patch.msgid.link/20251231224233.113839-8-zide.chen@intel.com
1 parent b575fc0 commit 8a4bd1c

1 file changed

Lines changed: 28 additions & 67 deletions

File tree

arch/x86/events/intel/uncore_snbep.c

Lines changed: 28 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -4068,34 +4068,24 @@ static struct freerunning_counters skx_iio_freerunning[] = {
40684068
[SKX_IIO_MSR_UTIL] = { 0xb08, 0x1, 0x10, 8, 36 },
40694069
};
40704070

4071+
#define INTEL_UNCORE_FR_EVENT_DESC(name, umask, scl) \
4072+
INTEL_UNCORE_EVENT_DESC(name, \
4073+
"event=0xff,umask=" __stringify(umask)),\
4074+
INTEL_UNCORE_EVENT_DESC(name.scale, __stringify(scl)), \
4075+
INTEL_UNCORE_EVENT_DESC(name.unit, "MiB")
4076+
40714077
static struct uncore_event_desc skx_uncore_iio_freerunning_events[] = {
40724078
/* Free-Running IO CLOCKS Counter */
40734079
INTEL_UNCORE_EVENT_DESC(ioclk, "event=0xff,umask=0x10"),
40744080
/* Free-Running IIO BANDWIDTH Counters */
4075-
INTEL_UNCORE_EVENT_DESC(bw_in_port0, "event=0xff,umask=0x20"),
4076-
INTEL_UNCORE_EVENT_DESC(bw_in_port0.scale, "3.814697266e-6"),
4077-
INTEL_UNCORE_EVENT_DESC(bw_in_port0.unit, "MiB"),
4078-
INTEL_UNCORE_EVENT_DESC(bw_in_port1, "event=0xff,umask=0x21"),
4079-
INTEL_UNCORE_EVENT_DESC(bw_in_port1.scale, "3.814697266e-6"),
4080-
INTEL_UNCORE_EVENT_DESC(bw_in_port1.unit, "MiB"),
4081-
INTEL_UNCORE_EVENT_DESC(bw_in_port2, "event=0xff,umask=0x22"),
4082-
INTEL_UNCORE_EVENT_DESC(bw_in_port2.scale, "3.814697266e-6"),
4083-
INTEL_UNCORE_EVENT_DESC(bw_in_port2.unit, "MiB"),
4084-
INTEL_UNCORE_EVENT_DESC(bw_in_port3, "event=0xff,umask=0x23"),
4085-
INTEL_UNCORE_EVENT_DESC(bw_in_port3.scale, "3.814697266e-6"),
4086-
INTEL_UNCORE_EVENT_DESC(bw_in_port3.unit, "MiB"),
4087-
INTEL_UNCORE_EVENT_DESC(bw_out_port0, "event=0xff,umask=0x24"),
4088-
INTEL_UNCORE_EVENT_DESC(bw_out_port0.scale, "3.814697266e-6"),
4089-
INTEL_UNCORE_EVENT_DESC(bw_out_port0.unit, "MiB"),
4090-
INTEL_UNCORE_EVENT_DESC(bw_out_port1, "event=0xff,umask=0x25"),
4091-
INTEL_UNCORE_EVENT_DESC(bw_out_port1.scale, "3.814697266e-6"),
4092-
INTEL_UNCORE_EVENT_DESC(bw_out_port1.unit, "MiB"),
4093-
INTEL_UNCORE_EVENT_DESC(bw_out_port2, "event=0xff,umask=0x26"),
4094-
INTEL_UNCORE_EVENT_DESC(bw_out_port2.scale, "3.814697266e-6"),
4095-
INTEL_UNCORE_EVENT_DESC(bw_out_port2.unit, "MiB"),
4096-
INTEL_UNCORE_EVENT_DESC(bw_out_port3, "event=0xff,umask=0x27"),
4097-
INTEL_UNCORE_EVENT_DESC(bw_out_port3.scale, "3.814697266e-6"),
4098-
INTEL_UNCORE_EVENT_DESC(bw_out_port3.unit, "MiB"),
4081+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port0, 0x20, 3.814697266e-6),
4082+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port1, 0x21, 3.814697266e-6),
4083+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port2, 0x22, 3.814697266e-6),
4084+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port3, 0x23, 3.814697266e-6),
4085+
INTEL_UNCORE_FR_EVENT_DESC(bw_out_port0, 0x24, 3.814697266e-6),
4086+
INTEL_UNCORE_FR_EVENT_DESC(bw_out_port1, 0x25, 3.814697266e-6),
4087+
INTEL_UNCORE_FR_EVENT_DESC(bw_out_port2, 0x26, 3.814697266e-6),
4088+
INTEL_UNCORE_FR_EVENT_DESC(bw_out_port3, 0x27, 3.814697266e-6),
40994089
/* Free-running IIO UTILIZATION Counters */
41004090
INTEL_UNCORE_EVENT_DESC(util_in_port0, "event=0xff,umask=0x30"),
41014091
INTEL_UNCORE_EVENT_DESC(util_out_port0, "event=0xff,umask=0x31"),
@@ -4910,30 +4900,14 @@ static struct uncore_event_desc snr_uncore_iio_freerunning_events[] = {
49104900
/* Free-Running IIO CLOCKS Counter */
49114901
INTEL_UNCORE_EVENT_DESC(ioclk, "event=0xff,umask=0x10"),
49124902
/* Free-Running IIO BANDWIDTH IN Counters */
4913-
INTEL_UNCORE_EVENT_DESC(bw_in_port0, "event=0xff,umask=0x20"),
4914-
INTEL_UNCORE_EVENT_DESC(bw_in_port0.scale, "3.0517578125e-5"),
4915-
INTEL_UNCORE_EVENT_DESC(bw_in_port0.unit, "MiB"),
4916-
INTEL_UNCORE_EVENT_DESC(bw_in_port1, "event=0xff,umask=0x21"),
4917-
INTEL_UNCORE_EVENT_DESC(bw_in_port1.scale, "3.0517578125e-5"),
4918-
INTEL_UNCORE_EVENT_DESC(bw_in_port1.unit, "MiB"),
4919-
INTEL_UNCORE_EVENT_DESC(bw_in_port2, "event=0xff,umask=0x22"),
4920-
INTEL_UNCORE_EVENT_DESC(bw_in_port2.scale, "3.0517578125e-5"),
4921-
INTEL_UNCORE_EVENT_DESC(bw_in_port2.unit, "MiB"),
4922-
INTEL_UNCORE_EVENT_DESC(bw_in_port3, "event=0xff,umask=0x23"),
4923-
INTEL_UNCORE_EVENT_DESC(bw_in_port3.scale, "3.0517578125e-5"),
4924-
INTEL_UNCORE_EVENT_DESC(bw_in_port3.unit, "MiB"),
4925-
INTEL_UNCORE_EVENT_DESC(bw_in_port4, "event=0xff,umask=0x24"),
4926-
INTEL_UNCORE_EVENT_DESC(bw_in_port4.scale, "3.0517578125e-5"),
4927-
INTEL_UNCORE_EVENT_DESC(bw_in_port4.unit, "MiB"),
4928-
INTEL_UNCORE_EVENT_DESC(bw_in_port5, "event=0xff,umask=0x25"),
4929-
INTEL_UNCORE_EVENT_DESC(bw_in_port5.scale, "3.0517578125e-5"),
4930-
INTEL_UNCORE_EVENT_DESC(bw_in_port5.unit, "MiB"),
4931-
INTEL_UNCORE_EVENT_DESC(bw_in_port6, "event=0xff,umask=0x26"),
4932-
INTEL_UNCORE_EVENT_DESC(bw_in_port6.scale, "3.0517578125e-5"),
4933-
INTEL_UNCORE_EVENT_DESC(bw_in_port6.unit, "MiB"),
4934-
INTEL_UNCORE_EVENT_DESC(bw_in_port7, "event=0xff,umask=0x27"),
4935-
INTEL_UNCORE_EVENT_DESC(bw_in_port7.scale, "3.0517578125e-5"),
4936-
INTEL_UNCORE_EVENT_DESC(bw_in_port7.unit, "MiB"),
4903+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port0, 0x20, 3.0517578125e-5),
4904+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port1, 0x21, 3.0517578125e-5),
4905+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port2, 0x22, 3.0517578125e-5),
4906+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port3, 0x23, 3.0517578125e-5),
4907+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port4, 0x24, 3.0517578125e-5),
4908+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port5, 0x25, 3.0517578125e-5),
4909+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port6, 0x26, 3.0517578125e-5),
4910+
INTEL_UNCORE_FR_EVENT_DESC(bw_in_port7, 0x27, 3.0517578125e-5),
49374911
{ /* end: all zeroes */ },
49384912
};
49394913

@@ -5266,12 +5240,8 @@ static struct freerunning_counters snr_imc_freerunning[] = {
52665240
static struct uncore_event_desc snr_uncore_imc_freerunning_events[] = {
52675241
INTEL_UNCORE_EVENT_DESC(dclk, "event=0xff,umask=0x10"),
52685242

5269-
INTEL_UNCORE_EVENT_DESC(read, "event=0xff,umask=0x20"),
5270-
INTEL_UNCORE_EVENT_DESC(read.scale, "6.103515625e-5"),
5271-
INTEL_UNCORE_EVENT_DESC(read.unit, "MiB"),
5272-
INTEL_UNCORE_EVENT_DESC(write, "event=0xff,umask=0x21"),
5273-
INTEL_UNCORE_EVENT_DESC(write.scale, "6.103515625e-5"),
5274-
INTEL_UNCORE_EVENT_DESC(write.unit, "MiB"),
5243+
INTEL_UNCORE_FR_EVENT_DESC(read, 0x20, 6.103515625e-5),
5244+
INTEL_UNCORE_FR_EVENT_DESC(write, 0x21, 6.103515625e-5),
52755245
{ /* end: all zeroes */ },
52765246
};
52775247

@@ -5836,19 +5806,10 @@ static struct freerunning_counters icx_imc_freerunning[] = {
58365806
static struct uncore_event_desc icx_uncore_imc_freerunning_events[] = {
58375807
INTEL_UNCORE_EVENT_DESC(dclk, "event=0xff,umask=0x10"),
58385808

5839-
INTEL_UNCORE_EVENT_DESC(read, "event=0xff,umask=0x20"),
5840-
INTEL_UNCORE_EVENT_DESC(read.scale, "6.103515625e-5"),
5841-
INTEL_UNCORE_EVENT_DESC(read.unit, "MiB"),
5842-
INTEL_UNCORE_EVENT_DESC(write, "event=0xff,umask=0x21"),
5843-
INTEL_UNCORE_EVENT_DESC(write.scale, "6.103515625e-5"),
5844-
INTEL_UNCORE_EVENT_DESC(write.unit, "MiB"),
5845-
5846-
INTEL_UNCORE_EVENT_DESC(ddrt_read, "event=0xff,umask=0x30"),
5847-
INTEL_UNCORE_EVENT_DESC(ddrt_read.scale, "6.103515625e-5"),
5848-
INTEL_UNCORE_EVENT_DESC(ddrt_read.unit, "MiB"),
5849-
INTEL_UNCORE_EVENT_DESC(ddrt_write, "event=0xff,umask=0x31"),
5850-
INTEL_UNCORE_EVENT_DESC(ddrt_write.scale, "6.103515625e-5"),
5851-
INTEL_UNCORE_EVENT_DESC(ddrt_write.unit, "MiB"),
5809+
INTEL_UNCORE_FR_EVENT_DESC(read, 0x20, 6.103515625e-5),
5810+
INTEL_UNCORE_FR_EVENT_DESC(write, 0x21, 6.103515625e-5),
5811+
INTEL_UNCORE_FR_EVENT_DESC(ddrt_read, 0x30, 6.103515625e-5),
5812+
INTEL_UNCORE_FR_EVENT_DESC(ddrt_write, 0x31, 6.103515625e-5),
58525813
{ /* end: all zeroes */ },
58535814
};
58545815

0 commit comments

Comments
 (0)