我正在从事一个需要在嵌入式平台上移植Android7.0的项目。我知道移植的关键:实现特定的HW驱动程序和相应的HALs。在处理马里-400 GPU时,我应该移植GPU驱动程序、OpenGL ES libs和统一内存提供程序(UMP),但我只想使用不需要真正的GPU来简化的软件渲染。
我在init.rc中设置了一些属性,这迫使Android加载libGLES_android.so:
setprop ro.kernel.qemu 1 setprop ro.kernel.qemu.gles 0
它起作用了!但系统未能选择合适的EGLconfig,并重新启动表面发射器。日志如下:
I/SurfaceFlinger( 1056): SurfaceFlinger is starting
I/SurfaceFlinger( 1056): SurfaceFlinger's main thread ready to run. Initializing graphics H/W...
D/libEGL ( 1056): Emulator without GPU support detected. Fallback to software renderer.
D/libEGL ( 1056): loaded /system/lib64/egl/libGLES_android.so
W/gralloc ( 1056): page flipping not supported (yres_virtual=1080, requested=2160)
I/gralloc ( 1056): using (fd=11)
I/gralloc ( 1056): id = simple
I/gralloc ( 1056): xres = 1920 px
I/gralloc ( 1056): yres = 1080 px
I/gralloc ( 1056): xres_virtual = 1920 px
I/gralloc ( 1056): yres_virtual = 1080 px
I/gralloc ( 1056): bpp = 32
I/gralloc ( 1056): r = 16:8
I/gralloc ( 1056): g = 8:8
I/gralloc ( 1056): b = 0:8
I/gralloc ( 1056): width = 305 mm (159.568100 dpi)
I/gralloc ( 1056): height = 171 mm (159.895081 dpi)
I/gralloc ( 1056): refresh rate = 60.00 Hz
W/hwcomposer( 1056): hwcomposer module not found
W/SurfaceFlinger( 1056): no suitable EGLConfig found, trying a simpler query
E/SurfaceFlinger( 1056): no suitable EGLConfig found,giving upHwcomposer模块似乎不是必须的。我的问题是:
发布于 2017-07-21 14:48:33
Android不再支持只进行软件渲染;真正的GPU和OpenGL ES实现是一个很难的要求。
https://stackoverflow.com/questions/45236885
复制相似问题