Apalis IMX8 GPIO mapping difference between BSP 5 and BSP 6

Hi,

We are currently transitioning to the Apalis IMX8 to move away from the Apalis TK1. I’ve been checking out the latest BSP 6 reference images releases for the Apalis iMX8 and found that the GPIO mapping seems to be completely shifted in contrast to BSP 5 and also different to your own documentation (GPIO (Linux) | Toradex Developer Center)

On BSP 6, the system the first 2 gpiochips that are usually mapped to the lower GPIO numbers are now mapped to the higher GPIO numbers which messes up the whole GPIO enumeration that we are also rely on to control multiple GPIOs.
GPIOs defined in the device tree belonging to gpiochip0 for instance (lsio_gpio0) are now suddenly mapped to gpiochip2 in the system.

I checked this with the BSP 6.1.0 quarterly minimal reference image, so this is using the vanilla imx8qm-apalis-v1.1-eval device tree and is nothing that we introduced.

root@apalis-imx8-07308263:~# cat /sys/kernel/debug/gpio
gpiochip9: GPIOs 192-223, parent: platform/5d0f0000.gpio, 5d0f0000.gpio:

gpiochip8: GPIOs 224-255, parent: platform/5d0e0000.gpio, 5d0e0000.gpio:
 gpio-224 (                    )
 gpio-225 (                    )
 gpio-226 (                    )
 gpio-227 (                    )
 gpio-228 (                    )
 gpio-229 (                    )
 gpio-230 (                    )
 gpio-231 (                    )
 gpio-232 (                    )
 gpio-233 (                    )
 gpio-234 (MXM3_261            )
 gpio-235 (MXM3_263            )
 gpio-236 (MXM3_259            )
 gpio-237 (MXM3_257            )
 gpio-238 (MXM3_255            )
 gpio-239 (MXM3_128            )
 gpio-240 (MXM3_130            )
 gpio-241 (MXM3_265            )
 gpio-242 (MXM3_249            )
 gpio-243 (MXM3_247            )
 gpio-244 (MXM3_245            )
 gpio-245 (MXM3_243            )

gpiochip7: GPIOs 256-287, parent: platform/5d0d0000.gpio, 5d0d0000.gpio:
 gpio-256 (                    )
 gpio-257 (                    )
 gpio-258 (                    )
 gpio-259 (                    )
 gpio-260 (                    )
 gpio-261 (                    )
 gpio-262 (                    )
 gpio-263 (                    )
 gpio-264 (                    )
 gpio-265 (                    )
 gpio-266 (                    )
 gpio-267 (                    )
 gpio-268 (                    )
 gpio-269 (                    )
 gpio-270 (MXM3_150            )
 gpio-271 (MXM3_160            )
 gpio-272 (MXM3_162            )
 gpio-273 (MXM3_144            )
 gpio-274 (MXM3_146            )
 gpio-275 (MXM3_148            )
 gpio-276 (MXM3_152            )
 gpio-277 (MXM3_156            )
 gpio-278 (MXM3_158            )
 gpio-279 (MXM3_159            )
 gpio-280 (MXM3_184            )
 gpio-281 (MXM3_180            )
 gpio-282 (MXM3_186            )
 gpio-283 (MXM3_188            )
 gpio-284 (MXM3_176            )
 gpio-285 (MXM3_178            )

gpiochip6: GPIOs 288-319, parent: platform/5d0c0000.gpio, 5d0c0000.gpio:
 gpio-288 (MXM3_18             )
 gpio-289 (MXM3_11/GPIO5       )
 gpio-290 (MXM3_13/GPIO6       )
 gpio-291 (MXM3_274            )
 gpio-292 (MXM3_84             |regulator-usb-host-v) out hi
 gpio-293 (MXM3_262            )
 gpio-294 (MXM3_96             )
 gpio-295 (                    )
 gpio-296 (                    )
 gpio-297 (                    )
 gpio-298 (                    )
 gpio-299 (                    |PCIE_SATA_CLK       ) out hi
 gpio-300 (MXM3_190            |cd                  ) in  hi IRQ ACTIVE LOW
 gpio-301 (                    )
 gpio-302 (                    )
 gpio-303 (                    )
 gpio-304 (MXM3_269            )
 gpio-305 (MXM3_251            )
 gpio-306 (MXM3_253            )
 gpio-307 (MXM3_295            )
 gpio-308 (MXM3_299            )
 gpio-309 (MXM3_301            )
 gpio-310 (MXM3_297            )
 gpio-311 (MXM3_293            )
 gpio-312 (MXM3_291            )
 gpio-313 (MXM3_289            )
 gpio-314 (MXM3_287            )
