|
|
Log in / Subscribe / Register

perf: ARM CoreSight PMU support

From:  Besar Wicaksono <bwicaksono-AT-nvidia.com>
To:  <catalin.marinas-AT-arm.com>, <will-AT-kernel.org>, <mark.rutland-AT-arm.com>
Subject:  [PATCH 0/2] perf: ARM CoreSight PMU support
Date:  Sun, 08 May 2022 19:28:08 -0500
Message-ID:  <20220509002810.12412-1-bwicaksono@nvidia.com>
Cc:  <linux-arm-kernel-AT-lists.infradead.org>, <linux-kernel-AT-vger.kernel.org>, <linux-tegra-AT-vger.kernel.org>, <sudeep.holla-AT-arm.com>, <thanu.rangarajan-AT-arm.com>, <Michael.Williams-AT-arm.com>, <suzuki.poulose-AT-arm.com>, <treding-AT-nvidia.com>, <jonathanh-AT-nvidia.com>, <vsethi-AT-nvidia.com>, Besar Wicaksono <bwicaksono-AT-nvidia.com>
Archive-link:  Article

Add driver support for ARM CoreSight PMU device and event attributes for NVIDIA
implementation. The code is based on ARM Coresight PMU architecture and ACPI ARM
Performance Monitoring Unit table (APMT) specification below:
 * ARM Coresight PMU:
        https://developer.arm.com/documentation/ihi0091/latest
 * APMT: https://developer.arm.com/documentation/den0117/latest

Notes:
 * There is a concern on the naming of the PMU device.
   Currently the driver is probing "arm-coresight-pmu" device, however the APMT
   spec supports different kinds of CoreSight PMU based implementation. So it is
   open for discussion if the name can stay or a "generic" name is required.
   Please see the following thread:
   http://lists.infradead.org/pipermail/linux-arm-kernel/202...

Besar Wicaksono (2):
  perf: coresight_pmu: Add support for ARM CoreSight PMU driver
  perf: coresight_pmu: Add support for NVIDIA SCF and MCF attribute

 arch/arm64/configs/defconfig                  |    1 +
 drivers/perf/Kconfig                          |    2 +
 drivers/perf/Makefile                         |    1 +
 drivers/perf/coresight_pmu/Kconfig            |   10 +
 drivers/perf/coresight_pmu/Makefile           |    7 +
 .../perf/coresight_pmu/arm_coresight_pmu.c    | 1317 +++++++++++++++++
 .../perf/coresight_pmu/arm_coresight_pmu.h    |  147 ++
 .../coresight_pmu/arm_coresight_pmu_nvidia.c  |  300 ++++
 .../coresight_pmu/arm_coresight_pmu_nvidia.h  |   17 +
 9 files changed, 1802 insertions(+)
 create mode 100644 drivers/perf/coresight_pmu/Kconfig
 create mode 100644 drivers/perf/coresight_pmu/Makefile
 create mode 100644 drivers/perf/coresight_pmu/arm_coresight_pmu.c
 create mode 100644 drivers/perf/coresight_pmu/arm_coresight_pmu.h
 create mode 100644 drivers/perf/coresight_pmu/arm_coresight_pmu_nvidia.c
 create mode 100644 drivers/perf/coresight_pmu/arm_coresight_pmu_nvidia.h

-- 
2.17.1



Copyright © 2022, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds