如何在Android系统中添加对新硬件加速器的支持?

时间:2012-05-21 15:20:53

标签: android opengl-es

我的公司开发了一个3D HW加速器,我们已经准备好并在Linux下工作的EGL + OpenGLES1.1库。我需要将这些库移植到Android。我在同一个hw平台上也有一个可用的Android,但它当然是使用自己的基于sw的OpenGLES渲染器(放在frameworks / base / opengles / libagl中并链接为system / libs / egl / libGLES_android.so) 。 首先,我的想法是通过编译我自己的库来替换原始的libagl源代码,但它不是那么简单......我不知道如何继续,所以这里有一些问题:

  1. 我在哪里可以找到关于此级别Android开发的一些文档/规范?
  2. 原始基于SW的渲染器与系统提供的专用曲面紧密配合,可能发生的任何绘制都在该曲面中完成。我无法这样工作 - 我的硬件加速器总是进入预定义的存储区域(具有固定的物理地址和格式),所以我需要找到一种方法(2a)将绘图结果复制到系统提供的表面,或者( 2b)告诉系统创建一个指向我的HW操作区域和格式的表面。由于复制较少,2b会更好。该怎么做以及怎么做?
  3. 我的硬件加速器仅适用于物理地址。我应该在何处以及如何映射输出缓冲区的已知物理地址?
  4. 使用NDK进行此类开发/移植是否可行/可取/有用?
  5. 谢谢,

    Andjelko

0 个答案:

没有答案