Skip to content

Commit 49925c1

Browse files
JiShengTeohwilldeacon
authored andcommitted
docs: perf: Add description for StarFive's StarLink PMU
StarFive StarLink PMU support monitoring L3 memory system PMU events. Add documentation to describe StarFive StarLink PMU support and it's usage. Signed-off-by: Ji Sheng Teoh <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Will Deacon <[email protected]>
1 parent 66461b4 commit 49925c1

File tree

2 files changed

+47
-0
lines changed

2 files changed

+47
-0
lines changed

Documentation/admin-guide/perf/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ Performance monitor support
1313
imx-ddr
1414
qcom_l2_pmu
1515
qcom_l3_pmu
16+
starfive_starlink_pmu
1617
arm-ccn
1718
arm-cmn
1819
xgene-pmu
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
================================================
2+
StarFive StarLink Performance Monitor Unit (PMU)
3+
================================================
4+
5+
StarFive StarLink Performance Monitor Unit (PMU) exists within the
6+
StarLink Coherent Network on Chip (CNoC) that connects multiple CPU
7+
clusters with an L3 memory system.
8+
9+
The uncore PMU supports overflow interrupt, up to 16 programmable 64bit
10+
event counters, and an independent 64bit cycle counter.
11+
The PMU can only be accessed via Memory Mapped I/O and are common to the
12+
cores connected to the same PMU.
13+
14+
Driver exposes supported PMU events in sysfs "events" directory under::
15+
16+
/sys/bus/event_source/devices/starfive_starlink_pmu/events/
17+
18+
Driver exposes cpu used to handle PMU events in sysfs "cpumask" directory
19+
under::
20+
21+
/sys/bus/event_source/devices/starfive_starlink_pmu/cpumask/
22+
23+
Driver describes the format of config (event ID) in sysfs "format" directory
24+
under::
25+
26+
/sys/bus/event_source/devices/starfive_starlink_pmu/format/
27+
28+
Example of perf usage::
29+
30+
$ perf list
31+
32+
starfive_starlink_pmu/cycles/ [Kernel PMU event]
33+
starfive_starlink_pmu/read_hit/ [Kernel PMU event]
34+
starfive_starlink_pmu/read_miss/ [Kernel PMU event]
35+
starfive_starlink_pmu/read_request/ [Kernel PMU event]
36+
starfive_starlink_pmu/release_request/ [Kernel PMU event]
37+
starfive_starlink_pmu/write_hit/ [Kernel PMU event]
38+
starfive_starlink_pmu/write_miss/ [Kernel PMU event]
39+
starfive_starlink_pmu/write_request/ [Kernel PMU event]
40+
starfive_starlink_pmu/writeback/ [Kernel PMU event]
41+
42+
43+
$ perf stat -a -e /starfive_starlink_pmu/cycles/ sleep 1
44+
45+
Sampling is not supported. As a result, "perf record" is not supported.
46+
Attaching to a task is not supported, only system-wide counting is supported.

0 commit comments

Comments
 (0)