HDMI In frequently reset

System: armbian jammy gnome
Kernel: SDK kernel rkr3.6 from https://github.com/armbian/linux-rockchip/tree/rockchip-5.10/
I 'm using a HDMI2microHDMI cable to connect my rock3a and rock5b.
Here is the log when plug in the cable:

[  262.714334] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  262.714350] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  262.737620] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  263.018991] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p60.07 (1648x750)
[  263.229555] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  268.822504] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  268.822522] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  268.845785] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  269.136007] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p59.92 (1652x750)
[  269.309747] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  270.049206] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  270.049223] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  270.072554] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  270.323110] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  270.352821] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p59.92 (1652x750)
[  271.222569] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  271.222584] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  271.245845] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  271.336477] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  271.536057] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p60.06 (1648x750)
[  288.663068] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  288.663083] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  288.686330] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  288.969907] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p60.06 (1648x750)
[  289.577040] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  290.796529] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  290.796546] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  290.819808] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  291.103391] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p59.92 (1652x750)
[  291.603773] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  308.690402] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  308.690420] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  308.713688] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  308.830978] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  309.005014] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p60.06 (1648x750)
[  336.344581] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  336.344598] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  336.360103] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:2!
[  336.640368] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p59.92 (1652x750)
[  337.205205] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio

After running GST_VIDEO_CONVERT_USE_RGA=1 gst-launch-1.0 -e v4l2src device=/dev/video0 ! videoconvert ! waylandsink, there come errors:

[  420.056086] fdee0000.hdmirx-controller: Err, timing is invalid
[  420.907081] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  420.907097] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  420.930359] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  421.211731] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p59.92 (1652x750)
[  421.211834] fdee0000.hdmirx-controller: stream start stopping
[  421.264379] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  421.264394] fdee0000.hdmirx-controller: stream stopping finished
[  421.272363] fdee0000.hdmirx-controller: Err, timing is invalid
[  421.314335] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  422.080465] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  422.080481] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  422.103742] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  422.327702] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  422.494322] fdee0000.hdmirx-controller: stream start stopping
[  422.544425] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  422.544440] fdee0000.hdmirx-controller: stream stopping finished
[  423.413847] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  423.413863] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  423.437133] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  423.727850] fdee0000.hdmirx-controller: stream start stopping
[  423.781156] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  423.781169] fdee0000.hdmirx-controller: stream stopping finished
[  424.354438] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  424.640542] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  424.640558] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  424.663818] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  424.945197] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p59.92 (1652x750)
[  424.945287] fdee0000.hdmirx-controller: stream start stopping
[  424.997847] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  424.997860] fdee0000.hdmirx-controller: stream stopping finished
[  425.367807] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  425.867225] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  425.867239] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  425.890492] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  426.178494] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p60.06 (1648x750)
[  426.178571] fdee0000.hdmirx-controller: stream start stopping
[  426.231185] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  426.231193] fdee0000.hdmirx-controller: stream stopping finished
[  426.381173] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  427.093929] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  427.093943] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  427.117193] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  427.394543] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  427.411668] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p59.92 (1652x750)
[  427.411725] fdee0000.hdmirx-controller: stream start stopping
[  427.464564] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  427.464572] fdee0000.hdmirx-controller: stream stopping finished
[  428.320673] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  428.320688] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  428.343950] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  428.407910] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  428.627931] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p60.07 (1648x750)
[  428.628027] fdee0000.hdmirx-controller: stream start stopping
[  428.681321] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  428.681336] fdee0000.hdmirx-controller: stream stopping finished
[  428.690192] fdee0000.hdmirx-controller: Err, timing is invalid
[  429.547388] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  429.547402] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  429.570669] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  430.004237] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p59.92 (1652x750)
[  430.004329] fdee0000.hdmirx-controller: stream start stopping
[  430.054698] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  430.054711] fdee0000.hdmirx-controller: stream stopping finished
[  430.434652] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  430.934105] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  430.934119] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  430.957378] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  431.278191] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p60.06 (1648x750)
[  431.278285] fdee0000.hdmirx-controller: stream start stopping
[  431.331469] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  431.331483] fdee0000.hdmirx-controller: stream stopping finished
[  431.448023] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  432.187465] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  432.187480] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  432.202994] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:2!
[  432.461388] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  432.494463] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p59.92 (1652x750)
[  432.494559] fdee0000.hdmirx-controller: stream start stopping
[  432.544847] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  432.544860] fdee0000.hdmirx-controller: stream stopping finished
[  433.414197] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  433.414213] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  433.437490] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  433.474759] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  433.728830] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p60.07 (1648x750)
[  433.728938] fdee0000.hdmirx-controller: stream start stopping
[  433.781588] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  433.781602] fdee0000.hdmirx-controller: stream stopping finished
[  433.790640] fdee0000.hdmirx-controller: Err, timing is invalid
[  434.640876] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  434.640891] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  434.664156] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  434.945522] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p59.92 (1652x750)
[  434.945617] fdee0000.hdmirx-controller: stream start stopping
[  434.998197] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  434.998211] fdee0000.hdmirx-controller: stream stopping finished
[  435.501491] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  435.867611] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  435.867626] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  435.890889] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  436.178913] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p60.07 (1648x750)
[  436.179012] fdee0000.hdmirx-controller: stream start stopping
[  436.231639] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  436.231653] fdee0000.hdmirx-controller: stream stopping finished
[  436.514860] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  437.147656] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  437.147671] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  437.170927] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  437.463354] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p59.92 (1652x750)
[  437.463445] fdee0000.hdmirx-controller: stream start stopping
[  437.514960] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  437.514974] fdee0000.hdmirx-controller: stream stopping finished
[  437.524140] fdee0000.hdmirx-controller: Err, timing is invalid
[  437.531564] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  438.321020] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  438.321034] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  438.344292] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  438.541598] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  438.773294] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p60.06 (1648x750)
[  438.773388] fdee0000.hdmirx-controller: stream start stopping
[  438.825011] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  438.825025] fdee0000.hdmirx-controller: stream stopping finished
[  439.203093] fdee0000.hdmirx-controller: stream start stopping
[  439.255073] fdee0000.hdmirx-controller: hdmirx_stop_streaming wait last irq timeout, return bufs!
[  439.255087] fdee0000.hdmirx-controller: stream stopping finished
[  439.554975] rk_hdmirx fdee0000.hdmirx-controller: audio on
[  439.707719] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[  439.707734] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[  439.730997] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:3!
[  440.057035] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1280x720p60.07 (1648x750)
[  440.568337] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  440.568346] rk_hdmirx fdee0000.hdmirx-controller: audio off

