iMX8QM HDMI LVDS dual screen

Hi All,

Please, looking for some help on the following task.

Asking again here, because this is an addition to my previous question and scaled it down to a more basic state, to get specific help.

iMX8QM HDMI plus Touch screen overlays - Technical Support - Toradex Community

I have downloaded toradex multimedia referance image Apalis-iMX8_Reference-Multimedia-Image-Tezi_6.4.0+build.8 from Toradex Artifactory web page.

Artifacts Toradex

And tested it with default settings for an HDMI screen. It works out of box.
/boot/overlyas.txt file which has overlay driver setting file is as follows:

root@apalis-imx8-14715897:~# cat /boot/overlays.txt
fdt_overlays=apalis-imx8_hdmi_overlay.dtbo apalis-imx8_spi1_spidev_overlay.dtbo apalis-imx8_spi2_spidev_overlay.dtbo

And changed it for a LVDS touch screen:

root@apalis-imx8-14715897:~# cat /boot/overlays.txt
fdt_overlays=apalis-imx8_panel-cap-touch-10inch-lvds_overlay.dtbo

It worked for the LVDS touch screen too.

Then I changed it for a dual screen usage.

root@apalis-imx8-14715897:~# cat /boot/overlays.txt
fdt_overlays=fdt_overlays=apalis-imx8_hdmi_overlay.dtbo apalis-imx8_spi1_spidev_overlay.dtbo
apalis-imx8_spi2_spidev_overlay.dtbo apalis-imx8_panel-cap-touch-10inch-lvds_overlay.dtbo

This time it crashes. This is Toradex multimedia reference image. Could you please help on this.

crash on bootup:

[ OK ] Finished Load/Save Random Seed.
[ OK ] Started Rule-based Manager for Device Events and Files.
[ OK ] Finished Create Volatile Files and Directories.
Starting Network Time Synchronization…
Starting Record System Boot/Shutdown in UTMP…
[ OK ] Finished Record System Boot/Shutdown in UTMP.
[ OK ] Started Network Time Synchronization.
[ OK ] Reached target System Time Set.
[ 7.334769] amphion-vpu-core 2d090000.vpu-core: encoder firmware version : 1.3.3
[ OK ] Created slice Slice /system/systemd-backlight.
Starting Load/Save Screen …ness of backlight:backlight…
[ 7.370172] caam 31400000.crypto: device ID = 0x0a16040000000100 (Era 9)
[ 7.380032] caam 31400000.crypto: job rings = 2, qi = 0
[ 7.380898] amphion-vpu-core 2d080000.vpu-core: decoder firmware version : 1.8.5
[ OK ] Finished Coldplug All udev Devices.
[ OK ] Finished Load/Save Screen …htness of backlight:backlight.
[ 7.463687] imx-drm display-subsystem: bound imx-drm-dpu-bliteng.2 (ops dpu_bliteng_ops)
[ 7.475011] imx-drm display-subsystem: bound imx-drm-dpu-bliteng.5 (ops dpu_bliteng_ops)
Starting Wait for udev To …plete Device Initi[ 7.484528] imx-drm display-subsystem: bound imx-dpu-crtc.0 (ops dpu_crtc_ops)
alization…
[ 7.504549] imx8_media_dev: module is from the staging directory, the quality is unknown, you have been warned.
[ 7.520860] imx-drm display-subsystem: bound imx-dpu-crtc.1 (ops dpu_crtc_ops)
[ 7.530226] imx-drm display-subsystem: bound imx-dpu-crtc.3 (ops dpu_crtc_ops)
[ 7.538303] imx-drm display-subsystem: bound imx-dpu-crtc.4 (ops dpu_crtc_ops)
[ 7.551383] mxc-jpeg 58400000.jpegdec: decoder device registered as /dev/video2 (81,2)
[ 7.561527] mxc-jpeg 58450000.jpegenc: encoder device registered as /dev/video3 (81,3)
[ 7.591032] [drm] Started firmware!
[ 7.603936] CAN device driver interface
[ 7.610487] [drm] HDP FW Version - ver 34559 verlib 20560
[ OK ] Found device /dev/ttyLP1.
[ 7.626849] cdns-mhdp-imx 56268000.hdmi: lane-mapping 0x93
[ 7.634356] [drm] HDCP is disabled
[ 7.640491] imx-drm display-subsystem: bound 56268000.hdmi (ops cdns_mhdp_imx_ops [cdns_mhdp_imx])
[ 7.671414] atmel_mxt_ts 4-004a: supply vdda not found, using dummy regulator
[ 7.682646] hdmi_pxl_clk: failed to set clock parent -16
[ 7.688154] clk: failed to reparent hdmi_pxl_clk to hdmi_av_pll_clk: -16
[ 7.695306] hdmi_pixel_mux_clk: failed to set clock parent -16
[ 7.701346] clk: failed to reparent hdmi_pixel_mux_clk to hdmi_av_pll_clk: -16
[ 7.706928] atmel_mxt_ts 4-004a: supply vdd not found, using dummy regulator
[ 7.708917] hdmi_pixel_link_clk: failed to set clock parent -16
[ 7.721732] clk: failed to reparent hdmi_pixel_link_clk to hdmi_av_pll_clk: -16
[ 7.732954] imx-drm display-subsystem: bound imx-drm-dpu-bliteng.2 (ops dpu_bliteng_ops)
[ 7.741531] imx-drm display-subsystem: bound imx-drm-dpu-bliteng.5 (ops dpu_bliteng_ops)
[ 7.751258] ahci-imx 5f020000.sata: Adding to iommu group 3
[ 7.752800] imx-drm display-subsystem: bound imx-dpu-crtc.0 (ops dpu_crtc_ops)
[ 7.757457] ahci-imx 5f020000.sata: phy impedance ratio is not specified.
[ 7.764579] imx-drm display-subsystem: bound imx-dpu-crtc.1 (ops dpu_crtc_ops)
[ 7.772847] ahci-imx 5f020000.sata: No cache used with register defaults set!
[ 7.781741] imx-drm display-subsystem: bound imx-dpu-crtc.3 (ops dpu_crtc_ops)
[ 7.786988] ahci-imx 5f020000.sata: supply ahci not found, using dummy regulator
[ 7.793133] input: PenMount PM1410 as /devices/platform/bus@5b000000/5b0e0000.usb/ci_hdrc.1/usb3/3-1/3-1.3/3-1.3:1.0/0003:14E1:3508.0001/input/input2
[ 7.794276] imx-drm display-subsystem: bound imx-dpu-crtc.4 (ops dpu_crtc_ops)
[ 7.801089] ahci-imx 5f020000.sata: supply phy not found, using dummy regulator
[ 7.809418] SError Interrupt on CPU1, code 0x00000000bf000002 – SError
[ 7.809436] CPU: 1 PID: 295 Comm: kworker/u12:7 Tainted: G C O 5.15.129-6.4.0+git.67c3153d20ff #1
[ 7.809446] Hardware name: Toradex Apalis iMX8QM V1.1 on Apalis Evaluation Board (DT)
[ 7.809452] Workqueue: events_unbound deferred_probe_work_func
[ 7.809474] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=–)
[ 7.809481] pc : mutex_unlock+0x44/0x70
[ 7.809492] lr : cdns_mhdp_bus_write+0xa4/0x100 [cdns_mhdp_drmcore]
[ 7.809529] sp : ffff80000d08b910
[ 7.809531] x29: ffff80000d08b910 x28: ffff0008013ce550 x27: ffff00080560e300
[ 7.809541] x26: 0000000000000000 x25: ffff8000010b01c0 x24: ffff0008014e6120
[ 7.809550] x23: ffff0008014e4080 x22: 0000000022222211 x21: ffff0008014e4d88
[ 7.809559] x20: 0000000000000004 x19: ffff0008014e4080 x18: 0000000000000000
[ 7.809567] x17: 0000000000000000 x16: 0000000000000000 x15: 00006f5004b85d80
[ 7.809575] x14: 0224439cbc14c200 x13: 0000000000000001 x12: 0000000000000001
[ 7.809584] x11: 0000000000000001 x10: 00000000000009e0 x9 : ffff80000d08b810
[ 7.809592] x8 : ffff000801073500 x7 : ffff00087f706440 x6 : 0000000000000000
[ 7.809601] x5 : 0000000000220000 x4 : 0000000000000000 x3 : ffff0008014e4d88
[ 7.809609] x2 : 0000000000000000 x1 : ffff000801072ac0 x0 : ffff000801072ac0
[ 7.809620] Kernel panic - not syncing: Asynchronous SError Interrupt
[ 7.809624] CPU: 1 PID: 295 Comm: kworker/u12:7 Tainted: G C O 5.15.129-6.4.0+git.67c3153d20ff #1
[ 7.809630] Hardware name: Toradex Apalis iMX8QM V1.1 on Apalis Evaluation Board (DT)
[ 7.809634] Workqueue: events_unbound deferred_probe_work_func
[ 7.809642] Call trace:
[ 7.809644] dump_backtrace+0x0/0x1f0
[ 7.809657] show_stack+0x18/0x40
[ 7.809664] dump_stack_lvl+0x68/0x84
[ 7.809674] dump_stack+0x18/0x34
[ 7.809681] panic+0x18c/0x34c
[ 7.809686] add_taint+0x0/0xc0
[ 7.809697] arm64_serror_panic+0x6c/0x7c
[ 7.809703] do_serror+0x58/0x5c
[ 7.809707] el1h_64_error_handler+0x30/0x50
[ 7.809714] el1h_64_error+0x78/0x7c
[ 7.809720] mutex_unlock+0x44/0x70
[ 7.809727] cdns_mhdp_firmware_write_section+0x74/0xa0 [cdns_mhdp_imx]
[ 7.809742] cdns_mhdp_firmware_init_imx8qm+0xac/0x1c0 [cdns_mhdp_imx]
[ 7.809753] __cdns_hdmi_probe+0x174/0x37c [cdns_mhdp_drmcore]
[ 7.809778] cdns_hdmi_bind+0x28/0x90 [cdns_mhdp_drmcore]
[ 7.809804] cdns_mhdp_imx_bind+0xe4/0x170 [cdns_mhdp_imx]
[ 7.809815] component_bind_all+0x124/0x284
[ 7.809823] imx_drm_bind+0x15c/0x210
[ 7.809832] try_to_bring_up_master+0x228/0x314
[ 7.809838] __component_add+0xa0/0x18c
[ 7.809844] component_add+0x14/0x20
[ 7.809851] cdns_mhdp_imx_probe+0x1c/0x30 [cdns_mhdp_imx]
[ 7.809861] platform_probe+0x68/0xe0
[ 7.809869] really_probe+0xbc/0x46c
[ 7.809874] __driver_probe_device+0x104/0x160
[ 7.809880] driver_probe_device+0x40/0x120
[ 7.809886] __device_attach_driver+0xbc/0x160
[ 7.809892] bus_for_each_drv+0x7c/0xdc
[ 7.809901] __device_attach+0xac/0x1f0
[ 7.809907] device_initial_probe+0x14/0x20
[ 7.809913] bus_probe_device+0x98/0xa0
[ 7.809919] deferred_probe_work_func+0x94/0xe4
[ 7.809924] process_one_work+0x1d0/0x374
[ 7.809932] worker_thread+0x13c/0x490
[ 7.809937] kthread+0x150/0x160
[ 7.809948] ret_from_fork+0x10/0x20
[ 7.809957] SMP: stopping secondary CPUs
[ 7.813925] Kernel Offset: disabled
[ 7.813928] CPU features: 0x4,000820b1,20000846
[ 7.813933] Memory Limit: none

Thanks
Ahmet

Also note that, I have used the same approach as the link
Imx.8 Apalis Ixora Dual Screen(HDMI-LVDS) - Technical Support - Toradex Community
But dtbo files are different on the newer release, and using the same way it results a crash in the kernel boot.

Hi @ahmetg !

Please check the message here: iMX8QM HDMI plus Touch screen overlays - #7 by henrique.tx

Please avoid creating duplicated topics.

Closing this one as this is duplicated (iMX8QM HDMI plus Touch screen overlays).

Best regards,