1 ================================================
2 StarFive StarLink Performance Monitor Unit (PMU)
3 ================================================
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.
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.
14 Driver exposes supported PMU events in sysfs "events" directory under::
16 /sys/bus/event_source/devices/starfive_starlink_pmu/events/
18 Driver exposes cpu used to handle PMU events in sysfs "cpumask" directory
21 /sys/bus/event_source/devices/starfive_starlink_pmu/cpumask/
23 Driver describes the format of config (event ID) in sysfs "format" directory
26 /sys/bus/event_source/devices/starfive_starlink_pmu/format/
28 Example of perf usage::
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]
43 $ perf stat -a -e /starfive_starlink_pmu/cycles/ sleep 1
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.