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@xxxxxxx> > > --- > > .../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@xxxxxxxxxx> > > 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@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) / (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@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@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": "imx91" > > + } > > +] > > -- > > 2.34.1 > >