Template:ArticleMainWriter Template:ArticleProposedVersion
1. Introduction[edit source]
The STMicroelectronics STM32MP1 platform have an OpenGLES hw IP based on the Vivante Gcnano GPU.
You can find more information here on the Vivante GCNANO web pages [1] [2]
2. Features[edit source]
2.1. Supported open standards[edit source]
The Vivante Gcnano GPU is compatible with the following Khronos's open standards 3D graphics [3]:
- OpenGLES 2.0
- OpenGLES 1.1
- OpenVG 1.1
- EGL 1.4
2.2. Vivante Gcnano GPU configuration[edit source]
- Core Clock 264MHz
- Shader Clock 264MHz
- Pixel Rate 264 MPixel/sec
- Triangle Rate 26.4 M tri/sec
- Vertex rate 66 M vtx/sec
- 1 shader core (Vec 4)
- 2.112 GFLOPS shader
3. GPU softwares[edit source]
3.1. Vivante Gcnano GPU userland libraries[edit source]
Source code is NOT available for customers, excepted if customers signed a NDA with Vivante (please contact Vivante if you need these library source codes). The Gcnano libraries (userland) are:
- OpenGLES 1.1 library
- OpenGLES 2.0 library
- EGL 1.4 library
- gbm library
- GAL library
- GLSLC and VSC libraries
- VDK library
3.2. Vivante Gcnano kernel driver[edit source]
Source code is available for all customers in all OpenSTLinux baselines.
To access source code:
devtool modify gcnano-driver-stm32mp
Source code is then downloaded here:
- <your_view>/build*/workspace/sources/gcnano-driver-stm32mp
Refer to OpenEmbedded - devtool to know more about devtool.
3.3. Additional information[edit source]
- STMicroelectronics provides debug Vivante Gcnano libraries according to any baseline version, allowing customers to debug/analyze their applications with the Vivante Tool Kit (VTK). Please have a look to the article How to debug the Gcnano GPU with VTK for more details.
4. Useful links[edit source]
- Vivante website: http://www.vivantecorp.com/
5. EGL[edit source]
5.1. Supported EGL backend[edit source]
From VIVANTE_GAL3D_Unified_Src_drv_6.1.x, Vivante delivery, Vivante Gcnano libraries support both DRM/GBM and Wayland backends.
Refer to EGL backends article for details.
5.2. EGL texture 0-copy[edit source]
Gcnano supports the EGL texture 0-copy extension.
EGL texture 0-copy extension allows an EGL application to share a texture buffer with the GPU by avoiding to copy the texture from application to the GPU.
Refer to EGL texture 0-copy article for more details.
6. Graphic Benchmarks[edit source]
Please refer to the How to test and benchmark OpenGLES article.
7. Debugging[edit source]
Please have a look to following articles: