[PATCH 3/3] perf vendor events arm64: Add i.MX91 DDR Performance Monitor metrics
Xu Yang
xu.yang_2 at nxp.com
Mon Oct 7 22:49:35 PDT 2024
Hi Namhyung,
On Mon, Sep 30, 2024 at 02:07:51PM -0700, Namhyung Kim wrote:
> Hello,
>
> On Tue, Sep 24, 2024 at 02:12:51PM +0800, Xu Yang wrote:
> > Add JSON metrics for i.MX91 DDR Performance Monitor.
> >
> > Signed-off-by: Xu Yang <xu.yang_2 at nxp.com>
> > ---
> > .../arch/arm64/freescale/imx91/sys/ddrc.json | 9 +++++++
> > .../arm64/freescale/imx91/sys/metrics.json | 26 +++++++++++++++++++
> > 2 files changed, 35 insertions(+)
> > create mode 100644 tools/perf/pmu-events/arch/arm64/freescale/imx91/sys/ddrc.json
> > create mode 100644 tools/perf/pmu-events/arch/arm64/freescale/imx91/sys/metrics.json
>
> How do you want to route this? As it's mixed with kernel changes, I
> would generally request to split but it's a change just to add new
> files so it should be ok to go with other tree. In that case,
Sorry for late.
How about you pick up this one to perf-tools tree and Will Deacon pick up
the first 2 patches to his tree? I didn't see Will apply perf-tools patch
before.
Thanks,
Xu Yang
>
> Acked-by: Namhyung Kim <namhyung at kernel.org>
>
> Thanks,
> Namhyung
>
> >
> > diff --git a/tools/perf/pmu-events/arch/arm64/freescale/imx91/sys/ddrc.json b/tools/perf/pmu-events/arch/arm64/freescale/imx91/sys/ddrc.json
> > new file mode 100644
> > index 000000000000..74ac12660a29
> > --- /dev/null
> > +++ b/tools/perf/pmu-events/arch/arm64/freescale/imx91/sys/ddrc.json
> > @@ -0,0 +1,9 @@
> > +[
> > + {
> > + "BriefDescription": "ddr cycles event",
> > + "EventCode": "0x00",
> > + "EventName": "imx91_ddr.cycles",
> > + "Unit": "imx9_ddr",
> > + "Compat": "imx91"
> > + }
> > +]
> > diff --git a/tools/perf/pmu-events/arch/arm64/freescale/imx91/sys/metrics.json b/tools/perf/pmu-events/arch/arm64/freescale/imx91/sys/metrics.json
> > new file mode 100644
> > index 000000000000..f0c5911eb2d0
> > --- /dev/null
> > +++ b/tools/perf/pmu-events/arch/arm64/freescale/imx91/sys/metrics.json
> > @@ -0,0 +1,26 @@
> > +[
> > + {
> > + "BriefDescription": "bandwidth usage for lpddr4 evk board",
> > + "MetricName": "imx91_bandwidth_usage.lpddr4",
> > + "MetricExpr": "(((( imx9_ddr0 at ddrc_pm_0@ ) * 2 * 8 ) + (( imx9_ddr0 at ddrc_pm_3@ + imx9_ddr0 at ddrc_pm_5@ + imx9_ddr0 at ddrc_pm_7@ + imx9_ddr0 at ddrc_pm_9@ - imx9_ddr0 at ddrc_pm_2@ - imx9_ddr0 at ddrc_pm_4@ - imx9_ddr0 at ddrc_pm_6@ - imx9_ddr0 at ddrc_pm_8@ ) * 32 )) / duration_time) / (2400 * 1000000 * 2)",
> > + "ScaleUnit": "1e2%",
> > + "Unit": "imx9_ddr",
> > + "Compat": "imx91"
> > + },
> > + {
> > + "BriefDescription": "bytes all masters read from ddr",
> > + "MetricName": "imx91_ddr_read.all",
> > + "MetricExpr": "( imx9_ddr0 at ddrc_pm_0@ ) * 2 * 8",
> > + "ScaleUnit": "9.765625e-4KB",
> > + "Unit": "imx9_ddr",
> > + "Compat": "imx91"
> > + },
> > + {
> > + "BriefDescription": "bytes all masters write to ddr",
> > + "MetricName": "imx91_ddr_write.all",
> > + "MetricExpr": "( imx9_ddr0 at ddrc_pm_3@ + imx9_ddr0 at ddrc_pm_5@ + imx9_ddr0 at ddrc_pm_7@ + imx9_ddr0 at ddrc_pm_9@ - imx9_ddr0 at ddrc_pm_2@ - imx9_ddr0 at ddrc_pm_4@ - imx9_ddr0 at ddrc_pm_6@ - imx9_ddr0 at ddrc_pm_8@ ) * 32",
> > + "ScaleUnit": "9.765625e-4KB",
> > + "Unit": "imx9_ddr",
> > + "Compat": "imx91"
> > + }
> > +]
> > --
> > 2.34.1
> >
More information about the linux-arm-kernel
mailing list