高通820(msm8996)camera hal源码分析

之前阅读过高通的camera的v4l2的driver,和video codec的driver,还没有分享出源码架构图。现在首先先分享出camera hal的源码架构图吧,高通的hal可以使用hal1和hal3.

一,在hardware/qcom/camera下是高通的camera的hal层实现。首先是两个头文件,一个是camera 参数,一个是和高通soc相关出厂的类。

高通820(msm8996)camera hal源码分析_第1张图片


二,android采用类似linux的driver架构,实现hal层的一些设备管理。camera_module_t是hardware模型,要被framework层使用。

高通820(msm8996)camera hal源码分析_第2张图片


三,方法中的open实现。

高通820(msm8996)camera hal源码分析_第3张图片


四,每个cam_obj是在open下调用生成的对象,每次调用一个camera,产生一个object。例如前后camera会各生成两个obj。这个obj的ops是mm_camera_ops,提供给上层使用的接口。

高通820(msm8996)camera hal源码分析_第4张图片

五,hardware interface是android上层开启camera要调用的ops接口。这里先说camera hal3.

高通820(msm8996)camera hal源码分析_第5张图片

六,第一个是初始化函数。

高通820(msm8996)camera hal源码分析_第6张图片

另一个函数,configure stream。

高通820(msm8996)camera hal源码分析_第7张图片


你可能感兴趣的:(msm8996)