本文希望通过分析台湾的Jollen的mokoid工程代码,和在s5pc100平台上实现过程种遇到的问题,解析AndoridHAL的开发方法。现有HAL架构由PatrickBrady(Google)在2008GoogleI/O演讲中提出的,如下图。Android的HAL是为了保护一些硬件提供商的知识产权而提出的,是为了避开linux的GPL束缚。思路是把控制硬件的动作都放到了AndroidHAL中,而linuxdriver仅仅完成一些简单的数据交互作用,甚至把硬件寄存器空间直接映射到userspa