The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)


Adaptations/libhybris/gpu

From Mer Wiki
< Adaptations | libhybris(Difference between revisions)
Jump to: navigation, search
(Updated flo status)
 
Line 132: Line 132:
 
** Nexus 7 (WiFi 2013)
 
** Nexus 7 (WiFi 2013)
 
*** '''flo'''
 
*** '''flo'''
**** lipstick works
+
**** Works on enabling QCOM_BSP
**** had to link system's gralloc.default.so to gralloc.msm8960.so
+
**** any application crashes (libhybris @ a2973e5) or hangs up (libhybris @ 3a81ed16d7)
+
  
 
* HiSilicon
 
* HiSilicon

Latest revision as of 08:00, 24 April 2015

A page to track graphics adaptions to various devices

  • Qualcomm
    • MSM8960 - Adreno 225
      • Motorola Photon Q

With EGL_PLATFORM=fbdev seems to run, but only black screen shown

With EGL_PLATFORM=hwcomposer:

linkerlinker.c:1110| ERROR: Library '/system/lib/egl/libGLESv2S3D_adreno200.so' not found
    • MSM8974AC 801 - Adreno 330
      • OnePlus One
All good after adding QCOM_BSP
    • MSM8974 800 - Adreno 330
      • Sony Xperia Z1 Compact

After starting lipstick, the screen turns on (black) for a few secs, then device reboots

systrace