gpiochip5: GPIOs 320-351, parent: platform/5d0b0000.gpio, 5d0b0000.gpio:
 gpio-320 (MXM3_191            )
 gpio-321 (                    )
 gpio-322 (MXM3_221            )
 gpio-323 (MXM3_225            )
 gpio-324 (MXM3_223            )
 gpio-325 (MXM3_227            |spi0 CS0            ) out hi ACTIVE LOW
 gpio-326 (MXM3_200            )
 gpio-327 (MXM3_235            )
 gpio-328 (MXM3_231            )
 gpio-329 (MXM3_229            )
 gpio-330 (MXM3_233            |spi1 CS0            ) out hi ACTIVE LOW
 gpio-331 (MXM3_204            )
 gpio-332 (MXM3_196            )
 gpio-333 (                    )
 gpio-334 (MXM3_202            )
 gpio-335 (                    )
 gpio-336 (                    )
 gpio-337 (                    )
 gpio-338 (MXM3_305            )
 gpio-339 (MXM3_307            )
 gpio-340 (MXM3_309            )
 gpio-341 (MXM3_311            )
 gpio-342 (MXM3_315            )
 gpio-343 (MXM3_317            )
 gpio-344 (MXM3_319            )
 gpio-345 (MXM3_321            )
 gpio-346 (MXM3_15/GPIO7       |regulator-pcie-switc) out lo
 gpio-347 (MXM3_63             )
 gpio-348 (MXM3_17/GPIO8       |gpio-fan            ) out hi
 gpio-349 (MXM3_12             )
 gpio-350 (MXM3_14             )
 gpio-351 (MXM3_16             )

gpiochip4: GPIOs 352-383, parent: platform/5d0a0000.gpio, 5d0a0000.gpio:
 gpio-352 (                    )
 gpio-353 (                    )
 gpio-354 (                    )
 gpio-355 (                    )
 gpio-356 (                    )
 gpio-357 (                    )
 gpio-358 (                    )
 gpio-359 (MXM3_198            )
 gpio-360 (MXM3_35             )
 gpio-361 (MXM3_164            |cd                  ) in  hi IRQ ACTIVE LOW
 gpio-362 (                    )
 gpio-363 (                    |PCIE_WIFI_CLK       ) out hi
 gpio-364 (                    )
 gpio-365 (                    )
 gpio-366 (MXM3_217            )
 gpio-367 (MXM3_215            )
 gpio-368 (                    )
 gpio-369 (                    )
 gpio-370 (MXM3_193            )
 gpio-371 (MXM3_194            )
 gpio-372 (MXM3_37             )
 gpio-373 (                    )
 gpio-374 (MXM3_271            )
 gpio-375 (MXM3_273            )
 gpio-376 (MXM3_195            )
 gpio-377 (MXM3_197            )
 gpio-378 (MXM3_177            )
 gpio-379 (MXM3_179            )
 gpio-380 (MXM3_181            )
 gpio-381 (MXM3_183            )
 gpio-382 (MXM3_185            )
 gpio-383 (MXM3_187            )

gpiochip3: GPIOs 384-415, parent: platform/5d090000.gpio, 5d090000.gpio:
 gpio-384 (                    )
 gpio-385 (                    |usb3503 intn        ) out lo
 gpio-386 (                    |usb3503 reset       ) out hi ACTIVE LOW
 gpio-387 (                    )
 gpio-388 (MXM3_286            )
 gpio-389 (                    )
 gpio-390 (MXM3_87             )
 gpio-391 (MXM3_99             )
 gpio-392 (MXM3_138            )
 gpio-393 (MXM3_140            )
 gpio-394 (MXM3_239            )
 gpio-395 (                    |PHY reset           ) out hi ACTIVE LOW
 gpio-396 (MXM3_281            )
 gpio-397 (MXM3_283            )
 gpio-398 (MXM3_126            )
 gpio-399 (MXM3_132            )
 gpio-400 (                    )
 gpio-401 (                    )
 gpio-402 (                    )
 gpio-403 (                    )
 gpio-404 (MXM3_173            )
 gpio-405 (MXM3_175            )
 gpio-406 (MXM3_123            )
 gpio-412 (                    |regulator-module-wif) out lo
 gpio-414 (                    |CONNECTOR_IS_HDMI   ) out hi
