* [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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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-30 11:11 ` ext4 issue on linux-next(next-20251030) Bough Chen 2025-10-23 18:56 ` [PATCH 3/6] perf/imx_ddr: Get and enable optional clks Frank Li ` (4 subsequent siblings) 6 siblings, 1 reply; 16+ 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] 16+ messages in thread
* ext4 issue on linux-next(next-20251030) 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-30 11:11 ` Bough Chen 2025-10-31 1:33 ` Theodore Tso 0 siblings, 1 reply; 16+ messages in thread From: Bough Chen @ 2025-10-30 11:11 UTC (permalink / raw) To: jack@suse.cz Cc: tytso@mit.edu, adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, imx@lists.linux.dev Hi Jack, On the latest linux-next, I find your patch acf943e9768e ("ext4: fix checks for orphan inodes") trigger the following issue on our imx7d-sdb board. I do not have enough background knowledge of ext4, so don't know why there are orphan inodes on the partition with ext4. Not sure whether this is a real issue or we need some special operation on current ext4 partition. Do you have any suggestions to debug this issue? root@imx6ul7d:~# e2fsck -f /dev/mmcblk2p2 e2fsck 1.47.3 (8-Jul-2025) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information root: 64959/570080 files (0.1% non-contiguous), 719492/1139298 blocks root@imx6ul7d:~# mount /dev/mmcblk2p2 test/ [ 203.776094] EXT4-fs (mmcblk2p2): mounted filesystem dc06048e-939b-4827-97ef-f815486f505f r/w with ordered data mode. Quota mode: none. root@imx6ul7d:~# umount /dev/mmcblk2p2 [ 210.088283] EXT4-fs (mmcblk2p2): unmounting filesystem dc06048e-939b-4827-97ef-f815486f505f. [ 210.104550] EXT4-fs (mmcblk2p2): Inode 1 (3148c11d): inode tracked as orphan! [ 210.104605] 3148c11d: efb7ffde 5f7b7fff e7fffbfe 677b6f7f ......{_.....o{g [ 210.104618] 961d5d65: feedff7e 7bfdefff 7fffffff fff3bebf ~......{........ [ 210.104630] 440e00b4: 9f77fdff cfd7ff7b 57b3ffe7 cfdfd777 ..w.{......Ww... [ 210.104641] d896c4c3: edecffaf ecfae6f3 e3cf7f5f f7fee7e5 ........_....... [ 210.104652] 594b2fff: 7bfbff9d f5bfab4f efffffff fef7ffff ...{O........... [ 210.104663] 48812578: f6bffadf 00000000 00000000 00000000 ................ root@imx6ul7d:~# [ 210.104674] 6940b116: 00000000 00000000 c697af68 c697af68 ........h...h... [ 210.104685] 5f2b32c1: c697af70 c697af70 c697af78 c697af78 p...p...x...x... [ 210.104696] 01fb95bd: c697af80 c697af80 00000000 00000000 ................ [ 210.104708] ae1bfce8: 00000000 00000000 c697af98 c697af98 ................ [ 210.104719] 659d4cf2: 00000000 cd7cffff 00000000 00000000 ......|......... [ 210.104729] 91d0ddfa: 00000000 00000000 00000000 00000000 ................ [ 210.104740] 0747a55c: c697afc0 c697afc0 00280000 00000000 ..........(..... [ 210.104751] 77b8b5de: 00000000 00000000 ffffffff ffffffff ................ [ 210.104762] 326357f2: c1017dc0 c565d400 c697b0b8 00000001 .}....e......... [ 210.104773] 3398af02: 00000001 00000000 00000000 00000000 ................ [ 210.104784] abe2702f: 00000000 00000000 00000000 00000000 ................ [ 210.104794] a7d16dda: 00000000 00000000 00000000 00000000 ................ [ 210.104805] f714e489: 00000000 00000000 00030003 000c0000 ................ [ 210.104816] 9969c6ba: 00000000 00000000 00000000 00000300 ................ [ 210.104827] 7b03ec5b: 00000000 00000000 00000000 00000000 ................ [ 210.104838] 8f2c1269: c697b050 c697b050 00000000 00000000 P...P........... [ 210.104849] d7cc3d73: 00000000 00000000 c697b068 c697b068 ........h...h... [ 210.104860] 90750112: c697b070 c697b070 c697b078 c697b078 p...p...x...x... [ 210.104696] 01fb95bd: c697af80 c697af80 00000000 00000000 ................ [16/1961] [ 210.104708] ae1bfce8: 00000000 00000000 c697af98 c697af98 ................ [ 210.104719] 659d4cf2: 00000000 cd7cffff 00000000 00000000 ......|......... [ 210.104729] 91d0ddfa: 00000000 00000000 00000000 00000000 ................ [ 210.104740] 0747a55c: c697afc0 c697afc0 00280000 00000000 ..........(..... [ 210.104751] 77b8b5de: 00000000 00000000 ffffffff ffffffff ................ [ 210.104762] 326357f2: c1017dc0 c565d400 c697b0b8 00000001 .}....e......... [ 210.104773] 3398af02: 00000001 00000000 00000000 00000000 ................ [ 210.104784] abe2702f: 00000000 00000000 00000000 00000000 ................ [ 210.104794] a7d16dda: 00000000 00000000 00000000 00000000 ................ [ 210.104805] f714e489: 00000000 00000000 00030003 000c0000 ................ [ 210.104816] 9969c6ba: 00000000 00000000 00000000 00000300 ................ [ 210.104827] 7b03ec5b: 00000000 00000000 00000000 00000000 ................ [ 210.104838] 8f2c1269: c697b050 c697b050 00000000 00000000 P...P........... [ 210.104849] d7cc3d73: 00000000 00000000 c697b068 c697b068 ........h...h... [ 210.104860] 90750112: c697b070 c697b070 c697b078 c697b078 p...p...x...x... [ 210.104871] 3d683c4a: c697b080 c697b080 00000000 00000000 ................ [ 210.104881] 6cb03d5d: 00000002 00000000 00000000 00000000 ................ [ 210.104892] 7c8038eb: 00000000 00000000 00000000 00000000 ................ [ 210.104903] 093a7b94: c1017e40 00000000 c697afc8 001f001f @~.............. [ 210.104914] 9fe63af0: 00000021 00000000 00000000 00000000 !............... [ 210.104925] 1889fb16: 00000000 00000000 c697b0d8 c697b0d8 ................ [ 210.104936] 59cb62ef: 00100cca 00000000 00000000 00000000 ................ [ 210.104947] 86fb5791: 00000000 00000000 c1017ec8 00000010 .........~...... [ 210.104958] b399200b: 00000000 00000000 c697b108 c697b108 ................ [ 210.104968] 7ecef62e: 00000000 00000000 00000000 00000000 ................ [ 210.104979] e35002c8: c697b120 c697b120 00000000 c697b12c ... .......,... [ 210.104990] 3c940dbc: c697b12c 00000000 00000000 00000000 ,............... [ 210.105001] f8c050d9: 00000000 00000000 00000000 fffffff7 ................ [ 210.105012] c8073821: ffffff5f ffffdfd1 ffeffffc ffff6556 _...........Ve.. [ 210.105023] 84651cd7: 00000000 00000000 00000000 00000000 ................ [ 210.105033] f8a81094: 00000000 00000000 00000000 c697b17c ............|... [ 210.105044] aaea6bf1: c697b17c 00000000 00000000 00000000 |............... [ 210.105055] 758d8f80: ffff5efa 00000000 ffefcf6e ffffffef .^......n....... [ 210.105066] 171a7e4a: 00000000 00000000 00000000 00000000 ................ [ 210.105077] 5da2c755: c697b1b0 c697b1b0 ffe00000 c697b1bc ................ [ 210.105088] 3b69580b: c697b1bc c03ffb38 00000000 00000000 ....8.?......... [ 210.105099] 43f12395: 00000000 00000000 00000000 ffeff3f7 ................ [ 210.105108] f17da383: ffffd7fe ffefeffa ........ [ 210.105121] CPU: 0 UID: 0 PID: 777 Comm: umount Not tainted 6.18.0-rc3-next-20251030-00003-g01f4df1f83c5 #12 VOLUNTARY [ 210.105137] Hardware name: Freescale i.MX7 Dual (Device Tree) [ 210.105145] Call trace: [ 210.105162] unwind_backtrace from show_stack+0x10/0x14 [ 210.105203] show_stack from dump_stack_lvl+0x54/0x68 [ 210.105224] dump_stack_lvl from ext4_destroy_inode+0x70/0x10c [ 210.105248] ext4_destroy_inode from destroy_inode+0x3c/0x64 [ 210.105272] destroy_inode from ext4_mb_release+0x278/0x3ec [ 210.105297] ext4_mb_release from ext4_put_super+0xec/0x42c [ 210.105320] ext4_put_super from generic_shutdown_super+0x70/0x178 [ 210.105343] generic_shutdown_super from kill_block_super+0x10/0x2c [ 210.105361] kill_block_super from ext4_kill_sb+0x18/0x30 [ 210.105379] ext4_kill_sb from deactivate_locked_super+0x50/0x98 [ 210.105397] deactivate_locked_super from cleanup_mnt+0xd8/0x178 [ 210.105415] cleanup_mnt from task_work_run+0x98/0x108 [ 210.105433] task_work_run from do_work_pending+0x4a0/0x4c4 [ 210.105453] do_work_pending from slow_work_pending+0xc/0x24 [ 210.105473] Exception stack(0xf0b89fb0 to 0xf0b89ff8) [ 210.105486] 9fa0: 00000000 00000000 0100b870 00000002 [ 210.105498] 9fc0: 0100b2e0 0100b870 b6ef88dc 00000034 00000000 0100b370 0100b550 0100b2e0 [ 210.105509] 9fe0: 00000034 bea799cc b6e48e4f b6db9836 60070030 0100b870 ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: ext4 issue on linux-next(next-20251030) 2025-10-30 11:11 ` ext4 issue on linux-next(next-20251030) Bough Chen @ 2025-10-31 1:33 ` Theodore Tso 2025-10-31 2:31 ` Bough Chen 0 siblings, 1 reply; 16+ messages in thread From: Theodore Tso @ 2025-10-31 1:33 UTC (permalink / raw) To: Bough Chen Cc: jack@suse.cz, adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, imx@lists.linux.dev On Thu, Oct 30, 2025 at 11:11:51AM +0000, Bough Chen wrote: > Hi Jack, > > On the latest linux-next, I find your patch acf943e9768e ("ext4: fix checks for orphan inodes") trigger the following issue on our imx7d-sdb board. > I do not have enough background knowledge of ext4, so don't know why there are orphan inodes on the partition with ext4. Not sure whether this > is a real issue or we need some special operation on current ext4 partition. If you are willing to let me to see your file names, you could send me just the metadata blocks so I can examine file system image. The details are in the REPORTING BUGS section of the e2fsck man page and as well as the RAW IMAGE FILE and QCOW2 IMAGE FILE sections of the e2image man page, but the short version is: e2image -Q /dev/mmcblkp2p2 fs.qcow2 bzip2 -z fs.qcow2 ... and then send me the fs.qcow2.bz file. If you aren't please try running "dumpe2fs -h /dev/mmcblk2p2" and send me the output. Thanks, - Ted ^ permalink raw reply [flat|nested] 16+ messages in thread
* RE: ext4 issue on linux-next(next-20251030) 2025-10-31 1:33 ` Theodore Tso @ 2025-10-31 2:31 ` Bough Chen 2025-11-03 3:57 ` Bough Chen 0 siblings, 1 reply; 16+ messages in thread From: Bough Chen @ 2025-10-31 2:31 UTC (permalink / raw) To: Theodore Tso Cc: jack@suse.cz, adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, imx@lists.linux.dev [-- Attachment #1: Type: text/plain, Size: 4223 bytes --] Hi Theodore, Thanks for your quick reply. root@imx6ul7d:~# e2image -Q /dev/mmcblk2p2 fs.qcow2 e2image 1.47.3 (8-Jul-2025) root@imx6ul7d:~# bzip2 -z fs.qcow2 for the fs.qcow2.bz, please refer to the attachement. For this /dev/mmcblk2p2, sometimes umount do not meet this issue, but after several mount/umount operation, this issue come up again. I also paste the log of your second suggestion: root@imx6ul7d:~# dumpe2fs -h /dev/mmcblk2p2 [16/1922] dumpe2fs 1.47.3 (8-Jul-2025) Filesystem volume name: root Last mounted on: <not available> Filesystem UUID: dc06048e-939b-4827-97ef-f815486f505f Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal ext_attr resize_inode dir_index orphan_file filetype extent 64bit flex_bg metadata_csum_seed sparse_super large_file huge_file dir_nli nk extra_isize metadata_csum Filesystem flags: signed_directory_hash Default mount options: user_xattr acl Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 570080 Block count: 1139298 Reserved block count: 56964 Overhead clusters: 56548 Free blocks: 419806 Free inodes: 505121 First block: 0 Block size: 4096 Fragment size: 4096 Group descriptor size: 64 Reserved GDT blocks: 556 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 16288 Inode blocks per group: 1018 Flex block group size: 16 Filesystem created: Tue Apr 5 23:00:00 2011 Last mount time: Fri Oct 31 02:18:16 2025 Last write time: Fri Oct 31 02:18:17 2025 Mount count: 6 Maximum mount count: -1 Last checked: Thu Oct 30 10:35:48 2025 Check interval: 0 (<none>) Lifetime writes: 4248 MB Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 256 Required extra isize: 32 Desired extra isize: 32 Journal inode: 8 Default directory hash: half_md4 Directory Hash Seed: ff13b55b-8055-50d5-88d5-80782d2e8e86 Journal backup: inode blocks Checksum type: crc32c Checksum: 0xff831d21 Checksum seed: 0x794f2ccc Orphan file inode: 12 Journal features: (none) Total journal size: 64M Total journal blocks: 16384 Max transaction length: 16384 Fast commit length: 0 Journal sequence: 0x00000002 Journal start: 0 Regards Haibo Chen > -----Original Message----- > From: Theodore Tso <tytso@mit.edu> > Sent: 2025年10月31日 9:34 > To: Bough Chen <haibo.chen@nxp.com> > Cc: jack@suse.cz; adilger.kernel@dilger.ca; linux-ext4@vger.kernel.org; > imx@lists.linux.dev > Subject: Re: ext4 issue on linux-next(next-20251030) > > On Thu, Oct 30, 2025 at 11:11:51AM +0000, Bough Chen wrote: > > Hi Jack, > > > > On the latest linux-next, I find your patch acf943e9768e ("ext4: fix checks for > orphan inodes") trigger the following issue on our imx7d-sdb board. > > I do not have enough background knowledge of ext4, so don't know why > > there are orphan inodes on the partition with ext4. Not sure whether this is a > real issue or we need some special operation on current ext4 partition. > > If you are willing to let me to see your file names, you could send me just the > metadata blocks so I can examine file system image. The details are in the > REPORTING BUGS section of the e2fsck man page and as well as the RAW > IMAGE FILE and QCOW2 IMAGE FILE sections of the e2image man page, but the > short version is: > > > e2image -Q /dev/mmcblkp2p2 fs.qcow2 > bzip2 -z fs.qcow2 > > ... and then send me the fs.qcow2.bz file. > > If you aren't please try running "dumpe2fs -h /dev/mmcblk2p2" and send me > the output. > > Thanks, > > - Ted [-- Attachment #2: fs.qcow2.bz2 --] [-- Type: application/octet-stream, Size: 1265456 bytes --] ^ permalink raw reply [flat|nested] 16+ messages in thread
* RE: ext4 issue on linux-next(next-20251030) 2025-10-31 2:31 ` Bough Chen @ 2025-11-03 3:57 ` Bough Chen 2025-11-03 8:46 ` Jan Kara 0 siblings, 1 reply; 16+ messages in thread From: Bough Chen @ 2025-11-03 3:57 UTC (permalink / raw) To: Theodore Tso Cc: jack@suse.cz, adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, imx@lists.linux.dev Hi All, I find something when debug, share the finding here: I notice every time this issue happen, the log always show inode 1, so I think this is supper inode related. And seems related to the i_state_flags of struct ext4_inode_info [ 210.104663] 48812578: f6bffadf 00000000 00000000 00000000 Here the i_state_flags = 0xf6bffadf, the Inode dynamic state flags only touch to bit0~bit12, so this i_state_flags is abnormal. When I add the following changes, this issue gone: diff --git a/fs/ext4/super.c b/fs/ext4/super.c index 66f92f832b0fb..c6c2d32d5531b 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c @@ -1396,6 +1396,7 @@ static struct inode *ext4_alloc_inode(struct super_block *sb) inode_set_iversion(&ei->vfs_inode, 1); ei->i_flags = 0; + ext4_clear_state_flags(ei); spin_lock_init(&ei->i_raw_lock); ei->i_prealloc_node = RB_ROOT; atomic_set(&ei->i_prealloc_active, 0); This can explain why this issue can't be reproduce 100%. And can also explain why only imx6/7 series meet this issue, but imx8/9 not, because imx6/7 is arm32 core, it use i_state_flags, but imx8/9 use arm64 core, do not use i_state_flags. This issue may exist long time, but Jack's patch trigger this issue. I also have the following concern: Why need to distinguish arch32 and arch64, why not use u64 to merge these two casees? diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h index 46f54d0a4bfe9..7369e165efc0f 100644 --- a/fs/ext4/ext4.h +++ b/fs/ext4/ext4.h @@ -1034,10 +1034,7 @@ struct ext4_inode_info { */ ext4_group_t i_block_group; ext4_lblk_t i_dir_start_lookup; -#if (BITS_PER_LONG < 64) - unsigned long i_state_flags; /* Dynamic state flags */ -#endif - unsigned long i_flags; + u64 i_flags; /* * Extended attributes can be read independently of the main file @@ -1973,21 +1970,12 @@ EXT4_INODE_BIT_FNS(flag, flags, 0) static inline int ext4_test_inode_state(struct inode *inode, int bit); static inline void ext4_set_inode_state(struct inode *inode, int bit); static inline void ext4_clear_inode_state(struct inode *inode, int bit); -#if (BITS_PER_LONG < 64) -EXT4_INODE_BIT_FNS(state, state_flags, 0) - -static inline void ext4_clear_state_flags(struct ext4_inode_info *ei) -{ - (ei)->i_state_flags = 0; -} -#else EXT4_INODE_BIT_FNS(state, flags, 32) static inline void ext4_clear_state_flags(struct ext4_inode_info *ei) { /* We depend on the fact that callers will set i_flags */ } -#endif #else /* Assume that user mode programs are passing in an ext4fs superblock, not * a kernel struct super_block. This will allow us to call the feature-test Regards Haibo Chen > -----Original Message----- > From: Bough Chen > Sent: 2025年10月31日 10:31 > To: Theodore Tso <tytso@mit.edu> > Cc: jack@suse.cz; adilger.kernel@dilger.ca; > linux-ext4@vger.kernel.org; imx@lists.linux.dev > Subject: RE: ext4 issue on linux-next(next-20251030) > > Hi Theodore, > > Thanks for your quick reply. > > root@imx6ul7d:~# e2image -Q /dev/mmcblk2p2 fs.qcow2 e2image 1.47.3 > (8-Jul-2025) root@imx6ul7d:~# bzip2 -z fs.qcow2 > > for the fs.qcow2.bz, please refer to the attachement. > > For this /dev/mmcblk2p2, sometimes umount do not meet this issue, but > after several mount/umount operation, this issue come up again. > > I also paste the log of your second suggestion: > > root@imx6ul7d:~# dumpe2fs -h /dev/mmcblk2p2 [16/1922] dumpe2fs 1.47.3 > (8-Jul-2025) > Filesystem volume name: root > Last mounted on: <not available> > Filesystem UUID: dc06048e-939b-4827-97ef-f815486f505f > Filesystem magic number: 0xEF53 > Filesystem revision #: 1 (dynamic) > Filesystem features: has_journal ext_attr resize_inode dir_index > orphan_file filetype extent 64bit flex_bg metadata_csum_seed > sparse_super large_file huge_file dir_nli nk extra_isize metadata_csum > Filesystem flags: signed_directory_hash > Default mount options: user_xattr acl > Filesystem state: clean > Errors behavior: Continue > Filesystem OS type: Linux > Inode count: 570080 > Block count: 1139298 > Reserved block count: 56964 > Overhead clusters: 56548 > Free blocks: 419806 > Free inodes: 505121 > First block: 0 > Block size: 4096 > Fragment size: 4096 > Group descriptor size: 64 > Reserved GDT blocks: 556 > Blocks per group: 32768 > Fragments per group: 32768 > Inodes per group: 16288 > Inode blocks per group: 1018 > Flex block group size: 16 > Filesystem created: Tue Apr 5 23:00:00 2011 > Last mount time: Fri Oct 31 02:18:16 2025 > Last write time: Fri Oct 31 02:18:17 2025 > Mount count: 6 > Maximum mount count: -1 > Last checked: Thu Oct 30 10:35:48 2025 > Check interval: 0 (<none>) > Lifetime writes: 4248 MB > Reserved blocks uid: 0 (user root) > Reserved blocks gid: 0 (group root) > First inode: 11 > Inode size: 256 > Required extra isize: 32 > Desired extra isize: 32 > Journal inode: 8 > Default directory hash: half_md4 > Directory Hash Seed: ff13b55b-8055-50d5-88d5-80782d2e8e86 > Journal backup: inode blocks > Checksum type: crc32c > Checksum: 0xff831d21 > Checksum seed: 0x794f2ccc > Orphan file inode: 12 > Journal features: (none) > Total journal size: 64M > Total journal blocks: 16384 > Max transaction length: 16384 > Fast commit length: 0 > Journal sequence: 0x00000002 > Journal start: 0 > > Regards > Haibo Chen > > > -----Original Message----- > > From: Theodore Tso <tytso@mit.edu> > > Sent: 2025年10月31日 9:34 > > To: Bough Chen <haibo.chen@nxp.com> > > Cc: jack@suse.cz; adilger.kernel@dilger.ca; > > linux-ext4@vger.kernel.org; imx@lists.linux.dev > > Subject: Re: ext4 issue on linux-next(next-20251030) > > > > On Thu, Oct 30, 2025 at 11:11:51AM +0000, Bough Chen wrote: > > > Hi Jack, > > > > > > On the latest linux-next, I find your patch acf943e9768e ("ext4: > > > fix checks for > > orphan inodes") trigger the following issue on our imx7d-sdb board. > > > I do not have enough background knowledge of ext4, so don't know > > > why there are orphan inodes on the partition with ext4. Not sure > > > whether this is a > > real issue or we need some special operation on current ext4 partition. > > > > If you are willing to let me to see your file names, you could send > > me just the metadata blocks so I can examine file system image. The > > details are in the REPORTING BUGS section of the e2fsck man page and > > as well as the RAW IMAGE FILE and QCOW2 IMAGE FILE sections of the > > e2image man page, but the short version is: > > > > > > e2image -Q /dev/mmcblkp2p2 fs.qcow2 > > bzip2 -z fs.qcow2 > > > > ... and then send me the fs.qcow2.bz file. > > > > If you aren't please try running "dumpe2fs -h /dev/mmcblk2p2" and > > send me the output. > > > > Thanks, > > > > - Ted ^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: ext4 issue on linux-next(next-20251030) 2025-11-03 3:57 ` Bough Chen @ 2025-11-03 8:46 ` Jan Kara 0 siblings, 0 replies; 16+ messages in thread From: Jan Kara @ 2025-11-03 8:46 UTC (permalink / raw) To: Bough Chen Cc: Theodore Tso, jack@suse.cz, adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, imx@lists.linux.dev On Mon 03-11-25 03:57:37, Bough Chen wrote: > Hi All, > > I find something when debug, share the finding here: > > I notice every time this issue happen, the log always show inode 1, so I > think this is supper inode related. And seems related to the > i_state_flags of struct ext4_inode_info > > [ 210.104663] 48812578: f6bffadf 00000000 00000000 00000000 > > Here the i_state_flags = 0xf6bffadf, the Inode dynamic state flags only > touch to bit0~bit12, so this i_state_flags is abnormal. > > When I add the following changes, this issue gone: > > diff --git a/fs/ext4/super.c b/fs/ext4/super.c > index 66f92f832b0fb..c6c2d32d5531b 100644 > --- a/fs/ext4/super.c > +++ b/fs/ext4/super.c > @@ -1396,6 +1396,7 @@ static struct inode *ext4_alloc_inode(struct super_block *sb) > > inode_set_iversion(&ei->vfs_inode, 1); > ei->i_flags = 0; > + ext4_clear_state_flags(ei); > spin_lock_init(&ei->i_raw_lock); > ei->i_prealloc_node = RB_ROOT; > atomic_set(&ei->i_prealloc_active, 0); OK, that's a good catch. I was scratching my head how inode with ino 1 could get orphan bit set when the kernel should never touch it. Now I've found out mbcache abuses EXT4_BAD_INO for its internal purposes so what we complain about is an in-memory auxiliary inode used by mbcache. Indeed it looks safer to initialize i_state_flags in ext4_alloc_inode() and we can drop the initialization from __ext4_iget() and __ext4_new_inode(). > This can explain why this issue can't be reproduce 100%. And can also > explain why only imx6/7 series meet this issue, but imx8/9 not, because > imx6/7 is arm32 core, it use i_state_flags, but imx8/9 use arm64 core, do > not use i_state_flags. > > This issue may exist long time, but Jack's patch trigger this issue. > > I also have the following concern: > Why need to distinguish arch32 and arch64, why not use u64 to merge these > two casees? Because atomic bit operations are only guaranteed to work on unsigned long type (32-bit on 32-bit architectures), not on u64 type. Honza -- Jan Kara <jack@suse.com> SUSE Labs, CR ^ permalink raw reply [flat|nested] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ messages in thread
end of thread, other threads:[~2025-11-03 8:46 UTC | newest] Thread overview: 16+ 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-30 11:11 ` ext4 issue on linux-next(next-20251030) Bough Chen 2025-10-31 1:33 ` Theodore Tso 2025-10-31 2:31 ` Bough Chen 2025-11-03 3:57 ` Bough Chen 2025-11-03 8:46 ` Jan Kara 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