bbb+Qt5+eglfs+sgx : anyone know how to avoid tearing and still get a sane framerate?

Hi all:

I currently have a Qt5 app that runs fine with ./app -platform eglfs with WindowSystem=libpvrPVR2D_FRONTWSEGL.so.1 in /etc/powervr.ini except for the tearing to the screen that is visible in horizontal motion.

Switching to WindowSystem=libpvrPVR2D_FLIPWSEGL.so.1 does eliminate the tearing, but also introduces noticable lag in dragging the horizontal list. It also causes the displayed colors to increase and decrease in intensity fairly quickly which the dragging (and the resulting updating of the screen) is occuring.

I’ve also noted that running sgx_flip_test results in FAIL - PVRSRV_ERROR_TOOMANYBUFFERS (full output here: https://gist.github.com/e8a4902e4ae33ef6ed49 )

Based on this, I’ve considered that perhaps the sgx or associated drivers doesn’t have enough ram, so I’ve added cma=64M vram=32M to the kernel command line. Unfortunately, this doesn’t appear to have any affect on the behavior (though the ram amount does look like it shows up in sgx_flip_test's output that lists avaliable memory).

At this point it looks like the problem is (from sgx_flip_test's output) that “MaxSwapChainBuffers:2” needs to be a larger value than ‘2’.

What things affect the max swap chain buffers?
Is there something else causing awful performance with FLIP?

Or am I way off base here?

Some more info:

root@ikabit:~# fbset -i

mode “480x272”
geometry 480 272 480 816 32
timings 0 0 0 0 0 0 0
accel true
rgba 8/16,8/8,8/0,8/24
endmode

Frame buffer device information:
Name :
Address : 0x98100000
Size : 1566720
Type : PACKED PIXELS
Visual : TRUECOLOR
XPanStep : 1
YPanStep : 1
YWrapStep : 0
LineLength : 1920
Accelerator : No

root@ikabit:~# uname -a
Linux ikabit 3.19.8-yocto-standard #1 PREEMPT Wed Jul 1 12:29:13 EDT 2015 armv7l GNU/Linux
root@ikabit:~# cat /proc/pvr/
nodes queue version
root@ikabit:~# cat /proc/pvr/version
Version SGX_DDK_Linux_CustomerTI sgxddk 1.10@2359475 (release) /home/cody/obj/y/tmp/work/beaglebone-poky-linux-gnueabi/omap3-sgx-modules/5.01.01.02-b/Graphics_SDK_5_01_01_02/GFX_Linux_KM
System Version String: SGX revision = 125

Note: I’m running the version of SGX shipped by the meta-ti layer.