linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects)
@ 2025-10-23 18:56 Frank Li
  2025-10-23 18:56 ` [PATCH 1/6] dt-bindings: perf: fsl-imx-ddr: Add compatible string for i.MX8QM, i.MX8QXP and i.MX8DXL Frank Li
                   ` (6 more replies)
  0 siblings, 7 replies; 11+ messages in thread
From: Frank Li @ 2025-10-23 18:56 UTC (permalink / raw)
  To: Frank Li, Xu Yang, Will Deacon, Mark Rutland, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam
  Cc: Frank Li, linux-arm-kernel, linux-perf-users, devicetree, imx,
	linux-kernel, Frank Li, Joakim Zhang, Jacky Bai

dts: add soc specific compatible string for imx8qm, imx8qxp, imx8dxl in db.
driver:
 - did some cleanup
 - add support for pmu in imx8dxl DB
binding:
 - add compatible string for imx8qm, imx8qxp, imx8dxl in db

Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
Frank Li (4):
      dt-bindings: perf: fsl-imx-ddr: Add compatible string for i.MX8QM, i.MX8QXP and i.MX8DXL
      perf/imx_ddr: Move ida_alloc() from ddr_perf_init() to ddr_perf_probe()
      perf/imx_ddr: Get and enable optional clks
      arm64: dts: imx8qm: add ddr perf device node

Jacky Bai (1):
      arm64: dts: imx8dxl-ss-ddr: Add DB (system interconnects) pmu support for i.MX8DXL

Joakim Zhang (1):
      perf/imx_ddr: Add support for PMU in DB (system interconnects)

 .../devicetree/bindings/perf/fsl-imx-ddr.yaml      | 26 +++++++
 arch/arm64/boot/dts/freescale/imx8-ss-ddr.dtsi     |  2 +-
 arch/arm64/boot/dts/freescale/imx8dxl-ss-ddr.dtsi  | 30 +++++++
 arch/arm64/boot/dts/freescale/imx8qm-ss-ddr.dtsi   | 19 +++++
 arch/arm64/boot/dts/freescale/imx8qm.dtsi          |  2 +
 drivers/perf/fsl_imx8_ddr_perf.c                   | 91 ++++++++++++++++++----
 6 files changed, 152 insertions(+), 18 deletions(-)
---
base-commit: c31b21db1c04ba719c3889a57873f0f7eff54670
change-id: 20251022-qm_dts-60145802537d

Best regards,
--
Frank Li <Frank.Li@nxp.com>


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 1/6] dt-bindings: perf: fsl-imx-ddr: Add compatible string for i.MX8QM, i.MX8QXP and i.MX8DXL
  2025-10-23 18:56 [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects) Frank Li
@ 2025-10-23 18:56 ` Frank Li
  2025-10-24 13:03   ` Krzysztof Kozlowski
  2025-10-23 18:56 ` [PATCH 2/6] perf/imx_ddr: Move ida_alloc() from ddr_perf_init() to ddr_perf_probe() Frank Li
                   ` (5 subsequent siblings)
  6 siblings, 1 reply; 11+ messages in thread
From: Frank Li @ 2025-10-23 18:56 UTC (permalink / raw)
  To: Frank Li, Xu Yang, Will Deacon, Mark Rutland, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam
  Cc: Frank Li, linux-arm-kernel, linux-perf-users, devicetree, imx,
	linux-kernel, Frank Li

Add compatible string fsl,imx8qm-ddr-pmu, fsl,imx8qxp-ddr-pmu and
fsl,imx8dxl-db-pmu (for data bus fabric).

Add clocks and clock-names for fsl,imx8dxl-db-pmu and keep the same
restriction for existing compatible strings.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
 .../devicetree/bindings/perf/fsl-imx-ddr.yaml      | 26 ++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml b/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
index d2e578d6b83b8847c7a0ca9d5aeb208a90e2fa6a..13eb13a79e2100ae1d747ddf6fc4db5b470112a8 100644
--- a/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
+++ b/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
@@ -14,6 +14,7 @@ properties:
     oneOf:
       - enum:
           - fsl,imx8-ddr-pmu
+          - fsl,imx8dxl-db-pmu
           - fsl,imx8m-ddr-pmu
           - fsl,imx8mq-ddr-pmu
           - fsl,imx8mm-ddr-pmu
@@ -29,6 +30,8 @@ properties:
           - const: fsl,imx8m-ddr-pmu
       - items:
           - const: fsl,imx8dxl-ddr-pmu
+          - const: fsl,imx8qm-ddr-pmu
+          - const: fsl,imx8qxp-ddr-pmu
           - const: fsl,imx8-ddr-pmu
       - items:
           - enum:
@@ -43,6 +46,14 @@ properties:
   interrupts:
     maxItems: 1
 
+  clocks:
+    maxItems: 2
+
+  clock-names:
+    items:
+      - const: ipg
+      - const: cnt
+
 required:
   - compatible
   - reg
@@ -50,6 +61,21 @@ required:
 
 additionalProperties: false
 
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: fsl,imx8dxl-db-pmu
+    then:
+      required:
+        - clocks
+        - clock-names
+    else:
+      properties:
+        clocks: false
+        clock-names: false
+
 examples:
   - |
     #include <dt-bindings/interrupt-controller/arm-gic.h>

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 2/6] perf/imx_ddr: Move ida_alloc() from ddr_perf_init() to ddr_perf_probe()
  2025-10-23 18:56 [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects) Frank Li
  2025-10-23 18:56 ` [PATCH 1/6] dt-bindings: perf: fsl-imx-ddr: Add compatible string for i.MX8QM, i.MX8QXP and i.MX8DXL Frank Li
@ 2025-10-23 18:56 ` Frank Li
  2025-10-23 18:56 ` [PATCH 3/6] perf/imx_ddr: Get and enable optional clks Frank Li
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 11+ messages in thread
From: Frank Li @ 2025-10-23 18:56 UTC (permalink / raw)
  To: Frank Li, Xu Yang, Will Deacon, Mark Rutland, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam
  Cc: Frank Li, linux-arm-kernel, linux-perf-users, devicetree, imx,
	linux-kernel, Frank Li

Move ida_alloc() from helper ddr_perf_init() into ddr_perf_probe() to
clarify why ida_free() must be called at the error path.

Add return value check for ida_alloc().

Rename label 'cpuhp_state_err' to 'idr_free' to make the code clearer,
since two error paths now jump to this label.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
 drivers/perf/fsl_imx8_ddr_perf.c | 21 ++++++++++++---------
 1 file changed, 12 insertions(+), 9 deletions(-)

diff --git a/drivers/perf/fsl_imx8_ddr_perf.c b/drivers/perf/fsl_imx8_ddr_perf.c
index b989ffa95d692fce2d42eec08fbc70520c21b8e1..5ba34c606213d255edf27081bb9f63763cca3066 100644
--- a/drivers/perf/fsl_imx8_ddr_perf.c
+++ b/drivers/perf/fsl_imx8_ddr_perf.c
@@ -645,8 +645,8 @@ static void ddr_perf_pmu_disable(struct pmu *pmu)
 {
 }
 
-static int ddr_perf_init(struct ddr_pmu *pmu, void __iomem *base,
-			 struct device *dev)
+static void ddr_perf_init(struct ddr_pmu *pmu, void __iomem *base,
+			  struct device *dev)
 {
 	*pmu = (struct ddr_pmu) {
 		.pmu = (struct pmu) {
@@ -667,9 +667,6 @@ static int ddr_perf_init(struct ddr_pmu *pmu, void __iomem *base,
 		.base = base,
 		.dev = dev,
 	};
-
-	pmu->id = ida_alloc(&ddr_ida, GFP_KERNEL);
-	return pmu->id;
 }
 
 static irqreturn_t ddr_perf_irq_handler(int irq, void *p)
@@ -753,15 +750,21 @@ static int ddr_perf_probe(struct platform_device *pdev)
 	if (!pmu)
 		return -ENOMEM;
 
-	num = ddr_perf_init(pmu, base, &pdev->dev);
+	ddr_perf_init(pmu, base, &pdev->dev);
 
 	platform_set_drvdata(pdev, pmu);
 
+	num = ida_alloc(&ddr_ida, GFP_KERNEL);
+	if (num < 0)
+		return num;
+
+	pmu->id = num;
+
 	name = devm_kasprintf(&pdev->dev, GFP_KERNEL, DDR_PERF_DEV_NAME "%d",
 			      num);
 	if (!name) {
 		ret = -ENOMEM;
-		goto cpuhp_state_err;
+		goto idr_free;
 	}
 
 	pmu->devtype_data = of_device_get_match_data(&pdev->dev);
@@ -774,7 +777,7 @@ static int ddr_perf_probe(struct platform_device *pdev)
 
 	if (ret < 0) {
 		dev_err(&pdev->dev, "cpuhp_setup_state_multi failed\n");
-		goto cpuhp_state_err;
+		goto idr_free;
 	}
 
 	pmu->cpuhp_state = ret;
@@ -821,7 +824,7 @@ static int ddr_perf_probe(struct platform_device *pdev)
 	cpuhp_state_remove_instance_nocalls(pmu->cpuhp_state, &pmu->node);
 cpuhp_instance_err:
 	cpuhp_remove_multi_state(pmu->cpuhp_state);
-cpuhp_state_err:
+idr_free:
 	ida_free(&ddr_ida, pmu->id);
 	dev_warn(&pdev->dev, "i.MX8 DDR Perf PMU failed (%d), disabled\n", ret);
 	return ret;

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 3/6] perf/imx_ddr: Get and enable optional clks
  2025-10-23 18:56 [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects) Frank Li
  2025-10-23 18:56 ` [PATCH 1/6] dt-bindings: perf: fsl-imx-ddr: Add compatible string for i.MX8QM, i.MX8QXP and i.MX8DXL Frank Li
  2025-10-23 18:56 ` [PATCH 2/6] perf/imx_ddr: Move ida_alloc() from ddr_perf_init() to ddr_perf_probe() Frank Li
@ 2025-10-23 18:56 ` Frank Li
  2025-10-23 18:56 ` [PATCH 4/6] perf/imx_ddr: Add support for PMU in DB (system interconnects) Frank Li
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 11+ messages in thread
From: Frank Li @ 2025-10-23 18:56 UTC (permalink / raw)
  To: Frank Li, Xu Yang, Will Deacon, Mark Rutland, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam
  Cc: Frank Li, linux-arm-kernel, linux-perf-users, devicetree, imx,
	linux-kernel, Frank Li

Get and enable optional clks because fsl,imx8dxl-db-pmu have two clocks.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
 drivers/perf/fsl_imx8_ddr_perf.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/perf/fsl_imx8_ddr_perf.c b/drivers/perf/fsl_imx8_ddr_perf.c
index 5ba34c606213d255edf27081bb9f63763cca3066..2a8426a74af98cf46725c2c70534829e198746f3 100644
--- a/drivers/perf/fsl_imx8_ddr_perf.c
+++ b/drivers/perf/fsl_imx8_ddr_perf.c
@@ -5,6 +5,7 @@
  */
 
 #include <linux/bitfield.h>
+#include <linux/clk.h>
 #include <linux/init.h>
 #include <linux/interrupt.h>
 #include <linux/io.h>
@@ -732,10 +733,12 @@ static int ddr_perf_offline_cpu(unsigned int cpu, struct hlist_node *node)
 
 static int ddr_perf_probe(struct platform_device *pdev)
 {
+	struct clk_bulk_data *clks;
 	struct ddr_pmu *pmu;
 	struct device_node *np;
 	void __iomem *base;
 	char *name;
+	int nclks;
 	int num;
 	int ret;
 	int irq;
@@ -754,6 +757,10 @@ static int ddr_perf_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, pmu);
 
+	nclks = devm_clk_bulk_get_all_enabled(&pdev->dev, &clks);
+	if (nclks < 0)
+		return dev_err_probe(&pdev->dev, nclks, "Failure get clks\n");
+
 	num = ida_alloc(&ddr_ida, GFP_KERNEL);
 	if (num < 0)
 		return num;

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 4/6] perf/imx_ddr: Add support for PMU in DB (system interconnects)
  2025-10-23 18:56 [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects) Frank Li
                   ` (2 preceding siblings ...)
  2025-10-23 18:56 ` [PATCH 3/6] perf/imx_ddr: Get and enable optional clks Frank Li
@ 2025-10-23 18:56 ` Frank Li
  2025-10-23 18:56 ` [PATCH 5/6] arm64: dts: imx8qm: add ddr perf device node Frank Li
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 11+ messages in thread
From: Frank Li @ 2025-10-23 18:56 UTC (permalink / raw)
  To: Frank Li, Xu Yang, Will Deacon, Mark Rutland, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam
  Cc: Frank Li, linux-arm-kernel, linux-perf-users, devicetree, imx,
	linux-kernel, Frank Li, Joakim Zhang

From: Joakim Zhang <qiangqing.zhang@nxp.com>

There is a PMU in DB, which has the same function with PMU in DDR
subsystem, the difference is PMU in DB only supports cycles, axid-read,
axid-write events.

e.g.
perf stat -a -e imx8_db0/axid-read,axi_mask=0xMMMM,axi_id=0xDDDD,axi_port=0xPP,axi_channel=0xH/ cmd
perf stat -a -e imx8_db0/axid-write,axi_mask=0xMMMM,axi_id=0xDDDD,axi_port=0xPP,axi_channel=0xH/ cmd

Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
 drivers/perf/fsl_imx8_ddr_perf.c | 65 ++++++++++++++++++++++++++++++++++------
 1 file changed, 56 insertions(+), 9 deletions(-)

diff --git a/drivers/perf/fsl_imx8_ddr_perf.c b/drivers/perf/fsl_imx8_ddr_perf.c
index 2a8426a74af98cf46725c2c70534829e198746f3..328287ab6326e3832aed85633957196548435d67 100644
--- a/drivers/perf/fsl_imx8_ddr_perf.c
+++ b/drivers/perf/fsl_imx8_ddr_perf.c
@@ -53,18 +53,27 @@
 #define to_ddr_pmu(p)		container_of(p, struct ddr_pmu, pmu)
 
 #define DDR_PERF_DEV_NAME	"imx8_ddr"
+#define DB_PERF_DEV_NAME	"imx8_db"
 #define DDR_CPUHP_CB_NAME	DDR_PERF_DEV_NAME "_perf_pmu"
 
 static DEFINE_IDA(ddr_ida);
+static DEFINE_IDA(db_ida);
 
 /* DDR Perf hardware feature */
 #define DDR_CAP_AXI_ID_FILTER			0x1     /* support AXI ID filter */
 #define DDR_CAP_AXI_ID_FILTER_ENHANCED		0x3     /* support enhanced AXI ID filter */
 #define DDR_CAP_AXI_ID_PORT_CHANNEL_FILTER	0x4	/* support AXI ID PORT CHANNEL filter */
 
+/* Perf type */
+enum fsl_ddr_type {
+	DDR_PERF_TYPE = 0,	/* ddr Perf (default) */
+	DB_PERF_TYPE,		/* db Perf */
+};
+
 struct fsl_ddr_devtype_data {
 	unsigned int quirks;    /* quirks needed for different DDR Perf core */
 	const char *identifier;	/* system PMU identifier for userspace */
+	enum fsl_ddr_type type;	/* types of Perf, ddr or db */
 };
 
 static const struct fsl_ddr_devtype_data imx8_devtype_data;
@@ -98,6 +107,12 @@ static const struct fsl_ddr_devtype_data imx8dxl_devtype_data = {
 	.identifier = "i.MX8DXL",
 };
 
+static const struct fsl_ddr_devtype_data imx8dxl_db_devtype_data = {
+	.quirks = DDR_CAP_AXI_ID_PORT_CHANNEL_FILTER,
+	.identifier = "i.MX8DXL",
+	.type = DB_PERF_TYPE,
+};
+
 static const struct of_device_id imx_ddr_pmu_dt_ids[] = {
 	{ .compatible = "fsl,imx8-ddr-pmu", .data = &imx8_devtype_data},
 	{ .compatible = "fsl,imx8m-ddr-pmu", .data = &imx8m_devtype_data},
@@ -106,6 +121,7 @@ static const struct of_device_id imx_ddr_pmu_dt_ids[] = {
 	{ .compatible = "fsl,imx8mn-ddr-pmu", .data = &imx8mn_devtype_data},
 	{ .compatible = "fsl,imx8mp-ddr-pmu", .data = &imx8mp_devtype_data},
 	{ .compatible = "fsl,imx8dxl-ddr-pmu", .data = &imx8dxl_devtype_data},
+	{ .compatible = "fsl,imx8dxl-db-pmu", .data = &imx8dxl_db_devtype_data},
 	{ /* sentinel */ }
 };
 MODULE_DEVICE_TABLE(of, imx_ddr_pmu_dt_ids);
@@ -290,6 +306,18 @@ static const struct attribute_group ddr_perf_events_attr_group = {
 	.attrs = ddr_perf_events_attrs,
 };
 
+static struct attribute *db_perf_events_attrs[] = {
+	IMX8_DDR_PMU_EVENT_ATTR(cycles, EVENT_CYCLES_ID),
+	IMX8_DDR_PMU_EVENT_ATTR(axid-read, 0x41),
+	IMX8_DDR_PMU_EVENT_ATTR(axid-write, 0x42),
+	NULL,
+};
+
+static struct attribute_group db_perf_events_attr_group = {
+	.name = "events",
+	.attrs = db_perf_events_attrs,
+};
+
 PMU_FORMAT_ATTR(event, "config:0-7");
 PMU_FORMAT_ATTR(axi_id, "config1:0-15");
 PMU_FORMAT_ATTR(axi_mask, "config1:16-31");
@@ -310,7 +338,7 @@ static const struct attribute_group ddr_perf_format_attr_group = {
 	.attrs = ddr_perf_format_attrs,
 };
 
-static const struct attribute_group *attr_groups[] = {
+static const struct attribute_group *ddr_attr_groups[] = {
 	&ddr_perf_events_attr_group,
 	&ddr_perf_format_attr_group,
 	&ddr_perf_cpumask_attr_group,
@@ -319,6 +347,14 @@ static const struct attribute_group *attr_groups[] = {
 	NULL,
 };
 
+static const struct attribute_group *db_attr_groups[] = {
+	&db_perf_events_attr_group,
+	&ddr_perf_format_attr_group,
+	&ddr_perf_cpumask_attr_group,
+	&ddr_perf_filter_cap_attr_group,
+	NULL,
+};
+
 static bool ddr_perf_is_filtered(struct perf_event *event)
 {
 	return event->attr.config == 0x41 || event->attr.config == 0x42;
@@ -655,7 +691,6 @@ static void ddr_perf_init(struct ddr_pmu *pmu, void __iomem *base,
 			.parent      = dev,
 			.capabilities = PERF_PMU_CAP_NO_EXCLUDE,
 			.task_ctx_nr = perf_invalid_context,
-			.attr_groups = attr_groups,
 			.event_init  = ddr_perf_event_init,
 			.add	     = ddr_perf_event_add,
 			.del	     = ddr_perf_event_del,
@@ -737,6 +772,7 @@ static int ddr_perf_probe(struct platform_device *pdev)
 	struct ddr_pmu *pmu;
 	struct device_node *np;
 	void __iomem *base;
+	struct ida *ida;
 	char *name;
 	int nclks;
 	int num;
@@ -761,21 +797,28 @@ static int ddr_perf_probe(struct platform_device *pdev)
 	if (nclks < 0)
 		return dev_err_probe(&pdev->dev, nclks, "Failure get clks\n");
 
-	num = ida_alloc(&ddr_ida, GFP_KERNEL);
+	pmu->devtype_data = of_device_get_match_data(&pdev->dev);
+
+	ida = pmu->devtype_data->type == DDR_PERF_TYPE ? &ddr_ida : &db_ida;
+	num = ida_alloc(ida, GFP_KERNEL);
 	if (num < 0)
 		return num;
 
 	pmu->id = num;
 
-	name = devm_kasprintf(&pdev->dev, GFP_KERNEL, DDR_PERF_DEV_NAME "%d",
-			      num);
+	if (pmu->devtype_data->type == DDR_PERF_TYPE) {
+		pmu->pmu.attr_groups = ddr_attr_groups;
+		name = devm_kasprintf(&pdev->dev, GFP_KERNEL, DDR_PERF_DEV_NAME "%d", num);
+	} else {
+		pmu->pmu.attr_groups = db_attr_groups;
+		name = devm_kasprintf(&pdev->dev, GFP_KERNEL, DB_PERF_DEV_NAME "%d", num);
+	}
+
 	if (!name) {
 		ret = -ENOMEM;
 		goto idr_free;
 	}
 
-	pmu->devtype_data = of_device_get_match_data(&pdev->dev);
-
 	pmu->cpu = raw_smp_processor_id();
 	ret = cpuhp_setup_state_multi(CPUHP_AP_ONLINE_DYN,
 				      DDR_CPUHP_CB_NAME,
@@ -832,7 +875,7 @@ static int ddr_perf_probe(struct platform_device *pdev)
 cpuhp_instance_err:
 	cpuhp_remove_multi_state(pmu->cpuhp_state);
 idr_free:
-	ida_free(&ddr_ida, pmu->id);
+	ida_free(ida, pmu->id);
 	dev_warn(&pdev->dev, "i.MX8 DDR Perf PMU failed (%d), disabled\n", ret);
 	return ret;
 }
@@ -846,7 +889,11 @@ static void ddr_perf_remove(struct platform_device *pdev)
 
 	perf_pmu_unregister(&pmu->pmu);
 
-	ida_free(&ddr_ida, pmu->id);
+	if (pmu->devtype_data->type == DDR_PERF_TYPE)
+		ida_free(&ddr_ida, pmu->id);
+	else
+		ida_free(&db_ida, pmu->id);
+
 }
 
 static struct platform_driver imx_ddr_pmu_driver = {

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 5/6] arm64: dts: imx8qm: add ddr perf device node
  2025-10-23 18:56 [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects) Frank Li
                   ` (3 preceding siblings ...)
  2025-10-23 18:56 ` [PATCH 4/6] perf/imx_ddr: Add support for PMU in DB (system interconnects) Frank Li
@ 2025-10-23 18:56 ` Frank Li
  2025-10-23 18:56 ` [PATCH 6/6] arm64: dts: imx8dxl-ss-ddr: Add DB (system interconnects) pmu support for i.MX8DXL Frank Li
  2025-10-24 12:17 ` [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects) Rob Herring (Arm)
  6 siblings, 0 replies; 11+ messages in thread
From: Frank Li @ 2025-10-23 18:56 UTC (permalink / raw)
  To: Frank Li, Xu Yang, Will Deacon, Mark Rutland, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam
  Cc: Frank Li, linux-arm-kernel, linux-perf-users, devicetree, imx,
	linux-kernel, Frank Li, Joakim Zhang

Add ddr perf monitor device node for i.MX8QM. Change imx8-ss-ddr.dtsi's
compatible string to fsl,imx8qxp-ddr-pmu. i.MX8QM overwrite to
fsl,imx8qm-ddr-pmu. All fallback to fsl,imx8-ddr-pmu.

Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx8-ss-ddr.dtsi   |  2 +-
 arch/arm64/boot/dts/freescale/imx8qm-ss-ddr.dtsi | 19 +++++++++++++++++++
 arch/arm64/boot/dts/freescale/imx8qm.dtsi        |  2 ++
 3 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8-ss-ddr.dtsi b/arch/arm64/boot/dts/freescale/imx8-ss-ddr.dtsi
index 7d5183c6c5bef9b57f2ff92c5184272e43054a03..37e68865b026deb73ffb6a52207f5c05a0dbf5fb 100644
--- a/arch/arm64/boot/dts/freescale/imx8-ss-ddr.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8-ss-ddr.dtsi
@@ -11,7 +11,7 @@ ddr_subsys: bus@5c000000 {
 	ranges = <0x5c000000 0x0 0x5c000000 0x1000000>;
 
 	ddr_pmu0: ddr-pmu@5c020000 {
-		compatible = "fsl,imx8-ddr-pmu";
+		compatible = "fsl,imx8qxp-ddr-pmu", "fsl,imx8-ddr-pmu";
 		reg = <0x5c020000 0x10000>;
 		interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
 	};
diff --git a/arch/arm64/boot/dts/freescale/imx8qm-ss-ddr.dtsi b/arch/arm64/boot/dts/freescale/imx8qm-ss-ddr.dtsi
new file mode 100644
index 0000000000000000000000000000000000000000..c831567cfbc1f2df7e3642c1f0ff080551462543
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/imx8qm-ss-ddr.dtsi
@@ -0,0 +1,19 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright 2025 NXP
+ *	Dong Aisheng <aisheng.dong@nxp.com>
+ */
+
+&ddr_pmu0 {
+	compatible = "fsl,imx8qm-ddr-pmu", "fsl,imx8-ddr-pmu";
+	interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>;
+};
+
+&ddr_subsys {
+	ddr_pmu1: ddr-pmu@5c120000 {
+		compatible = "fsl,imx8qm-ddr-pmu", "fsl,imx8-ddr-pmu";
+		reg = <0x5c120000 0x10000>;
+		interrupt-parent = <&gic>;
+		interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
+	};
+};
diff --git a/arch/arm64/boot/dts/freescale/imx8qm.dtsi b/arch/arm64/boot/dts/freescale/imx8qm.dtsi
index 5206ca82eaf642a32299147e9c1b45704075e2b2..9ff0d56fe97078cabafb66db95b4ea82f95ebec2 100644
--- a/arch/arm64/boot/dts/freescale/imx8qm.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qm.dtsi
@@ -635,6 +635,7 @@ vpu_dsp: dsp@556e8000 {
 	#include "imx8-ss-img.dtsi"
 	#include "imx8-ss-dma.dtsi"
 	#include "imx8-ss-conn.dtsi"
+	#include "imx8-ss-ddr.dtsi"
 	#include "imx8-ss-lsio.dtsi"
 	#include "imx8-ss-hsio.dtsi"
 };
@@ -647,5 +648,6 @@ vpu_dsp: dsp@556e8000 {
 #include "imx8qm-ss-lvds.dtsi"
 #include "imx8qm-ss-mipi.dtsi"
 #include "imx8qm-ss-hsio.dtsi"
+#include "imx8qm-ss-ddr.dtsi"
 
 /delete-node/ &dsp;

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 6/6] arm64: dts: imx8dxl-ss-ddr: Add DB (system interconnects) pmu support for i.MX8DXL
  2025-10-23 18:56 [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects) Frank Li
                   ` (4 preceding siblings ...)
  2025-10-23 18:56 ` [PATCH 5/6] arm64: dts: imx8qm: add ddr perf device node Frank Li
@ 2025-10-23 18:56 ` Frank Li
  2025-10-24 12:17 ` [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects) Rob Herring (Arm)
  6 siblings, 0 replies; 11+ messages in thread
From: Frank Li @ 2025-10-23 18:56 UTC (permalink / raw)
  To: Frank Li, Xu Yang, Will Deacon, Mark Rutland, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam
  Cc: Frank Li, linux-arm-kernel, linux-perf-users, devicetree, imx,
	linux-kernel, Frank Li, Jacky Bai

From: Jacky Bai <ping.bai@nxp.com>

Add DB pmu related nodes. This pmu is in DB (system interconnects).

Signed-off-by: Jacky Bai <ping.bai@nxp.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx8dxl-ss-ddr.dtsi | 30 +++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx8dxl-ss-ddr.dtsi b/arch/arm64/boot/dts/freescale/imx8dxl-ss-ddr.dtsi
index 3569abb5bb9befd4d1504e3e2a352c64229533c0..b9ca15d6b7f623e990ac66a770f7a34e82bf4b17 100644
--- a/arch/arm64/boot/dts/freescale/imx8dxl-ss-ddr.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8dxl-ss-ddr.dtsi
@@ -7,3 +7,33 @@ &ddr_pmu0 {
 	compatible = "fsl,imx8dxl-ddr-pmu", "fsl,imx8-ddr-pmu";
 	interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
 };
+
+&ddr_subsys {
+	db_ipg_clk: clock-db-ipg {
+		compatible = "fixed-clock";
+		#clock-cells = <0>;
+		clock-frequency = <456000000>;
+		clock-output-names = "db_ipg_clk";
+	};
+
+	db_pmu0: db-pmu@5ca40000 {
+		compatible = "fsl,imx8dxl-db-pmu";
+		reg = <0x5ca40000 0x10000>;
+		interrupt-parent = <&gic>;
+		interrupts = <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>;
+		clocks = <&db_pmu0_lpcg IMX_LPCG_CLK_4>, <&db_pmu0_lpcg IMX_LPCG_CLK_0>;
+		clock-names = "ipg", "cnt";
+		power-domains = <&pd IMX_SC_R_PERF>;
+	};
+
+	db_pmu0_lpcg: clock-controller@5cae0000 {
+		compatible = "fsl,imx8qxp-lpcg";
+		reg = <0x5cae0000 0x10000>;
+		#clock-cells = <1>;
+		clocks = <&db_ipg_clk>, <&db_ipg_clk>;
+		clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>;
+		clock-output-names = "perf_lpcg_cnt_clk",
+				     "perf_lpcg_ipg_clk";
+		power-domains = <&pd IMX_SC_R_PERF>;
+	};
+};

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects)
  2025-10-23 18:56 [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects) Frank Li
                   ` (5 preceding siblings ...)
  2025-10-23 18:56 ` [PATCH 6/6] arm64: dts: imx8dxl-ss-ddr: Add DB (system interconnects) pmu support for i.MX8DXL Frank Li
@ 2025-10-24 12:17 ` Rob Herring (Arm)
  6 siblings, 0 replies; 11+ messages in thread
From: Rob Herring (Arm) @ 2025-10-24 12:17 UTC (permalink / raw)
  To: Frank Li
  Cc: Mark Rutland, Will Deacon, Xu Yang, Fabio Estevam,
	linux-perf-users, Shawn Guo, Krzysztof Kozlowski, Frank Li,
	linux-arm-kernel, imx, Joakim Zhang, Conor Dooley, Jacky Bai,
	Frank Li, linux-kernel, devicetree, Sascha Hauer,
	Pengutronix Kernel Team


On Thu, 23 Oct 2025 14:56:40 -0400, Frank Li wrote:
> dts: add soc specific compatible string for imx8qm, imx8qxp, imx8dxl in db.
> driver:
>  - did some cleanup
>  - add support for pmu in imx8dxl DB
> binding:
>  - add compatible string for imx8qm, imx8qxp, imx8dxl in db
> 
> Signed-off-by: Frank Li <Frank.Li@nxp.com>
> ---
> Frank Li (4):
>       dt-bindings: perf: fsl-imx-ddr: Add compatible string for i.MX8QM, i.MX8QXP and i.MX8DXL
>       perf/imx_ddr: Move ida_alloc() from ddr_perf_init() to ddr_perf_probe()
>       perf/imx_ddr: Get and enable optional clks
>       arm64: dts: imx8qm: add ddr perf device node
> 
> Jacky Bai (1):
>       arm64: dts: imx8dxl-ss-ddr: Add DB (system interconnects) pmu support for i.MX8DXL
> 
> Joakim Zhang (1):
>       perf/imx_ddr: Add support for PMU in DB (system interconnects)
> 
>  .../devicetree/bindings/perf/fsl-imx-ddr.yaml      | 26 +++++++
>  arch/arm64/boot/dts/freescale/imx8-ss-ddr.dtsi     |  2 +-
>  arch/arm64/boot/dts/freescale/imx8dxl-ss-ddr.dtsi  | 30 +++++++
>  arch/arm64/boot/dts/freescale/imx8qm-ss-ddr.dtsi   | 19 +++++
>  arch/arm64/boot/dts/freescale/imx8qm.dtsi          |  2 +
>  drivers/perf/fsl_imx8_ddr_perf.c                   | 91 ++++++++++++++++++----
>  6 files changed, 152 insertions(+), 18 deletions(-)
> ---
> base-commit: c31b21db1c04ba719c3889a57873f0f7eff54670
> change-id: 20251022-qm_dts-60145802537d
> 
> Best regards,
> --
> Frank Li <Frank.Li@nxp.com>
> 
> 
> 


My bot found new DTB warnings on the .dts files added or changed in this
series.

Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
are fixed by another series. Ultimately, it is up to the platform
maintainer whether these warnings are acceptable or not. No need to reply
unless the platform maintainer has comments.

If you already ran DT checks and didn't see these error(s), then
make sure dt-schema is up to date:

  pip3 install dtschema --upgrade


This patch series was applied (using b4) to base:
 Base: base-commit c31b21db1c04ba719c3889a57873f0f7eff54670 not known, ignoring
 Base: attempting to guess base-commit...
 Base: tags/v6.18-rc2-24-gfda2253ceb14 (exact match)
 Base: tags/v6.18-rc2-24-gfda2253ceb14 (use --merge-base to override)

If this is not the correct base, please add 'base-commit' tag
(or use b4 which does this automatically)

New warnings running 'make CHECK_DTBS=y for arch/arm64/boot/dts/freescale/' for 20251023-qm_dts-v1-0-9830d6a45939@nxp.com:

arch/arm64/boot/dts/freescale/imx8dx-colibri-eval-v3.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qxp-tqma8xqp-mba8xx.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8dx-colibri-iris-v2.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-v1.1-eval.dtb: ddr-pmu@5c020000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-v1.1-eval.dtb: ddr-pmu@5c120000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qxp-colibri-iris.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8dx-colibri-aster.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8dxl-evk.dtb: bus@5c000000 (simple-bus): clock-db-ipg: 'ranges' is a required property
	from schema $id: http://devicetree.org/schemas/simple-bus.yaml
arch/arm64/boot/dts/freescale/imx8dxl-evk.dtb: ddr-pmu@5c020000 (fsl,imx8dxl-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8dxl-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8dxl-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8dxl-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8dxl-evk.dtb: db-pmu@5ca40000 (fsl,imx8dxl-db-pmu): 'power-domains' does not match any of the regexes: '^pinctrl-[0-9]+$'
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qxp-tqma8xqps-mb-smarc-2.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8dx-colibri-iris.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-v1.1-ixora-v1.2.dtb: ddr-pmu@5c020000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-v1.1-ixora-v1.2.dtb: ddr-pmu@5c120000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-v1.1-eval-v1.2.dtb: ddr-pmu@5c020000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-v1.1-eval-v1.2.dtb: ddr-pmu@5c120000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-eval.dtb: ddr-pmu@5c020000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-eval.dtb: ddr-pmu@5c120000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8dxp-tqma8xdps-mb-smarc-2.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-mek.dtb: ddr-pmu@5c020000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-mek.dtb: ddr-pmu@5c120000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-ixora-v1.1.dtb: ddr-pmu@5c020000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-ixora-v1.1.dtb: ddr-pmu@5c120000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-v1.1-ixora-v1.1.dtb: ddr-pmu@5c020000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-v1.1-ixora-v1.1.dtb: ddr-pmu@5c120000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qxp-colibri-iris-v2.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-eval-v1.2.dtb: ddr-pmu@5c020000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qm-apalis-eval-v1.2.dtb: ddr-pmu@5c120000 (fsl,imx8qm-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qm-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8dxp-tqma8xdp-mba8xx.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qxp-colibri-eval-v3.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qxp-colibri-aster.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml
arch/arm64/boot/dts/freescale/imx8qxp-mek.dtb: ddr-pmu@5c020000 (fsl,imx8qxp-ddr-pmu): compatible: 'oneOf' conditional failed, one must be fixed:
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too long
	['fsl,imx8qxp-ddr-pmu', 'fsl,imx8-ddr-pmu'] is too short
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8-ddr-pmu', 'fsl,imx8dxl-db-pmu', 'fsl,imx8m-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mp-ddr-pmu', 'fsl,imx93-ddr-pmu']
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx8mm-ddr-pmu', 'fsl,imx8mn-ddr-pmu', 'fsl,imx8mq-ddr-pmu', 'fsl,imx8mp-ddr-pmu']
	'fsl,imx8dxl-ddr-pmu' was expected
	'fsl,imx8qxp-ddr-pmu' is not one of ['fsl,imx91-ddr-pmu', 'fsl,imx94-ddr-pmu', 'fsl,imx95-ddr-pmu']
	'fsl,imx8m-ddr-pmu' was expected
	'fsl,imx8qm-ddr-pmu' was expected
	'fsl,imx93-ddr-pmu' was expected
	from schema $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml






^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 1/6] dt-bindings: perf: fsl-imx-ddr: Add compatible string for i.MX8QM, i.MX8QXP and i.MX8DXL
  2025-10-23 18:56 ` [PATCH 1/6] dt-bindings: perf: fsl-imx-ddr: Add compatible string for i.MX8QM, i.MX8QXP and i.MX8DXL Frank Li
@ 2025-10-24 13:03   ` Krzysztof Kozlowski
  2025-10-24 13:19     ` Frank Li
  0 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2025-10-24 13:03 UTC (permalink / raw)
  To: Frank Li, Xu Yang, Will Deacon, Mark Rutland, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam
  Cc: linux-arm-kernel, linux-perf-users, devicetree, imx, linux-kernel

On 23/10/2025 20:56, Frank Li wrote:
> Add compatible string fsl,imx8qm-ddr-pmu, fsl,imx8qxp-ddr-pmu and
> fsl,imx8dxl-db-pmu (for data bus fabric).
> 
> Add clocks and clock-names for fsl,imx8dxl-db-pmu and keep the same
> restriction for existing compatible strings.
> 
> Signed-off-by: Frank Li <Frank.Li@nxp.com>
> ---
>  .../devicetree/bindings/perf/fsl-imx-ddr.yaml      | 26 ++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml b/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
> index d2e578d6b83b8847c7a0ca9d5aeb208a90e2fa6a..13eb13a79e2100ae1d747ddf6fc4db5b470112a8 100644
> --- a/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
> +++ b/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
> @@ -14,6 +14,7 @@ properties:
>      oneOf:
>        - enum:
>            - fsl,imx8-ddr-pmu
> +          - fsl,imx8dxl-db-pmu
>            - fsl,imx8m-ddr-pmu
>            - fsl,imx8mq-ddr-pmu
>            - fsl,imx8mm-ddr-pmu
> @@ -29,6 +30,8 @@ properties:
>            - const: fsl,imx8m-ddr-pmu
>        - items:
>            - const: fsl,imx8dxl-ddr-pmu
> +          - const: fsl,imx8qm-ddr-pmu
> +          - const: fsl,imx8qxp-ddr-pmu


I don't understand the need for this change, not explained in commit
msg. Why do you change 8dxl-ddr?

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 1/6] dt-bindings: perf: fsl-imx-ddr: Add compatible string for i.MX8QM, i.MX8QXP and i.MX8DXL
  2025-10-24 13:03   ` Krzysztof Kozlowski
@ 2025-10-24 13:19     ` Frank Li
  2025-10-24 15:50       ` Krzysztof Kozlowski
  0 siblings, 1 reply; 11+ messages in thread
From: Frank Li @ 2025-10-24 13:19 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Xu Yang, Will Deacon, Mark Rutland, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam, linux-arm-kernel,
	linux-perf-users, devicetree, imx, linux-kernel

On Fri, Oct 24, 2025 at 03:03:10PM +0200, Krzysztof Kozlowski wrote:
> On 23/10/2025 20:56, Frank Li wrote:
> > Add compatible string fsl,imx8qm-ddr-pmu, fsl,imx8qxp-ddr-pmu and
> > fsl,imx8dxl-db-pmu (for data bus fabric).
> >
> > Add clocks and clock-names for fsl,imx8dxl-db-pmu and keep the same
> > restriction for existing compatible strings.
> >
> > Signed-off-by: Frank Li <Frank.Li@nxp.com>
> > ---
> >  .../devicetree/bindings/perf/fsl-imx-ddr.yaml      | 26 ++++++++++++++++++++++
> >  1 file changed, 26 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml b/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
> > index d2e578d6b83b8847c7a0ca9d5aeb208a90e2fa6a..13eb13a79e2100ae1d747ddf6fc4db5b470112a8 100644
> > --- a/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
> > +++ b/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
> > @@ -14,6 +14,7 @@ properties:
> >      oneOf:
> >        - enum:
> >            - fsl,imx8-ddr-pmu
> > +          - fsl,imx8dxl-db-pmu
> >            - fsl,imx8m-ddr-pmu
> >            - fsl,imx8mq-ddr-pmu
> >            - fsl,imx8mm-ddr-pmu
> > @@ -29,6 +30,8 @@ properties:
> >            - const: fsl,imx8m-ddr-pmu
> >        - items:
> >            - const: fsl,imx8dxl-ddr-pmu
> > +          - const: fsl,imx8qm-ddr-pmu
> > +          - const: fsl,imx8qxp-ddr-pmu
>
>
> I don't understand the need for this change, not explained in commit
> msg. Why do you change 8dxl-ddr?

I have not change 8dxl-ddr, but add fsl,imx8dxl-db-pmu, which is difference
with fsl,imx8dxl-ddr-pmu. (db vs ddr). db have less events compared to
ddr's pmu.

Frank

>
> Best regards,
> Krzysztof

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 1/6] dt-bindings: perf: fsl-imx-ddr: Add compatible string for i.MX8QM, i.MX8QXP and i.MX8DXL
  2025-10-24 13:19     ` Frank Li
