From: mark.rutland@arm.com (Mark Rutland)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 0/8] arm64:perf: Support for Hisilicon SoC Hardware event counters
Date: Tue, 28 Jun 2016 12:05:26 +0100 [thread overview]
Message-ID: <20160628110526.GH31744@leverpostej> (raw)
In-Reply-To: <1467107429-55477-1-git-send-email-anurup.m@huawei.com>
On Tue, Jun 28, 2016 at 05:50:21AM -0400, Anurup M wrote:
> Provide Support for Hisilicon SoC Hardware event counters.
> The Hisilicon SoC Hi161x series has many uncore or non-CPU performance
> events and counters units.
>
> This patch is implemented refering to arm-cci, Intel/AMD uncore and
> also the cavium thunderX pmu patches.
>
> Support for Hisilicon L3 cache(LLC) hardware events and counters are added
> in this implementation.
>
> The Hisilicon PMU datastructures are designed so as to support uncore
> and also CPU specific events in future.
The uncore and CPU event context are *very* different. These should
really be handled by separate drivers.
>
> The Hisilicon LLC has four banks for a Super CPU Cluster(consists of
> 16 CPU cores) and each LLC bank has separate hardware events and counters.
> In the current implementation, the count from all these banks are summarized
> and total count is output.
>
> The Hisilicon uncore PMUs can be found under /sys/bus/event_source/devices.
> The counters are exported via sysfs in the corresponding events files
> under the PMU directory so the perf tool can list the event names.
>
> Note:
> This is very initial patchset for Hisilicon SoC PMU support shared for
> review. Please review and share comments.
> This patchset depends on the Hisilicon Djtag driver for r/w access to
> Hisilicon SoC PMU registers, which is not upstreamed yet. The patches for
> Djtag driver shall be send for review soon.
The Djtag portions are a prerequisite for this patch series, both for
review and merging.
>
> TODO:
> 1. Counter overflow interrupt handling support to be added.
> 2. CPU notifier to migrate to available online CPU's in case
> of CPU DOWN. Also mapping CPU cores to the current SCCL.
> 3. Support for counting of individual LLC banks
I note that bidnings were added for LLC, DDRC, and MN nodes. What's the
plan for the DDRC and MN nodes? Are they intended to be handled by the
same driver?
Thanks,
Mark.
>
> Anurup M (8):
> arm64:perf: Add Devicetree bindings for Hisilicon SoC PMU
> arm64:MAINTAINERS:hisi: Add hisilicon SoC PMU support
> arm64:perf: Update Kconfig for Hisilicon PMU support
> arm64:perf: Add support for Hisilicon SoC event counters
> arm64:perf: L3 cache(LLC) event counting in perf
> arm64:perf: Makefile for Hisilicon ARMv8 PMU
> arm64:perf: Update Makefile for Hisilicon PMU support
> arm64:perf: L3 cache(LLC) event listing in perf
>
> .../devicetree/bindings/arm/hisilicon/pmu.txt | 32 ++
> MAINTAINERS | 8 +
> drivers/perf/Kconfig | 9 +
> drivers/perf/Makefile | 1 +
> drivers/perf/hisilicon/Makefile | 1 +
> drivers/perf/hisilicon/hisi_uncore_llc.c | 613 +++++++++++++++++++++
> drivers/perf/hisilicon/hisi_uncore_llc.h | 100 ++++
> drivers/perf/hisilicon/hisi_uncore_pmu.c | 521 +++++++++++++++++
> drivers/perf/hisilicon/hisi_uncore_pmu.h | 144 +++++
> 9 files changed, 1429 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/arm/hisilicon/pmu.txt
> create mode 100644 drivers/perf/hisilicon/Makefile
> create mode 100644 drivers/perf/hisilicon/hisi_uncore_llc.c
> create mode 100644 drivers/perf/hisilicon/hisi_uncore_llc.h
> create mode 100644 drivers/perf/hisilicon/hisi_uncore_pmu.c
> create mode 100644 drivers/perf/hisilicon/hisi_uncore_pmu.h
>
> --
> 2.1.4
>
prev parent reply other threads:[~2016-06-28 11:05 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-28 9:50 [PATCH 0/8] arm64:perf: Support for Hisilicon SoC Hardware event counters Anurup M
2016-06-28 9:50 ` [PATCH 1/8] arm64:perf: Add Devicetree bindings for Hisilicon SoC PMU Anurup M
2016-06-28 10:23 ` Mark Rutland
2016-06-30 10:07 ` Anurup M
2016-06-28 9:50 ` [PATCH 2/8] arm64:MAINTAINERS:hisi: Add hisilicon SoC PMU support Anurup M
2016-06-28 9:50 ` [PATCH 3/8] arm64:perf: Update Kconfig for Hisilicon " Anurup M
2016-06-28 10:24 ` Mark Rutland
2016-06-30 9:33 ` Anurup M
2016-06-28 9:50 ` [PATCH 4/8] arm64:perf: Add support for Hisilicon SoC event counters Anurup M
2016-06-28 10:42 ` Mark Rutland
2016-08-03 0:28 ` Anurup M
2016-06-28 9:50 ` [PATCH 5/8] arm64:perf: L3 cache(LLC) event counting in perf Anurup M
2016-06-28 10:58 ` Mark Rutland
2016-08-03 0:33 ` Anurup M
2016-06-28 9:50 ` [PATCH 6/8] arm64:perf: Makefile for Hisilicon ARMv8 PMU Anurup M
2016-06-28 9:50 ` [PATCH 7/8] arm64:perf: Update Makefile for Hisilicon PMU support Anurup M
2016-06-28 9:50 ` [PATCH 8/8] arm64:perf: L3 cache(LLC) event listing in perf Anurup M
2016-06-28 11:01 ` Mark Rutland
2016-08-03 0:34 ` Anurup M
2016-06-28 11:05 ` Mark Rutland [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160628110526.GH31744@leverpostej \
--to=mark.rutland@arm.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox