[PATCH 0/2] perf: ARM CoreSight PMU support

Suzuki K Poulose suzuki.poulose at arm.com
Mon May 9 03:02:23 PDT 2022


Cc: Mike Williams, Mathieu Poirier

On 09/05/2022 10:28, Will Deacon wrote:
> On Sun, May 08, 2022 at 07:28:08PM -0500, Besar Wicaksono wrote:
>> 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/2022-May/740485.html
>>
>> 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(+)
> 
> How does this interact with all the stuff we have under
> drivers/hwtracing/coresight/?

Absolutely zero, except for the name. The standard
is named "CoreSight PMU" which is a bit unfortunate,
given the only link, AFAIU, with the "CoreSight" architecture
is the Lock Access Register(LAR). For reference, the
drivers/hwtracing/coresight/ is purely "CoreSight" self-hosted
tracing and the PMU is called "cs_etm" (expands to coresight etm).
Otherwise the standard doesn't have anything to do with what
exists already in the kernel.

That said, I am concerned that the "coresight_pmu" is easily confused
with what exists today. Given that this is more of a "PMU" standard
for the IPs in the Arm world, it would be better to name it as such
avoiding any confusion with the existing PMUs.

One potential recommendation for the name is, "Arm PMU"  (The ACPI table 
is named Arm PMU Table). But then that could be clashing with the 
armv8_pmu :-(.

Some of the other options are :

"Arm Generic PMU"
"Arm Uncore PMU"
"Arm PMU"

Suzuki

> 
> Will




More information about the linux-arm-kernel mailing list