Pyra and GL4ES


KidPaddle

Very Active Member
Joined
May 14, 2006
Messages
491
Location
Germany
I try work with GL4ES and have no luck.

The module "pvrsrvkm_omap5_sgx544_116" is loaded, no error message in dmseg
[ 7.788732] pvrsrvkm 56000000.gpu: Enabling quirks 00000000 [ 7.811162] [drm] Initialized pvr 1.14.3699939 20110701 for 56000000.gpu on minor 2 [ 14.420333] PVR_K: UM DDK-(3699939) and KM DDK-(3699939) match. [ OK ] [ 4138.549726] PVR_K: UM DDK-(3699939) and KM DDK-(3699939) match. [ OK ]
[ 5.003484] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013). [ 5.010503] [drm] No driver support for vblank timestamp query. [ 5.048946] drm_setup_crtcs_fb: sw_rotations=1 [ 5.053644] drm_setup_crtcs_fb: fbcon_rotate_hint=0 [ 5.065180] [<c07829a4>] (omap_encoder_enable) from [<c072abc4>] (drm_atomic_helper_commit_modeset_enables+0x23c/0x268) [ 5.065190] [<c072abc4>] (drm_atomic_helper_commit_modeset_enables) from [<c078007c>] (omap_atomic_commit_tail+0x48/0xc0) [ 5.065190] [<c072bcdc>] (commit_tail) from [<c072c8e0>] (drm_atomic_helper_commit+0x134/0x158) [ 5.065203] [<c072c8e0>] (drm_atomic_helper_commit) from [<c0759534>] (drm_client_modeset_commit_atomic+0x16c/0x210) [ 5.065215] [<c0759534>] (drm_client_modeset_commit_atomic) from [<c0759630>] (drm_client_modeset_commit_force+0x58/0x184) [ 5.065221] [<c0759630>] (drm_client_modeset_commit_force) from [<c0731024>] (drm_fb_helper_restore_fbdev_mode_unlocked+0x54/0x98) [ 5.065221] [<c0731024>] (drm_fb_helper_restore_fbdev_mode_unlocked) from [<c0731098>] (drm_fb_helper_set_par+0x30/0x5c) [ 5.065221] [<c0731098>] (drm_fb_helper_set_par) from [<c06a4c4c>] (fbcon_init+0x3e0/0x578) [ 5.065276] [<c0698fa4>] (register_framebuffer) from [<c0730b2c>] (__drm_fb_helper_initial_config_and_unlock+0x404/0x5ac) [ 5.065282] [<c0730b2c>] (__drm_fb_helper_initial_config_and_unlock) from [<c0788c00>] (omap_fbdev_init+0x8c/0xc4) [ 6.483373] omapdrm omapdrm.0: fb0: omapdrmdrmfb frame buffer device [ 6.500829] [drm] Initialized omapdrm 1.0.0 20110917 for omapdrm.0 on minor 0 [ 7.525154] drm_setup_crtcs_fb: sw_rotations=1 [ 7.533238] drm_setup_crtcs_fb: fbcon_rotate_hint=0 [ 7.759862] [drm] Initialized etnaviv 1.3.0 20151214 for etnaviv on minor 1 [ 7.811162] [drm] Initialized pvr 1.14.3699939 20110701 for 56000000.gpu on minor 2

so, seems to be fine.