[...]
socket(PF_FILE, SOCK_STREAM, 0)         = 44
connect(44, {sa_family=AF_FILE, path="/dev/socket/property_service"}, 31) = 0
send(44, "\2\0\0\0debug.gralloc.map_fb_memory\0"..., 128, 0) = 128
recv(44, "\2\0\0\0debug.gralloc.map_fb_memory\0"..., 128, 0) = 128
recv(44, "", 128, 0)                    = 0
close(44)                               = 0
open("/dev/ion", O_RDONLY|O_LARGEFILE)  = 44
ioctl(44, 0xc0144900

logcat

--------- beginning of /dev/alog/main
D/libEGL  (  995): loaded /vendor/lib/egl/libEGL_adreno.so
D/libEGL  (  995): loaded /vendor/lib/egl/libGLESv1_CM_adreno.so
D/libEGL  (  995): loaded /vendor/lib/egl/libGLESv2_adreno.so
E/qdutils (  995): Failed to open msm_fb_panel_info node
I/qdhwcomposer(  995): Initializing Qualcomm Hardware Composer
I/qdhwcomposer(  995): MDP version: 500
D/libEGL  ( 3941): loaded /vendor/lib/egl/libEGL_adreno.so
D/libEGL  ( 3941): loaded /vendor/lib/egl/libGLESv1_CM_adreno.so
D/libEGL  ( 3941): loaded /vendor/lib/egl/libGLESv2_adreno.so
E/qdutils ( 3941): Failed to open msm_fb_panel_info node
I/qdhwcomposer( 3941): Initializing Qualcomm Hardware Composer
I/qdhwcomposer( 3941): MDP version: 500
E/cutils-trace( 3941): Error opening trace file: No such file or directory (2)
D/qdhwcomposer( 3941): hwc_blank: Unblanking display: 0
D/qdhwcomposer( 3941): hwc_blank: Done unblanking display: 0
I/Adreno-EGL( 3941): <qeglDrvAPI_eglInitialize:410>: EGL 1.4 QUALCOMM build: AU_LINUX_ANDROID_LNX.LA.3.5.2.2_RB1.04.04.02.087.006_msm8974_LNX.LA.3.5.2.2_RB1__release_AU ()
I/Adreno-EGL( 3941): OpenGL ES Shader Compiler Version: E031.24.00.14
I/Adreno-EGL( 3941): Build Date: 04/29/14 Tue
I/Adreno-EGL( 3941): Local Branch: mybranch3162585
I/Adreno-EGL( 3941): Remote Branch: quic/LNX.LA.3.5.2.2_rb1
I/Adreno-EGL( 3941): Local Patches: NONE
I/Adreno-EGL( 3941): Reconstruct Branch: AU_LINUX_ANDROID_LNX.LA.3.5.2.2_RB1.04.04.02.087.006 +  NOTHING


    • MSM8255 - Adreno 205
      • HTC Desire HD
        • Status (qt5-qmlscene minimer)

Minimer did infact run twice, out of about 20 tries. Ive no explanation for this, the parameters were identical every time!

sh-3.2# EGL_PLATFORM=hwcomposer /usr/lib/qt5/bin/qmlscene -platform hwcomposer main.qml
EGLFS: Screen Info 
 - Physical size: QSizeF(4.29497e+09, 4.29497e+09) 
 - Screen size: QSize(480, 800) 
 - Screen depth: 32 
== hwcomposer module ==
 * Address: 0x43112004
 * Module API Version: 2
 * HAL API Version: 0
 * Identifier: hwcomposer
 * Name: Qualcomm Hardware Composer Module
 * Author: CodeAurora Forum
== hwcomposer module ==
== hwcomposer device ==
 * Version: 1010001 (interpreted as 1010001)
 * Module: 0x43112004
== hwcomposer device ==
QEglScreen 0x18ea640

QEglWindow 0x1932498: 0x191f600 0x0

Segmentation fault
        • Backtrace is useless
QEglWindow 0x67ca8: 0x64600 0x0

[New LWP 1453]

Program received signal SIGSEGV, Segmentation fault.
[Switching to LWP 1453]
0x430f4e54 in ?? ()
(gdb) bt
#0  0x430f4e54 in ?? ()
#1  0x430f4e98 in ?? ()
#2  0x430f4e98 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)


    • APQ8064 - Adreno 320
      • find5
All good after adding QCOM_BSP

(qt5-qmlscene minimer)

EGL_PLATFORM=fbdev /usr/lib/qt5/bin/qmlscene -platform hwcomposer main.qml

^ is running fine, but only solid blue screen on display: https://twitter.com/Nokius/status/493465722446970880

EGL_PLATFORM=hwcomposer /usr/lib/qt5/bin/qmlscene -platform hwcomposer main.qml

Segfaults (full strace https://pastee.org/jsz99 ):

[pid 10851] send(23, "\2\0\0\0debug.egl.swapinterval\0\0\0\0\0\0"..., 128, 0 <unfinished ...>
[pid 10810] <... clock_gettime resumed> {183787, 793935804}) = 0
[pid 10851] <... send resumed> )        = 128
[pid 10810] clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
[pid 10851] recv(23, "\2\0\0\0debug.egl.swapinterval\0\0\0\0\0\0"..., 128, 0) = 128
[pid 10851] recv(23, "", 128, 0)        = 0
[pid 10851] close(23)                   = 0
[pid 10851] ioctl(10, STOP_ARRAY_RO, 0x48cc7a1c) = 0
[pid 10851] --- {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x20} (Segmentation fault) ---
Process 10851 detached
[pid 10840] +++ killed by SIGSEGV +++
[pid 10827] +++ killed by SIGSEGV +++
[pid 10826] +++ killed by SIGSEGV +++
+++ killed by SIGSEGV +++
Segmentation fault
    • Nexus 7 (LTE 2013)
      • deb
        • EGL_PLATFORM=hwcomposer
        • minimer works
        • lipstick starts, no fully functional, apps crash
    • Nexus 7 (WiFi 2013)
      • flo
        • Works on enabling QCOM_BSP
  • HiSilicon
    • K3V2 - Vivante GC4000
      • Ascend P6
        • EGL_PLATFORM=hwcomposer either crashes with segfault or:
I/v_gralloc(19209): using (fd=9)
I/v_gralloc(19209): id           = k3fb0
I/v_gralloc(19209): xres         = 720 px
I/v_gralloc(19209): yres         = 1280 px
I/v_gralloc(19209): xres_virtual = 720 px
I/v_gralloc(19209): yres_virtual = 5120 px
I/v_gralloc(19209): bpp          = 32
I/v_gralloc(19209): r            = 16:8
I/v_gralloc(19209): g            =  8:8
I/v_gralloc(19209): b            =  0:8
I/v_gralloc(19209): width        = 58 mm (315.310333 dpi)
I/v_gralloc(19209): height       = 103 mm (315.650482 dpi)
I/v_gralloc(19209): refresh rate = 64.00 Hz
I/v_gralloc(19209): Framebuffer phys addr = 0x3ee0b000
E/v_hwc   (19209): hwc_device_open(399): Failed to initialize hwcomposer!

strace failing hwcomposer init

on segfault EGL_PLATFORM=hwcomposer:

I/v_gralloc(19569): using (fd=9)
I/v_gralloc(19569): id           = k3fb0
I/v_gralloc(19569): xres         = 720 px
I/v_gralloc(19569): yres         = 1280 px
I/v_gralloc(19569): xres_virtual = 720 px
I/v_gralloc(19569): yres_virtual = 5120 px
I/v_gralloc(19569): bpp          = 32
I/v_gralloc(19569): r            = 16:8
I/v_gralloc(19569): g            =  8:8
I/v_gralloc(19569): b            =  0:8
I/v_gralloc(19569): width        = 58 mm (315.310333 dpi)
I/v_gralloc(19569): height       = 103 mm (315.650482 dpi)
I/v_gralloc(19569): refresh rate = 64.00 Hz
I/v_gralloc(19569): Framebuffer phys addr = 0x3ee0b000
I/v_hwc   (19569): Vivante HWComposer v2.4
I/v_hwc   (19569): Device:               0x435338
I/v_hwc   (19569): Separated 2D:         YES
I/v_hwc   (19569): 2D PE20:              YES
I/v_hwc   (19569): Multi-source blit:    YES
I/v_hwc   (19569): Multi-source blit Ex: NO
I/v_hwc   (19569): OPF/YUV blit/Tiling : YES
I/v_hwc   (19569): Filter stretch      : NO

strace hwcomposer

on segfault EGL_PLATFORM=fbdev:

I/v_gralloc(20271): using (fd=5)
I/v_gralloc(20271): id           = k3fb0
I/v_gralloc(20271): xres         = 720 px
I/v_gralloc(20271): yres         = 1280 px
I/v_gralloc(20271): xres_virtual = 720 px
I/v_gralloc(20271): yres_virtual = 5120 px
I/v_gralloc(20271): bpp          = 32
I/v_gralloc(20271): r            = 16:8
I/v_gralloc(20271): g            =  8:8
I/v_gralloc(20271): b            =  0:8
I/v_gralloc(20271): width        = 58 mm (315.310333 dpi)
I/v_gralloc(20271): height       = 103 mm (315.650482 dpi)
I/v_gralloc(20271): refresh rate = 64.00 Hz
I/v_gralloc(20271): Framebuffer phys addr = 0x3ee0b000
I/v_hwc   (20271): Vivante HWComposer v2.4
I/v_hwc   (20271): Device:               0x16fdb0
I/v_hwc   (20271): Separated 2D:         YES
I/v_hwc   (20271): 2D PE20:              YES
I/v_hwc   (20271): Multi-source blit:    YES
I/v_hwc   (20271): Multi-source blit Ex: NO
I/v_hwc   (20271): OPF/YUV blit/Tiling : YES
I/v_hwc   (20271): Filter stretch      : NO
I/gralloc_overlay(20271): Self allocation gralloc overlay
E/v_gralloc(20271): Unknown format 1074736197
E/gralloc_overlay(20271): gralloc overlay failed to allocate, status=-1
E/v_gralloc(20271): Unknown format 1074736197
E/v_gralloc(20271): failed to allocate, status=-1

strace fbdev

Personal tools