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?
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.
Aananth C N
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-"
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
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.
Identifier "i.MX Accelerated Framebuffer Device"
Option "fbdev" "/dev/fb0"
Option "vivante_fbdev" "/dev/fb0"
Option "HWcursor" "false"
Option "mode_settings" "false"
Retrieving data ...