Skip to content

Commit c4d87b0

Browse files
committed
perf/x86/intel: Add PMU support for Clearwater Forest
JIRA: https://issues.redhat.com/browse/RHEL-45092 JIRA: https://issues.redhat.com/browse/RHEL-47453 upstream ======== commit 48d66c8 Author: Dapeng Mi <dapeng1.mi@linux.intel.com> Date: Tue Apr 15 11:44:08 2025 +0000 description =========== From the PMU's perspective, Clearwater Forest is similar to the previous generation Sierra Forest. The key differences are the ARCH PEBS feature and the new added 3 fixed counters for topdown L1 metrics events. The ARCH PEBS is supported in the following patches. This patch provides support for basic perfmon features and 3 new added fixed counters. Signed-off-by: Dapeng Mi <dapeng1.mi@linux.intel.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Signed-off-by: Ingo Molnar <mingo@kernel.org> Link: https://lkml.kernel.org/r/20250415114428.341182-3-dapeng1.mi@linux.intel.com Signed-off-by: Michael Petlan <mpetlan@redhat.com>
1 parent 1840239 commit c4d87b0

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

arch/x86/events/intel/core.c

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2224,6 +2224,18 @@ static struct extra_reg intel_cmt_extra_regs[] __read_mostly = {
22242224
EVENT_EXTRA_END
22252225
};
22262226

2227+
EVENT_ATTR_STR(topdown-fe-bound, td_fe_bound_skt, "event=0x9c,umask=0x01");
2228+
EVENT_ATTR_STR(topdown-retiring, td_retiring_skt, "event=0xc2,umask=0x02");
2229+
EVENT_ATTR_STR(topdown-be-bound, td_be_bound_skt, "event=0xa4,umask=0x02");
2230+
2231+
static struct attribute *skt_events_attrs[] = {
2232+
EVENT_PTR(td_fe_bound_skt),
2233+
EVENT_PTR(td_retiring_skt),
2234+
EVENT_PTR(td_bad_spec_cmt),
2235+
EVENT_PTR(td_be_bound_skt),
2236+
NULL,
2237+
};
2238+
22272239
#define KNL_OT_L2_HITE BIT_ULL(19) /* Other Tile L2 Hit */
22282240
#define KNL_OT_L2_HITF BIT_ULL(20) /* Other Tile L2 Hit */
22292241
#define KNL_MCDRAM_LOCAL BIT_ULL(21)
@@ -6825,6 +6837,18 @@ __init int intel_pmu_init(void)
68256837
name = "crestmont";
68266838
break;
68276839

6840+
case INTEL_ATOM_DARKMONT_X:
6841+
intel_pmu_init_skt(NULL);
6842+
intel_pmu_pebs_data_source_cmt();
6843+
x86_pmu.pebs_latency_data = cmt_latency_data;
6844+
x86_pmu.get_event_constraints = cmt_get_event_constraints;
6845+
td_attr = skt_events_attrs;
6846+
mem_attr = grt_mem_attrs;
6847+
extra_attr = cmt_format_attr;
6848+
pr_cont("Darkmont events, ");
6849+
name = "darkmont";
6850+
break;
6851+
68286852
case INTEL_WESTMERE:
68296853
case INTEL_WESTMERE_EP:
68306854
case INTEL_WESTMERE_EX:

0 commit comments

Comments
 (0)