@ 2025-10-24 15:50       ` Krzysztof Kozlowski
  0 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2025-10-24 15:50 UTC (permalink / raw)
  To: Frank Li
  Cc: Xu Yang, Will Deacon, Mark Rutland, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam, linux-arm-kernel,
	linux-perf-users, devicetree, imx, linux-kernel

On 24/10/2025 15:19, Frank Li wrote:
> On Fri, Oct 24, 2025 at 03:03:10PM +0200, Krzysztof Kozlowski wrote:
>> On 23/10/2025 20:56, Frank Li wrote:
>>> Add compatible string fsl,imx8qm-ddr-pmu, fsl,imx8qxp-ddr-pmu and
>>> fsl,imx8dxl-db-pmu (for data bus fabric).
>>>
>>> Add clocks and clock-names for fsl,imx8dxl-db-pmu and keep the same
>>> restriction for existing compatible strings.
>>>
>>> Signed-off-by: Frank Li <Frank.Li@nxp.com>
>>> ---
>>>  .../devicetree/bindings/perf/fsl-imx-ddr.yaml      | 26 ++++++++++++++++++++++
>>>  1 file changed, 26 insertions(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml b/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
>>> index d2e578d6b83b8847c7a0ca9d5aeb208a90e2fa6a..13eb13a79e2100ae1d747ddf6fc4db5b470112a8 100644
>>> --- a/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
>>> +++ b/Documentation/devicetree/bindings/perf/fsl-imx-ddr.yaml
>>> @@ -14,6 +14,7 @@ properties:
>>>      oneOf:
>>>        - enum:
>>>            - fsl,imx8-ddr-pmu
>>> +          - fsl,imx8dxl-db-pmu
>>>            - fsl,imx8m-ddr-pmu
>>>            - fsl,imx8mq-ddr-pmu
>>>            - fsl,imx8mm-ddr-pmu
>>> @@ -29,6 +30,8 @@ properties:
>>>            - const: fsl,imx8m-ddr-pmu
>>>        - items:
>>>            - const: fsl,imx8dxl-ddr-pmu
>>> +          - const: fsl,imx8qm-ddr-pmu
>>> +          - const: fsl,imx8qxp-ddr-pmu
>>
>>
>> I don't understand the need for this change, not explained in commit
>> msg. Why do you change 8dxl-ddr?
> 
> I have not change 8dxl-ddr, but add fsl,imx8dxl-db-pmu, which is difference


I talk about this exact hunk. You clearly have list for imx8dxl-ddr-pmu
being modified.

> with fsl,imx8dxl-ddr-pmu. (db vs ddr). db have less events compared to
> ddr's pmu.
> 
> Frank
> 
>>
>> Best regards,
>> Krzysztof


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2025-10-24 15:50 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-23 18:56 [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects) Frank Li
2025-10-23 18:56 ` [PATCH 1/6] dt-bindings: perf: fsl-imx-ddr: Add compatible string for i.MX8QM, i.MX8QXP and i.MX8DXL Frank Li
2025-10-24 13:03   ` Krzysztof Kozlowski
2025-10-24 13:19     ` Frank Li
2025-10-24 15:50       ` Krzysztof Kozlowski
2025-10-23 18:56 ` [PATCH 2/6] perf/imx_ddr: Move ida_alloc() from ddr_perf_init() to ddr_perf_probe() Frank Li
2025-10-23 18:56 ` [PATCH 3/6] perf/imx_ddr: Get and enable optional clks Frank Li
2025-10-23 18:56 ` [PATCH 4/6] perf/imx_ddr: Add support for PMU in DB (system interconnects) Frank Li
2025-10-23 18:56 ` [PATCH 5/6] arm64: dts: imx8qm: add ddr perf device node Frank Li
2025-10-23 18:56 ` [PATCH 6/6] arm64: dts: imx8dxl-ss-ddr: Add DB (system interconnects) pmu support for i.MX8DXL Frank Li
2025-10-24 12:17 ` [PATCH 0/6] perf/imx_ddr: Add i.MX8QM and pmu in DB (system interconnects) Rob Herring (Arm)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).