Android板级支持与硬件相关子系统
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第2章Android系统BSP部分工作

2.1 Android的BSP部分工作概述

Android的BSP最基础的工作是Android最基本系统的运行,主要包括基本Linux系统支持(CPU、内存、定时器)及串口、存储器等基本设备的使能。

Android的BSP部分在用户空间也包括了一些全局方面的工作。例如,针对于某个硬件平台的板级内容的定义、不同于默认的硬件配置、特定的初始化流程、特定的设备节点管理等。

Android的BSP部分的工作主要需要在不同的子系统中实施,根据子系统和实际需求的不同,所需要进行的工作也不同。

对于大部分子系统,需要实现Linux的设备驱动程序和用户空间的硬件抽象层。因为从原则上来说,硬件抽象层是Android通用部分和硬件相关部分的接口,但是作为与硬件相关的部分,又必须具有Linux中的驱动程序才能工作。传感器部分、音频部分、视频输出部分、摄像头部分、电话部分等都属于此种情况。

也有一些子系统在用户空间的硬件抽象层或适配层已经是标准化的,在不同的系统中无须重新实现。对于这种子系统,只需要实现Linux内核中的驱动程序即可。输入部分、无线局域网部分、蓝牙部分、振动器部分等都属于此种情况。对于有标准的硬件抽象层的系统,有时也需要做一些配置工作。