Link: https://lore.kernel.org/r/20260217200002.683975158@linuxfoundation.org Tested-by: Florian Fainelli <florian.fainelli@broadcom.com> Tested-by: Takeshi Ogasawara <takeshi.ogasawara@futuring-girl.com> Tested-by: Peter Schneider <pschneider1968@googlemail.com> Tested-by: Jon Hunter <jonathanh@nvidia.com> Tested-by: Salvatore Bonaccorso <carnil@debian.org> Tested-by: Brett A C Sheffield <bacs@librecast.net> Tested-by: Mark Brown <broonie@kernel.org> Tested-by: Luna Jernberg <droidbittin@gmail.com> Tested-by: Ronald Warsow <rwarsow@gmx.de> Tested-by: Justin M. Forbes <jforbes@fedoraproject.org> Tested-by: Ron Economos <re@w6rz.net> Tested-by: Miguel Ojeda <ojeda@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
47 lines
1.8 KiB
ReStructuredText
47 lines
1.8 KiB
ReStructuredText
================================================
|
|
StarFive StarLink Performance Monitor Unit (PMU)
|
|
================================================
|
|
|
|
StarFive StarLink Performance Monitor Unit (PMU) exists within the
|
|
StarLink Coherent Network on Chip (CNoC) that connects multiple CPU
|
|
clusters with an L3 memory system.
|
|
|
|
The uncore PMU supports overflow interrupt, up to 16 programmable 64bit
|
|
event counters, and an independent 64bit cycle counter.
|
|
The PMU can only be accessed via Memory Mapped I/O and are common to the
|
|
cores connected to the same PMU.
|
|
|
|
Driver exposes supported PMU events in sysfs "events" directory under::
|
|
|
|
/sys/bus/event_source/devices/starfive_starlink_pmu/events/
|
|
|
|
Driver exposes cpu used to handle PMU events in sysfs "cpumask" directory
|
|
under::
|
|
|
|
/sys/bus/event_source/devices/starfive_starlink_pmu/cpumask/
|
|
|
|
Driver describes the format of config (event ID) in sysfs "format" directory
|
|
under::
|
|
|
|
/sys/bus/event_source/devices/starfive_starlink_pmu/format/
|
|
|
|
Example of perf usage::
|
|
|
|
$ perf list
|
|
|
|
starfive_starlink_pmu/cycles/ [Kernel PMU event]
|
|
starfive_starlink_pmu/read_hit/ [Kernel PMU event]
|
|
starfive_starlink_pmu/read_miss/ [Kernel PMU event]
|
|
starfive_starlink_pmu/read_request/ [Kernel PMU event]
|
|
starfive_starlink_pmu/release_request/ [Kernel PMU event]
|
|
starfive_starlink_pmu/write_hit/ [Kernel PMU event]
|
|
starfive_starlink_pmu/write_miss/ [Kernel PMU event]
|
|
starfive_starlink_pmu/write_request/ [Kernel PMU event]
|
|
starfive_starlink_pmu/writeback/ [Kernel PMU event]
|
|
|
|
|
|
$ perf stat -a -e /starfive_starlink_pmu/cycles/ sleep 1
|
|
|
|
Sampling is not supported. As a result, "perf record" is not supported.
|
|
Attaching to a task is not supported, only system-wide counting is supported.
|