xref: /linux/Documentation/admin-guide/perf/arm_dsu_pmu.rst (revision 59809fe88224db24432ad50e62fd8d5f0df738a1)
1*59809fe8SMauro Carvalho Chehab==================================
2*59809fe8SMauro Carvalho ChehabARM DynamIQ Shared Unit (DSU) PMU
3*59809fe8SMauro Carvalho Chehab==================================
4*59809fe8SMauro Carvalho Chehab
5*59809fe8SMauro Carvalho ChehabARM DynamIQ Shared Unit integrates one or more cores with an L3 memory system,
6*59809fe8SMauro Carvalho Chehabcontrol logic and external interfaces to form a multicore cluster. The PMU
7*59809fe8SMauro Carvalho Chehaballows counting the various events related to the L3 cache, Snoop Control Unit
8*59809fe8SMauro Carvalho Chehabetc, using 32bit independent counters. It also provides a 64bit cycle counter.
9*59809fe8SMauro Carvalho Chehab
10*59809fe8SMauro Carvalho ChehabThe PMU can only be accessed via CPU system registers and are common to the
11*59809fe8SMauro Carvalho Chehabcores connected to the same DSU. Like most of the other uncore PMUs, DSU
12*59809fe8SMauro Carvalho ChehabPMU doesn't support process specific events and cannot be used in sampling mode.
13*59809fe8SMauro Carvalho Chehab
14*59809fe8SMauro Carvalho ChehabThe DSU provides a bitmap for a subset of implemented events via hardware
15*59809fe8SMauro Carvalho Chehabregisters. There is no way for the driver to determine if the other events
16*59809fe8SMauro Carvalho Chehabare available or not. Hence the driver exposes only those events advertised
17*59809fe8SMauro Carvalho Chehabby the DSU, in "events" directory under::
18*59809fe8SMauro Carvalho Chehab
19*59809fe8SMauro Carvalho Chehab  /sys/bus/event_sources/devices/arm_dsu_<N>/
20*59809fe8SMauro Carvalho Chehab
21*59809fe8SMauro Carvalho ChehabThe user should refer to the TRM of the product to figure out the supported events
22*59809fe8SMauro Carvalho Chehaband use the raw event code for the unlisted events.
23*59809fe8SMauro Carvalho Chehab
24*59809fe8SMauro Carvalho ChehabThe driver also exposes the CPUs connected to the DSU instance in "associated_cpus".
25*59809fe8SMauro Carvalho Chehab
26*59809fe8SMauro Carvalho Chehab
27*59809fe8SMauro Carvalho Chehabe.g usage::
28*59809fe8SMauro Carvalho Chehab
29*59809fe8SMauro Carvalho Chehab	perf stat -a -e arm_dsu_0/cycles/
30