[PATCH v2 0/3] Arm CMN-600 PMU driver

Zidenberg, Tsahi tsahee at amazon.com
Mon Oct 5 05:16:13 EDT 2020



On 18/09/2020, 16:29, "Robin Murphy" <robin.murphy at arm.com> wrote:
    > Here's an update with some very minor cleanup tweaks, plus a proposal
    > for some more in-depth debug information. Given that nobody seems to
    > have any significant complaints about the interface, I assume we're all
    > happy to merge the basic driver as-is and fix anything later if needed.
    >
    > Robin.

Agree with merging the driver as-is.
Tested both the updated driver and the debugfs on Graviton2 (ACPI). 
Both map and initial numbers seem right.

Tested-by: Tsahi Zidenberg <tsahee at amazon.com>

May I offer a small addition to the documentation?
Something along these lines:

--- a/Documentation/admin-guide/perf/arm-cmn.rst
+++ b/Documentation/admin-guide/perf/arm-cmn.rst
@@ -41,8 +41,14 @@ specified by "occupid".
 
 By default each event provides an aggregate count over all nodes of the
 given type. To target a specific node, "bynodeid" must be set to 1 and
-"nodeid" to the appropriate value derived from the CMN configuration
-(as defined in the "Node ID Mapping" section of the TRM).
+"nodeid" to the appropriate value derived from the CMN configuration.
+
+The CMN map is available in /sys/kernel/debug/arm-cmn/map.
+A nodeid could be calculated with this formulae:
+  node-id = d | (p << 2) | (y << 3) | (x << (3 + xybits))
+where:
+  x,y,p,d are node location as can be seen in the map
+  xybits is 2 for meshes <= 2*2, and 3 otherwise.
 
 Watchpoints
 -----------



More information about the linux-arm-kernel mailing list