Origen: Mali Graphics Allocator does not support 1080p HDMI display
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Linaro Android |
Fix Released
|
Undecided
|
Unassigned | ||
linaro-landing-team-samsung |
Fix Released
|
High
|
Annamalai Lakshmanan |
Bug Description
Description:
==========
Applications crash on Origen with 1080p HDMI display and hardware graphics support. It used to run fine with Software Graphics allocator.
Steps:
==========
Modify gralloc_ump project to set default display to HDMI by opening /dev/fb10 instead of /dev/fb0.
Hardware:
==========
2GB SanDisk SD card
Origen
HDMI out to Dell Monitor.
USB Mouse/Keyboard connected
Software:
==========
https:/
logs:
==========
logcat:
--------- beginning of /dev/log/system
I/ActivityManager( 2187): START {act=android.
W/NetworkManage
D/OpenGLRenderer( 2619): Flushing caches (mode 1)
D/dalvikvm( 2187): GC_CONCURRENT freed 296K, 22% free 8542K/10887K, paused 2ms+2ms
W/System.err( 2404): Removed 2131231186
W/System.err( 2404): Removed 2131231194
D/dalvikvm( 2404): GC_CONCURRENT freed 241K, 5% free 6820K/7175K, paused 2ms+2ms
D/libEGL ( 2404): loaded /system/
D/libEGL ( 2404): loaded /system/
D/libEGL ( 2404): loaded /system/
D/libEGL ( 2404): loaded /system/
D/OpenGLRenderer( 2619): Flushing caches (mode 0)
E/gralloc_ump( 2082): gralloc_
W/GraphicBuffer
E/SurfaceFlinger( 2082): GraphicBufferAl
E/SurfaceTexture( 2082): [com.android.
E/ ( 2404): EGL unable to dequeue buffer in EGLBoolean __egl_platform_
D/AndroidRuntime( 2404): Shutting down VM
W/dalvikvm( 2404): threadid=1: thread exiting with uncaught exception (group=0x40a181f8)
E/AndroidRuntime( 2404): FATAL EXCEPTION: main
E/AndroidRuntime( 2404): java.lang.
E/AndroidRuntime( 2404): at android.
E/AndroidRuntime( 2404): at android.
E/AndroidRuntime( 2404): at android.
E/AndroidRuntime( 2404): at android.
E/AndroidRuntime( 2404): at android.
E/AndroidRuntime( 2404): at android.
E/AndroidRuntime( 2404): at android.
E/AndroidRuntime( 2404): at android.
E/AndroidRuntime( 2404): at java.lang.
E/AndroidRuntime( 2404): at java.lang.
E/AndroidRuntime( 2404): at com.android.
E/AndroidRuntime( 2404): at com.android.
E/AndroidRuntime( 2404): at dalvik.
W/ActivityManager( 2187): Force finishing activity com.android.
W/ActivityManager( 2187): Activity pause timeout for ActivityRecord{
tags: | added: linaro-android origen-staging |
Changed in linaro-landing-team-samsung: | |
status: | Fix Committed → Fix Released |
Changed in linaro-android: | |
status: | New → Fix Released |
=== A snippet of information from Graphics Team ===
Current Android on Origen LEB doesn't support memory sharing between Mali and other devices. It has a long history but if I summarize briefly, Android on Origen LEB will use UMM for allocating and sharing memory in the future by replacing legacy reserved way of Samsung memory solution which isn't upstreamable at all. Meanwhile, UMP (gralloc_ump) was the only solution for Mali to support recent Android releases.
So, the first phase of Android on Origen LEB uses gralloc_ump for Mali which provides 3D acceleration, not support memory sharing with other devices. The second phase of Origen LEB will use UMP on UMM for Mali and UMM for other devices, which is supposed to provide all the memory sharing among all the devices.
Typical way of legacy display data stream for HDMI in Android on Origen was;
Application --> Mali (GPU) --> (FIMC) --> HDMI,
I believe the error happened somewhere at Mali--> FIMC or Mali --> HDMI.
=== END ==