sensor直接连接到应用处理器,并有linuxkernel管理。本文涉及到kernel驱动,sensor HAL以及SensorService。
sensor架构
安卓提供Sensor API和SensorManager,然而没有提供Sensor HAL和sensor驱动。
电源管理和管脚功能设置在设备树中应当设置好,Sensor类用于支持一些新特性。增加了一些sensor新特性,如:NativeSensorManager,,CalibrationManager,虚拟传感器支持,
传感器驱动
内核sensor驱动,包括电源,pin脚,传感器类,通常传感器驱动位于drivers/input/misc/。
传感器的电源
设备树配置
传感器芯片的驱动由sensor的probe驱动设置,mmc3416xpj的配置驱动如下:
vdd-supply:指示给传感器供电的电源器件;pm8916_l17电源管理器vio-supply:IO和I2C需要的数字电源,pm8916_l6是电源管理器
更多设备树定义见:regulator
在操作sensor chip之前需要初始化该芯片,regulator_get,regualator_count_voltages,regulator_set_voltages , regulator_enable ,以及regulator_disable。