gpiochip2: GPIOs 416-447, parent: platform/5d080000.gpio, 5d080000.gpio:
 gpio-416 (MXM3_279            )
 gpio-417 (MXM3_277            )
 gpio-418 (MXM3_135            )
 gpio-419 (MXM3_203            )
 gpio-420 (MXM3_201            )
 gpio-421 (MXM3_275            )
 gpio-422 (MXM3_110            )
 gpio-423 (MXM3_120            )
 gpio-424 (MXM3_1/GPIO1        )
 gpio-425 (MXM3_3/GPIO2        )
 gpio-426 (MXM3_124            )
 gpio-427 (MXM3_122            )
 gpio-428 (MXM3_5/GPIO3        )
 gpio-429 (MXM3_7/GPIO4        )
 gpio-430 (                    )
 gpio-431 (                    )
 gpio-432 (MXM3_4              )
 gpio-433 (MXM3_211            )
 gpio-434 (MXM3_209            )
 gpio-435 (MXM3_2              )
 gpio-436 (MXM3_136            )
 gpio-437 (MXM3_134            )
 gpio-438 (MXM3_6              )
 gpio-439 (MXM3_8              )
 gpio-440 (MXM3_112            )
 gpio-441 (MXM3_118            )
 gpio-442 (MXM3_114            )
 gpio-443 (MXM3_116            )
 gpio-447 (                    |usb3503 connect     ) out lo ACTIVE LOW

gpiochip1: GPIOs 448-479, parent: platform/58242000.gpio, 58242000.gpio:

gpiochip0: GPIOs 480-511, parent: platform/58222000.gpio, 58222000.gpio:

I compared this with another Apalis iMX8 running a BSP 5 image where everything looks correct. The gpiochips on addresses 58222000 and 58242000 are represented as gpiochip8 and gpiochip9 instead.

root@apalis-imx8-07028928:~# cat /sys/kernel/debug/gpio
gpiochip9: GPIOs 192-223, parent: platform/58242000.gpio, 58242000.gpio:

gpiochip8: GPIOs 224-255, parent: platform/58222000.gpio, 58222000.gpio:

gpiochip7: GPIOs 256-287, parent: platform/5d0f0000.gpio, 5d0f0000.gpio:

gpiochip6: GPIOs 288-319, parent: platform/5d0e0000.gpio, 5d0e0000.gpio:
 gpio-288 (                    )
 gpio-289 (                    )
 gpio-290 (                    )
 gpio-291 (                    )
 gpio-292 (                    )
 gpio-293 (                    )
 gpio-294 (                    )
 gpio-295 (                    )
 gpio-296 (                    )
 gpio-297 (                    )
 gpio-298 (MXM3_261            )
 gpio-299 (MXM3_263            |sysfs               ) out lo
 gpio-300 (MXM3_259            )
 gpio-301 (MXM3_257            )
 gpio-302 (MXM3_255            )
 gpio-303 (MXM3_128            )
 gpio-304 (MXM3_130            )
 gpio-305 (MXM3_265            |sysfs               ) out lo
 gpio-306 (MXM3_249            |sysfs               ) out lo
 gpio-307 (MXM3_247            |sysfs               ) out hi
 gpio-308 (MXM3_245            |sysfs               ) out hi
 gpio-309 (MXM3_243            |sysfs               ) out hi

gpiochip5: GPIOs 320-351, parent: platform/5d0d0000.gpio, 5d0d0000.gpio:
 gpio-320 (                    |reset               ) out hi ACTIVE LOW
 gpio-321 (                    )
 gpio-322 (                    )
 gpio-323 (                    )
 gpio-324 (                    )
 gpio-325 (                    )
 gpio-326 (                    )
 gpio-327 (                    )
 gpio-328 (                    )
 gpio-329 (                    )
 gpio-330 (                    )
 gpio-331 (                    )
 gpio-332 (                    )
 gpio-333 (                    )
 gpio-334 (MXM3_150            )
 gpio-335 (MXM3_160            )
 gpio-336 (MXM3_162            )
 gpio-337 (MXM3_144            )
 gpio-338 (MXM3_146            )
 gpio-339 (MXM3_148            )
 gpio-340 (MXM3_152            )
 gpio-341 (MXM3_156            )
 gpio-342 (MXM3_158            )
 gpio-343 (MXM3_159            )
 gpio-344 (MXM3_184            )
 gpio-345 (MXM3_180            )
 gpio-346 (MXM3_186            )
 gpio-347 (MXM3_188            )
 gpio-348 (MXM3_176            )
 gpio-349 (MXM3_178            )

