Corrupted display after screen restart on GPU accelerated Xorg

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Corrupted display after screen restart on GPU accelerated Xorg

556 Views
adrienbruant
Contributor I

Hi all,

I'm porting a graphical application to a custom SBC, based on imx6d and I'm experiencing difficulties with Xorg/GPU integration. With one particular display model (XENARC 700CSH), the display becomes corrupted and distorded (cf. attached picture). The display works fine with any other HDMI source and the board works fine with any other HDMI screen.

The problem appears when the screen is turned off, then on. Interestingly enough, it doesn't happen when the HDMI cable is unplugged/replugged.

Since the captured screen was dumped directly from the frame buffer with fbgrab, I think it's safe to rule out any line problem and assume the problem appears higher up in the stack.

I've activated the Vivante GPU, and I'm using Xorg in DRM mode.

MCU: imx6d
Linux Version: 4.1.15-1.0.0_ga
Xorg Server version: 1.18.4Xorg Driver: xdriver_xf86-video-imx-viv 5.0.11.p8.6Vivante kernel module: 5.0.11p8.6Vivante binaries: 5.0.11p8.6

I've attached the Xorg log. Restarting the screen doesn't produce any more log.

I've also attached comparative kernel log for the action "turn off, then on" for the problematic XENARC screen and for an HP desktop monitor. At the time, I was focusing on a low level cause, so I turned on DEBUG verbosity for these particular files:

  • driver/video/hdmi.c
  • driver/video/fbdev/mxc/mxc_edid.c
  • driver/video/fbdev/mxc/mxc_hdmi.c
  • driver/video/fbdev/mxc/mxc_dispdrv.c
  • driver/video/fbdev/mxc/mxc_ipuv3_fb.c

I don't know where to go from here. Nothing caught my attention in these logs. Thank you in advance for your suggestions.

Best regards,

Adrien

Labels (3)
0 Kudos
1 Reply

414 Views
igorpadykov
NXP Employee
NXP Employee

Hi Adrien

>The display works fine with any other HDMI source and the board

>works fine with any other HDMI screen. 

issue may be caused by particular SBC & XENARC configuration, one can pay

attention to cable and ground connections between SBC and dispaly, check if there

are parasitic leakage from board when display is turned off.

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos