perf vendor events arm64:: Add i.MX93 DDR Performance Monitor metrics
authorXu Yang <xu.yang_2@nxp.com>
Wed, 29 May 2024 08:03:57 +0000 (16:03 +0800)
committerNamhyung Kim <namhyung@kernel.org>
Wed, 3 Jul 2024 23:46:05 +0000 (16:46 -0700)
Add JSON metrics for i.MX93 DDR Performance Monitor.

Reviewed-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Xu Yang <xu.yang_2@nxp.com>
Cc: festevam@gmail.com
Cc: conor+dt@kernel.org
Cc: robh+dt@kernel.org
Cc: shawnguo@kernel.org
Cc: will@kernel.org
Cc: krzysztof.kozlowski+dt@linaro.org
Cc: mike.leach@linaro.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: imx@lists.linux.dev
Cc: john.g.garry@oracle.com
Cc: kernel@pengutronix.de
Cc: s.hauer@pengutronix.de
Cc: devicetree@vger.kernel.org
Link: https://lore.kernel.org/r/20240529080358.703784-7-xu.yang_2@nxp.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/ddrc.json [new file with mode: 0644]
tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/metrics.json [new file with mode: 0644]

diff --git a/tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/ddrc.json b/tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/ddrc.json
new file mode 100644 (file)
index 0000000..eeeae4d
--- /dev/null
@@ -0,0 +1,9 @@
+[
+   {
+           "BriefDescription": "ddr cycles event",
+           "EventCode": "0x00",
+           "EventName": "imx93_ddr.cycles",
+           "Unit": "imx9_ddr",
+           "Compat": "imx93"
+   }
+]
diff --git a/tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/metrics.json b/tools/perf/pmu-events/arch/arm64/freescale/imx93/sys/metrics.json
new file mode 100644 (file)
index 0000000..4d2454c
--- /dev/null
@@ -0,0 +1,26 @@
+[
+   {
+           "BriefDescription": "bandwidth usage for lpddr4x evk board",
+           "MetricName": "imx93_bandwidth_usage.lpddr4x",
+           "MetricExpr": "(((( imx9_ddr0@ddrc_pm_0@ ) * 2 * 8 ) + (( imx9_ddr0@ddrc_pm_3@ + imx9_ddr0@ddrc_pm_5@ + imx9_ddr0@ddrc_pm_7@ + imx9_ddr0@ddrc_pm_9@ - imx9_ddr0@ddrc_pm_2@ - imx9_ddr0@ddrc_pm_4@ - imx9_ddr0@ddrc_pm_6@ - imx9_ddr0@ddrc_pm_8@ ) * 32 )) / duration_time) / (3733 * 1000000 * 2)",
+           "ScaleUnit": "1e2%",
+           "Unit": "imx9_ddr",
+           "Compat": "imx93"
+   },
+   {
+           "BriefDescription": "bytes all masters read from ddr",
+           "MetricName": "imx93_ddr_read.all",
+           "MetricExpr": "( imx9_ddr0@ddrc_pm_0@ ) * 2 * 8",
+           "ScaleUnit": "9.765625e-4KB",
+           "Unit": "imx9_ddr",
+           "Compat": "imx93"
+   },
+   {
+           "BriefDescription": "bytes all masters write to ddr",
+           "MetricName": "imx93_ddr_write.all",
+           "MetricExpr": "( imx9_ddr0@ddrc_pm_3@ + imx9_ddr0@ddrc_pm_5@ + imx9_ddr0@ddrc_pm_7@ + imx9_ddr0@ddrc_pm_9@ - imx9_ddr0@ddrc_pm_2@ - imx9_ddr0@ddrc_pm_4@ - imx9_ddr0@ddrc_pm_6@ - imx9_ddr0@ddrc_pm_8@ ) * 32",
+           "ScaleUnit": "9.765625e-4KB",
+           "Unit": "imx9_ddr",
+           "Compat": "imx93"
+   }
+]