gpiochip4: GPIOs 352-383, parent: platform/5d0c0000.gpio, 5d0c0000.gpio:
 gpio-352 (MXM3_18             )
 gpio-353 (MXM3_11/GPIO5       |sysfs               ) out hi
 gpio-354 (MXM3_13/GPIO6       |sysfs               ) out lo
 gpio-355 (MXM3_274            )
 gpio-356 (MXM3_84             |regulator-usb-host-v) out hi
 gpio-357 (MXM3_262            )
 gpio-358 (MXM3_96             )
 gpio-359 (                    )
 gpio-360 (                    )
 gpio-361 (                    )
 gpio-362 (                    )
 gpio-363 (                    |enable              ) out hi
 gpio-364 (MXM3_190            |cd                  ) in  lo IRQ ACTIVE LOW
 gpio-365 (                    )
 gpio-366 (                    )
 gpio-367 (                    )
 gpio-368 (MXM3_269            )
 gpio-369 (MXM3_251            |sysfs               ) out lo
 gpio-370 (MXM3_253            )
 gpio-371 (MXM3_295            )
 gpio-372 (MXM3_299            |sysfs               ) out lo
 gpio-373 (MXM3_301            |sysfs               ) out hi
 gpio-374 (MXM3_297            )
 gpio-375 (MXM3_293            )
 gpio-376 (MXM3_291            )
 gpio-377 (MXM3_289            )
 gpio-378 (MXM3_287            )
gpiochip3: GPIOs 384-415, parent: platform/5d0b0000.gpio, 5d0b0000.gpio:
 gpio-384 (MXM3_191            |sysfs               ) out lo
 gpio-385 (                    )
 gpio-386 (MXM3_221            |sysfs               ) out hi
 gpio-387 (MXM3_225            |sysfs               ) out hi
 gpio-388 (MXM3_223            )
 gpio-389 (MXM3_227            )
 gpio-390 (MXM3_200            )
 gpio-391 (MXM3_235            )
 gpio-392 (MXM3_231            )
 gpio-393 (MXM3_229            )
 gpio-394 (MXM3_233            |fsl_lpspi           ) in  lo
 gpio-395 (MXM3_204            )
 gpio-396 (MXM3_196            |sysfs               ) out lo
 gpio-397 (                    )
 gpio-398 (MXM3_202            )
 gpio-399 (                    )
 gpio-400 (                    )
 gpio-401 (                    )
 gpio-402 (MXM3_305            )
 gpio-403 (MXM3_307            )
 gpio-404 (MXM3_309            )
 gpio-405 (MXM3_311            )
 gpio-406 (MXM3_315            )
 gpio-407 (MXM3_317            )
 gpio-408 (MXM3_319            )
 gpio-409 (MXM3_321            )
 gpio-410 (MXM3_15/GPIO7       |regulators:regulator) out hi
 gpio-411 (MXM3_63             )
 gpio-412 (MXM3_17/GPIO8       |sysfs               ) out lo
 gpio-413 (MXM3_12             )
 gpio-414 (MXM3_14             )
 gpio-415 (MXM3_16             )
gpiochip2: GPIOs 416-447, parent: platform/5d0a0000.gpio, 5d0a0000.gpio:
 gpio-416 (                    )
 gpio-417 (                    )
 gpio-418 (                    )
 gpio-419 (                    )
 gpio-420 (                    )
 gpio-421 (                    )
 gpio-422 (                    )
 gpio-423 (MXM3_198            )
 gpio-424 (MXM3_35             )
 gpio-425 (MXM3_164            |cd                  ) in  hi IRQ ACTIVE LOW
 gpio-426 (                    )
 gpio-427 (                    |enable              ) out hi
 gpio-428 (                    )
 gpio-429 (                    )
 gpio-430 (MXM3_217            )
 gpio-431 (MXM3_215            |sysfs               ) out hi
 gpio-432 (                    )
 gpio-433 (                    )
 gpio-434 (MXM3_193            |sysfs               ) out hi
 gpio-435 (MXM3_194            )
 gpio-436 (MXM3_37             )
 gpio-437 (                    )
 gpio-438 (MXM3_271            )
 gpio-439 (MXM3_273            |sysfs               ) out lo
 gpio-440 (MXM3_195            )
 gpio-441 (MXM3_197            )
 gpio-442 (MXM3_177            |sysfs               ) out lo
 gpio-443 (MXM3_179            |sysfs               ) out hi
 gpio-444 (MXM3_181            |sysfs               ) out hi
 gpio-445 (MXM3_183            |sysfs               ) out hi
 gpio-446 (MXM3_185            |sysfs               ) out hi
 gpio-447 (MXM3_187            |sysfs               ) out lo

gpiochip1: GPIOs 448-479, parent: platform/5d090000.gpio, 5d090000.gpio:
 gpio-448 (                    )
 gpio-449 (                    |usb3503 intn        ) out lo
 gpio-450 (                    |usb3503 reset       ) out hi
 gpio-451 (                    )
 gpio-452 (MXM3_286            |enable              ) out hi
 gpio-453 (                    )
 gpio-454 (MXM3_87             )
 gpio-455 (MXM3_99             )
 gpio-456 (MXM3_138            )
 gpio-457 (MXM3_140            )
 gpio-458 (MXM3_239            )
 gpio-459 (                    |PHY reset           ) out hi ACTIVE LOW
 gpio-460 (MXM3_281            )
 gpio-461 (MXM3_283            )
 gpio-462 (MXM3_126            )
 gpio-463 (MXM3_132            )
 gpio-464 (                    )
 gpio-465 (                    )
 gpio-466 (                    )
 gpio-467 (                    )
 gpio-468 (MXM3_173            )
 gpio-469 (MXM3_175            )
 gpio-470 (MXM3_123            )
 gpio-476 (                    |regulators:regulator) out hi
 gpio-478 (                    |HDMI_CTRL           ) out hi

gpiochip0: GPIOs 480-511, parent: platform/5d080000.gpio, 5d080000.gpio:
 gpio-480 (MXM3_279            |sysfs               ) out lo
 gpio-481 (MXM3_277            )
 gpio-482 (MXM3_135            )
 gpio-483 (MXM3_203            )
 gpio-484 (MXM3_201            )
 gpio-485 (MXM3_275            )
 gpio-486 (MXM3_110            )
 gpio-487 (MXM3_120            )
 gpio-488 (MXM3_1/GPIO1        |sysfs               ) out lo
 gpio-489 (MXM3_3/GPIO2        |sysfs               ) out lo
 gpio-490 (MXM3_124            )
 gpio-491 (MXM3_122            )
 gpio-492 (MXM3_5/GPIO3        )
 gpio-493 (MXM3_7/GPIO4        )
 gpio-494 (                    )
 gpio-495 (                    )
 gpio-496 (MXM3_4              )
 gpio-497 (MXM3_211            )
 gpio-498 (MXM3_209            )
 gpio-499 (MXM3_2              )
 gpio-500 (MXM3_136            )
 gpio-501 (MXM3_134            )
 gpio-502 (MXM3_6              )
 gpio-503 (MXM3_8              )
 gpio-504 (MXM3_112            )
 gpio-505 (MXM3_118            )
 gpio-506 (MXM3_114            )
 gpio-507 (MXM3_116            )
 gpio-510 (                    |reset               ) out hi ACTIVE LOW
 gpio-511 (                    |usb3503 connect     ) out hi
root@apalis-imx8-07028928:~#

Can you confirm that this is not intended and will be fixed in future BSP 6 releases or will it stay that way?
Thanks

BR

Patrik

It seems the reason why this is different is due to the different include of the imx8-ss-img.dtsi in the imx8qm.dtsi.

https://git.toradex.com/cgit/linux-toradex.git/commit/arch/arm64/boot/dts/freescale/imx8qm.dtsi?h=toradex_5.15-2.1.x-imx&id=5bb279171afc4a1617fa86f4abc1f9e75fe31db7

On the 5.15-2.1.x branch this was put before the imx8-ss-lsio.dtsi at the top of the includes, while on the 5.4-2.3.x it is included afterwards.

https://git.toradex.com/cgit/linux-toradex.git/tree/arch/arm64/boot/dts/freescale/imx8qm.dtsi?h=toradex_5.4-2.3.x-imx

Please advise how to proceed here.

BR

Patrik

Hi @pajo ,

Sorry for the delayed answer. The team was busy preparing for the Embedded World.

I will try to give an answer to that question as soon as possible.

Best Regards
Kevin