I don’t have this issue on another rk3588 board h88k, which has a HDMI type A HDMI-In port.

Can you disclose which device?
hdmirx_format_change: New format: 1280x720p59.92 (1652x750)

All my tests were with 1920x1080, and no issues.

It’s rock3a running kernel 5.10. I tried kernel 5.10.66 on rock5b and it doesn’t have this issue.

I can test it here, but i don’t have 5.10 running on rock3a, this may take some time for me.
I would suggest you plugin a 1920x1080 monitor and boot Rock 3A with it, unplug and then connect to hdmirx on Rock 5B, just to see if it works.

I followed my suggestion and it works with R5S with kernel 5.10.110 (CLI). No issues.

Kernel 5.10.110 rkr3.6 , X11, xfce4.

[    9.074459] r8125: eth0: link up
[    9.074607] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   50.378025] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[   50.648621] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:35!
[   50.677222] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[   50.939879] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1920x1080p60.00 (2200x1125)
[   51.188243] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[  491.393576] fdee0000.hdmirx-controller: rcv frames
[  506.881747] fdee0000.hdmirx-controller: stream start stopping
[  506.885571] fdee0000.hdmirx-controller: stream stopping finished

Update:

Capturing for about one hour:

[ 1780.503692] rk_hdmirx fdee0000.hdmirx-controller: dma_alloc_coherent of size 6221824 failed
[ 1781.109044] fdee0000.hdmirx-controller: rcv frames
[ 1786.265874] fdee0000.hdmirx-controller: stream start stopping
[ 1786.267726] fdee0000.hdmirx-controller: stream stopping finished
[ 1794.630040] cma: cma_alloc: cma: alloc failed, req-size: 1519 pages, ret: -12
[ 1794.630068] rk_hdmirx fdee0000.hdmirx-controller: dma_alloc_coherent of size 6221824 failed
[ 1795.225698] fdee0000.hdmirx-controller: rcv frames
[ 1824.305911] fdee0000.hdmirx-controller: stream start stopping
[ 1824.309023] fdee0000.hdmirx-controller: stream stopping finished
[ 2324.365643] cma: cma_alloc: cma: alloc failed, req-size: 1519 pages, ret: -12
[ 2324.365668] rk_hdmirx fdee0000.hdmirx-controller: dma_alloc_coherent of size 6221824 failed
[ 2324.958646] fdee0000.hdmirx-controller: rcv frames
[ 2331.637843] fdee0000.hdmirx-controller: stream start stopping
[ 2331.641993] fdee0000.hdmirx-controller: stream stopping finished
[ 3719.419450] rockchip-vop2 fdd90000.vop: [drm:vop2_crtc_atomic_disable] Crtc atomic disable vp0
[ 6921.908340] rockchip-vop2 fdd90000.vop: [drm:vop2_crtc_atomic_enable] Update mode to 1920x1080p60, type: 11(if:800) for vp0 dclk: 148500000
[ 6921.908860] rockchip-hdptx-phy-hdmi fed60000.hdmiphy: hdptx_ropll_cmn_config bus_width:16a8c8 rate:1485000
[ 6921.909168] rockchip-hdptx-phy-hdmi fed60000.hdmiphy: hdptx phy pll locked!
[ 6921.909296] rockchip-vop2 fdd90000.vop: [drm:vop2_crtc_atomic_enable] dclk_out0 div: 0 dclk_core0 div: 2
[ 6921.909316] rockchip-vop2 fdd90000.vop: [drm:vop2_crtc_atomic_enable] set dclk_vop0 to 148500000, get 148500000
[ 6921.929418] dwhdmi-rockchip fde80000.hdmi: final tmdsclk = 148500000
[ 6921.929465] dwhdmi-rockchip fde80000.hdmi: don't use dsc mode
[ 6921.929473] dwhdmi-rockchip fde80000.hdmi: dw hdmi qp use tmds mode
[ 6921.929483] rockchip-hdptx-phy-hdmi fed60000.hdmiphy: bus_width:0x16a8c8,bit_rate:1485000
[ 6921.929694] rockchip-hdptx-phy-hdmi fed60000.hdmiphy: hdptx phy lane locked!
[ 6927.863747] cma: cma_alloc: cma: alloc failed, req-size: 1519 pages, ret: -12
[ 6927.863805] rk_hdmirx fdee0000.hdmirx-controller: dma_alloc_coherent of size 6221824 failed
[ 6928.474628] fdee0000.hdmirx-controller: rcv frames
[ 6976.273748] fdee0000.hdmirx-controller: stream start stopping
[ 6976.274605] fdee0000.hdmirx-controller: stream stopping finished
[ 7132.627747] cma: cma_alloc: cma: alloc failed, req-size: 1519 pages, ret: -12
[ 7132.627790] rk_hdmirx fdee0000.hdmirx-controller: dma_alloc_coherent of size 6221824 failed
[ 7133.224573] fdee0000.hdmirx-controller: rcv frames
[ 7155.622496] fdee0000.hdmirx-controller: stream start stopping
[ 7155.624594] fdee0000.hdmirx-controller: stream stopping finished
[ 7163.258227] cma: cma_alloc: cma: alloc failed, req-size: 1519 pages, ret: -12
[ 7163.258270] rk_hdmirx fdee0000.hdmirx-controller: dma_alloc_coherent of size 6221824 failed
[ 7163.874571] fdee0000.hdmirx-controller: rcv frames

@amazingfate

I’ve set CMA=1280 and hdmirx reserved-memory to 512MB. (Fixed)

I think in your case you should set dpms=off in Rock 3A.

@avaf I think I find the root cause. I have a rtl8822ce wireless card installed and connected to a wifi network. When I disconnect the wifi, the hdmi in will be very stable.

HDMI, USB3.0, and 2.4Ghz WIFI interfere with each other.