More etna_viv news
Another update on the Etna 3D driver for Vivante GPU cores, along with screenshots of games that now render successfully :0)
Currently supported GPUs: GC600, GC800, GC860, GC880 (others may be supported but these have been tested). GC2000 is currently not supported because it has multiple pixel pipes (see this irc log for details).
What has been done
- GLES1 (for the most part) and GLES2 support
- Shader compiler, with support for fixed pipeline emulation shaders from GLES1
- Buffer management, 2D and cubemap textures, mipmap generation
- Fallbacks in Mesa for the devices that only supports single vertex buffer or no 32-bit indices, and lowering for TGSI instructions LRP and POW
D2X (Descent 2 rebirth)
What has to be done (in no particular order)
- Bugfixes for remaining corruption issues
- Optimization: mainly a smarter shader compiler, and implement performance features present in the blob driver but currently disabled in etnaviv
- An Xorg EXA (2D) driver
- Interaction with dma buffers and drm (kernel code for interaction between vivante kernel driver and dma buffers is supposed to exist somewhere, at least for Marvell Dove)
- Get stuff merged upstream
Any help is welcome (props to Zear again for the screenshots).