Hi @pajo ,

It seems to be related to the probing order of the gpios.

Have a look at this part of the article:

Hope this helps.

Best Regards
Kevin

Hi Kevin,

in the meantime, I played around a bit with the include order in the imx8qm.dtsi and by swapping it, it also changes the order as a result. This re-establishes the same mapping as in BSP 5 and on first glance, seems to work. However, I’m not sure what other issues this might bring with it, so my question is still the same.

In the current BSP 6 release for the Apalis IMX8, the gpiochip order is not aligning to the article that you linked and I’d like to know how this will be resolved in the future.

Thanks

BR

Patrik

Hello @pajo ,
I have asked internally about this issue, and I will get back to you as soon as we have new information.

Best regards,
Josep

Hello @pajo,
Our team does not consider this behavior to be an issue. The kernel doesn’t guarantee the order of initialization, but we already provide all the pieces for the users to properly implement software using GPIO’s that won’t present this kind of behavior.

This can be done using libgpio. See this example (done on a colibri-imx8x where the SoM edge is called SODIMM rather than MXM3 on apalis-imx8):

root@colibri-imx8x-06748726:~# gpiofind "SODIMM_103"
gpiochip1 25

# Or setting/getting
root@colibri-imx8x-06748726:~# gpioget $(gpiofind "SODIMM_30")  
0
root@colibri-imx8x-06748726:~# gpioset $(gpiofind "SODIMM_30")=1

# list all gpios
gpiofind

The gpio doc also instructs the users to use the pin names to find the desired GPIO’s to be worked on.

The solution with gpiofind is a little bit cleaner so maybe we could update the doc with it and also add a small section on using the lib itself to find this information.

Best regards,
Josep

Alright, thanks. We will try to find a solution that is agnostic to the order then.

BR

Patrik

Just leaving that as hint for others who might also stumble on the same issue.
As an intermediate solution, we just flipped the include order in the imx8qm.dtsi as highlighted below and found no issues so far. The important part is to have imx8-ss-img.dtsi included after imx8-ss-lsio.dtsi to establish the same order as on BSP 5, so other include orders might also work:

From dacba83f8c05e767019fd49534ea03c9b967859f Mon Sep 17 00:00:00 2001
From: Patrik John <patrik.john@u-blox.com>
Date: Mon, 13 Mar 2023 14:29:42 +0000
Subject: [PATCH 1/1] fixed GPIO mapping

---
 arch/arm64/boot/dts/freescale/imx8qm.dtsi | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8qm.dtsi b/arch/arm64/boot/dts/freescale/imx8qm.dtsi
index c3fdee60b9c6..2db5bade360f 100755
--- a/arch/arm64/boot/dts/freescale/imx8qm.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qm.dtsi
@@ -503,7 +503,6 @@ dsp: dsp@556e8000 {
 
 	/* sorted in register address */
 	#include "imx8-ss-audio.dtsi"
-	#include "imx8-ss-img.dtsi"
 	#include "imx8-ss-dma.dtsi"
 	#include "imx8-ss-security.dtsi"
 	#include "imx8-ss-cm41.dtsi"
@@ -511,6 +510,7 @@ dsp: dsp@556e8000 {
 	#include "imx8-ss-ddr.dtsi"
 	#include "imx8-ss-lsio.dtsi"
 	#include "imx8-ss-hsio.dtsi"
+	#include "imx8-ss-img.dtsi"
 	#include "imx8-ss-dc0.dtsi"
 	#include "imx8-ss-dc1.dtsi"
 	#include "imx8-ss-gpu0.dtsi"
@@ -518,13 +518,13 @@ dsp: dsp@556e8000 {
 	#include "imx8-ss-vpu.dtsi"
 };
 
-#include "imx8qm-ss-img.dtsi"
 #include "imx8qm-ss-audio.dtsi"
 #include "imx8qm-ss-dma.dtsi"
 #include "imx8qm-ss-conn.dtsi"
 #include "imx8qm-ss-ddr.dtsi"
 #include "imx8qm-ss-lsio.dtsi"
 #include "imx8qm-ss-hsio.dtsi"
+#include "imx8qm-ss-img.dtsi"
 #include "imx8qm-ss-dc.dtsi"
 #include "imx8qm-ss-lvds.dtsi"
 #include "imx8qm-ss-mipi.dtsi"
-- 
2.30.2

Hello @pajo ,

Thanks for your feedback,

Best regards,
Josep