Closed Bug 621741 Opened 13 years ago Closed 12 years ago

[OGL] No GL acceleration on T-Mobile G2 (Android)

Categories

(Core :: Graphics, defect)

ARM
Android
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME
Tracking Status
fennec + ---

People

(Reporter: mbrubeck, Unassigned)

References

Details

After I set layers.accelerate-all to "true" on my T-Mobile G2, about:support still says "GPU Accelerated Windows: 0/1"
tracking-fennec: --- → ?
Yes.
During startup I see "I/Gecko   ( 1885): Failed to create EGL config!"
tracking-fennec: ? → 2.0b4+
Summary: No GL acceleration on T-Mobile G2 (Android) → [OGL] No GL acceleration on T-Mobile G2 (Android)
tracking-fennec: 2.0b4+ → 2.0next+
tracking-fennec: 2.0next+ → 6+
tracking-fennec: 6+ → 7+
Have you tried setting the following:
+pref("layers.acceleration.disabled", false);
+pref("layers.acceleration.force-enabled", true);
(In reply to comment #4)
> +pref("layers.acceleration.disabled", false);
> +pref("layers.acceleration.force-enabled", true);

With these prefs set in the latest mozilla-central nightly on T-Mobile G2, about:support says:

Adapter Description: Android T-Mobile G2 HTC vision
WebGL Renderer: Qualcomm -- Adreno 205 -- OpenGL ES 2.0 1309647
GPU Accelerated Windows: 0/1. Blocked for your graphics card because of unresolved driver issues. 

The log says:

I/Gecko   ( 4371): nsWindow::GetLayerManager
D/libEGL  ( 4371): loaded /system/lib/egl/libGLES_android.so
D/libEGL  ( 4371): loaded /system/lib/egl/libEGL_adreno200.so
D/libEGL  ( 4371): loaded /system/lib/egl/libGLESv1_CM_adreno200.so
D/libEGL  ( 4371): loaded /system/lib/egl/libGLESv2_adreno200.so
I/Gecko   ( 4371): Extensions: EGL_KHR_image EGL_KHR_image_base EGL_KHR_image_pixmap EGL_ANDROID_image_native_buffer EGL_ANDROID_swap_rectangle EGL_ANDROID_get_render_buffer  0x45
I/Gecko   ( 4371): Extensions length: 143
I/Gecko   ( 4371): Failed to create EGL config!
D/dalvikvm( 4371): GC_EXTERNAL_ALLOC freed 770 objects / 80280 bytes in 43ms
I/Gecko   ( 4371): nsWindow::GetLayerManager
I/Gecko   ( 4371):  -- creating basic, not accelerated
tracking-fennec: 7+ → +
Will set this issue aside until the major fixes for opengl have been landed on m-c.
Can you give us a list of supported EGL configurations for your phone? I have some time to look into this.

You can use the app 'Quadrant Standard' from the app market. Select 'System information' from the main menu. Under the 'GPU (OpenGL)' heading (far below it) you will find 'Pixel formats (x)'. Nexus S looks a bit like this:
rgba: 5650 z:0 stencil: 0
rgba: 5650 z:16 stencil: 0
etc...
(In reply to Benoit Girard (:BenWa) from comment #7)
> Can you give us a list of supported EGL configurations for your phone?

From Quadrant Standard Edition:

Pixel formats (10):
rgba: 5650 z: 0 stencil: 0
rgba: 5650 z: 16 stencil: 0
rgba: 5650 z: 24 stencil: 8
rgba: 8880 z: 0 stencil: 0
rgba: 8880 z: 16 stencil: 0
rgba: 8888 z: 0 stencil: 0
rgba: 8888 z: 16 stencil: 0
rgba: 8888 z: 24 stencil: 8
rgba: 0008 z: 0 stencil: 0
rgba: 0008 z: 16 stencil: 0
The function is failing because we fail to find a config that meets the following. It has OPENGL_ES2 and also supports 565 (Comment 8). This will need to be looked at with a debugger. Thanks Matt.

LOCAL_EGL_SURFACE_TYPE,    LOCAL_EGL_WINDOW_BIT,
LOCAL_EGL_RENDERABLE_TYPE, LOCAL_EGL_OPENGL_ES2_BIT,
LOCAL_EGL_RED_SIZE,        5,
LOCAL_EGL_GREEN_SIZE,      6,
LOCAL_EGL_BLUE_SIZE,       5,
LOCAL_EGL_ALPHA_SIZE,      0,
LOCAL_EGL_NONE
Blocks: 698673
No longer blocks: opengl-mobile
George is going to see if he can reproduce this.
(In reply to George Wright (:gw280) from comment #11)
> Matt - can you reproduce this with
> http://people.mozilla.org/~gwright/files/fennec-12.0a1.en-US.android-arm.apk

With that build on my G2, I get "GPU Accelerated Windows: 1/1 OpenGL"
OK, seems like this has been fixed then, as that build is just a vanilla build of mozilla-central with one small change I made which is unrelated to this.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.