Out starting glxgears is:
LIBGL: Initialising gl4es LIBGL: v1.1.5 built on Feb 4 2021 12:16:30 LIBGL: framebuffer output enabled LIBGL: Using GLES 2.0 backend LIBGL: loaded: libGLESv2.so LIBGL: loaded: libEGL.so LIBGL: Using GLES 2.0 backend LIBGL: Hardware Full NPOT detected and used LIBGL: Extension GL_EXT_blend_minmax detected and used LIBGL: Extension GL_EXT_draw_buffers detected and used LIBGL: FBO are in core, and so used LIBGL: PointSprite are in core, and so used LIBGL: CubeMap are in core, and so used LIBGL: BlendColor is in core, and so used LIBGL: Blend Substract is in core, and so used LIBGL: Blend Function and Equation Separation is in core, and so used LIBGL: Texture Mirrored Repeat is in core, and so used LIBGL: Extension GL_OES_mapbuffer detected LIBGL: Extension GL_OES_element_index_uint detected and used LIBGL: Extension GL_OES_packed_depth_stencil detected and used LIBGL: Extension GL_OES_depth24 detected and used LIBGL: Extension GL_OES_rgb8_rgba8 detected and used LIBGL: Extension GL_EXT_multi_draw_arrays detected LIBGL: Extension GL_EXT_texture_format_BGRA8888 detected and used LIBGL: Extension GL_OES_depth_texture detected and used LIBGL: Extension GL_EXT_texture_rg detected and used LIBGL: Extension GL_OES_texture_float detected and used LIBGL: Extension GL_OES_texture_half_float detected and used LIBGL: Extension GL_OES_fragment_precision_high detected and used LIBGL: Extension GL_EXT_shader_texture_lod detected and used LIBGL: Max vertex attrib: 16 LIBGL: Extension GL_OES_standard_derivatives detected and used LIBGL: Max texture size: 4096 LIBGL: Max Varying Vector: 8 LIBGL: Texture Units: 8/8 (hardware: 8), Max lights: 8, Max planes: 6 LIBGL: Max Color Attachments: 4 / Draw buffers: 4 LIBGL: Hardware vendor is Imagination Technologies LIBGL: EGLImage to Texture2D supported LIBGL: EGLImage to RenderBuffer supported LIBGL: Targeting OpenGL 2.1 LIBGL: NPOT texture handled in hardware LIBGL: Not trying to batch small subsequent glDrawXXXX LIBGL: try to use VBO LIBGL: glXMakeCurrent FBO workaround enabled LIBGL: FBO workaround for using binded texture enabled LIBGL: Force texture for Attachment color0 on FBO LIBGL: Hack to trigger a SwapBuffers when a Full Framebuffer Blit on default FBO is done LIBGL: Current folder is:/media/thomas/93d1c51f-d364-4552-806d-bd9f0bfd93cb/pyra/home/thomas [COLOR=rgb(184, 49, 47)][B]PVR:(Error): WSEGL_CreateWindowDrawable: Couldn't set CRTC: Permission denied [0, ][/B][/COLOR] Running synchronized to the vertical refresh. The framerate should be approximately the same as the monitor refresh rate. 64209 frames in [ISPOILER][/ISPOILER]5.0 seconds = 12841.795 FPS

PVR:(Error): WSEGL_CreateWindowDrawable: Couldn't set CRTC: Permission denied [0, ]

The program starts, but with black blank screen.

Any hint?

Thomas
 
Thanks, i have copied my config from EMV board, thought was equal, but failed.

Now it work, great.
4 Times faster than with MESA Software renderer.

And Extreme Supertux is now much faster, when GL4ES is set before. Good work, that EGL is working.

Many thanks to all who made this possible.

Thomas
 
Last edited:
Everything is pre-installed on the Pyra. You just need a script that configures the environment for GL4ES, I used the following:

# Resources: https://github.com/ptitSeb/gl4es/blob/master/USAGE.md export LIBGL_ES=2 export LIBGL_FB=0 export LIBGL_GL=21 export LD_LIBRARY_PATH="/usr/lib/arm-linux-gnueabihf/gl4es" # texture too big, enable this #LIBGL_SHRINK=10 set [path]/[name of game] #/usr/games/etr

Lines with "#" are comments, not needed

The file should be made executable for ease of use, this can be done on the console with "sudo chmod +x ./[script name]".

If you now execute the script, the game will run with hardware acceleration.

Thomas
 
Last edited:
Oh man, can someone take the plank in front of my head away?

One look at the size and I could have seen it for myself.
So it's enough to put "gl4es /usr/games/etr" on the desktop or adjust the entry in the menu accordingly, or type in console.
 
Last edited:
There's no plank, at least you found the script!

Question for Wally does the pcsx rearmed dbp automatically run with gl4es or do I have to manually add it?
 
Back
Top