getting flicker in display while starting x server

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

getting flicker in display while starting x server

1,875 Views
abdulhussain
Contributor III

Hi all,

While starting x server in imx6 sabreauto based custom board, we are getting flicker in display.

BSP version is v3.0.35-4.1.0 and display in connected through lvds.

can anybody help to resolve this issue?

Thanks,

Hussain

Labels (3)
3 Replies

918 Views
aananthcn
Contributor II

Hi All,

I am part of Hussain's team. Here is some more details regarding the flicker (note: this is not associated with refresh rate or backlight, could be a vivante framebuffer driver issue).

As you all know, /dev/fb0 is configured as framebuffer in Xorg.conf. Before X starts, we play camera on /dev/fb1 with global alpha set to 255. So the expected result is, camera frames play in foreground, while X renders to background. But the problem we face is, while X initializes, it corrupts or draw blank screen on both /dev/fb0 and /dev/fb1, for few frames which appears as if the screen flickers.

We then swapped buffers (i.e., X to render on /dev/fb1 and camera on /dev/fb0), we dont see any flicker while playing camera in this case, but we dont see application graphics at all.

Please help us resolve this issue. Any work arounds or alternate solutions are welcome.

Thanks,

Aananth C N

0 Kudos

918 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Please try to use the latest BSP, 3.10.17.

There is a test application named mxc_ipudev_test.c under the <Yocto_BuildDir>/imxtest-"

version"/test/mxc_ipudev_test directory.

Before running the ipu device test application, you should be able see that the /dev/

mxc_ipu has been created

Run test like:

./mxc_ipudev_test.out -C config_file raw_data_file

./mxc_ipudev_test.out -command_line_options raw_data_file

Please refer to <Yocto_BuildDir>/imx-test-"version"/test/ipudev_config_file for

configure file instruction.  Includes a simple test source code of ipu device overlay which use alpha(global/local)

blending to combine two layers:

NOTE: the overlay width and height must be same as output's. For example, the input is

240x320, output is 1024x768 which using rotation 90 degree, the overlay must be same

as output, said, 1024x768. so check your LVDS or modes xorconf settings

If the problem persist please try to post your log here.

Hope this helps

0 Kudos

918 Views
abdulhussain
Contributor III

Hi,

Thanks for your reply.

We have solved the x11 flicker issue by disabling the mode setting in function imxDisplayGetModes in xserver-xorg-video-imx-viv-3.10.17-1.0.0/EXA/src/vivante_fbdev/imx_display.c file since we are configuring display setting during initial stage of boot, display settings during x11 initialization is not required in our system.

Please find the attached patch, Also required changes in xorg.conf below.

Section "Device"

    Identifier  "i.MX Accelerated Framebuffer Device"

    Driver      "vivante"

    Option      "fbdev"     "/dev/fb0"

    Option      "vivante_fbdev" "/dev/fb0"

    Option      "HWcursor"  "false"

    Option      "mode_settings" "false"

EndSection

Thanks,

Abdul