Hi,
I'm having GLESv2 problems on my OMAP3530 (actually DM3730, but I have to use the drivers that are compatible to OMAP3530) with the PowerVR SGX530 GPU on Slackware 14.0. I have a fairly complex program that emits a GL_OUT_OF_MEMORY error after a call to glDrawElements. As I understand it, the GPU uses the system's main RAM, so this should only happen when I run low on system memory. But I still have plenty of free memory when the error is thrown.
I have written a simple test program that uploads textures and buffers with random data to the GPU and waits for GL to throw the error. When I upload only textures, the error appears when I have nearly no memory left. But when I upload only buffers, it appears when I still have about 250MiB of free memory left. When uploading a lot of textures first, and buffers afterwards, it pops out after exactly the same number of buffer uploads as without the textures, no matter how many textures were uploaded before.
How is that possible? I've asked this in the Imgtec forums, but they said my drivers are outdated and not supported anymore (1.4.14.2514). However, this is the latest version where OMAP3530 is supported, so I have to stick with this.
I have uploaded the source code for my simple test program here, along with an example output it generates:
http://alemariusnexus.mooo.com/glestest/
Is this a driver bug? If so, what causes it, and is there a workaround I can use to access more of the system RAM through GLESv2?
Thanks in advance!