2024年11月06日 第29讲 Camera KMD ISP子系统CPAS模块功能介绍 极客笔记
本讲是Camera KMD ISP子系统专题的第29讲,我们讲解Camera KMD ISP子系统之CPAS模块功能介绍。
更多资源:
资源 | 描述 |
---|---|
在线课程 | 极客笔记在线课程 |
知识星球 | 星球名称:深入浅出Android Camera 星球ID: 17296815 |
极客笔记圈 |
CPAS: Camera Peripheral And System,主要负责Camera外围控制相关(带宽投票,硬件版本等等)的一个功能模块,会暴露一个V4L2子设备与用户空间进行通信。
CPAS驱动代码:代码所在目录: drivers/cam_cpas/(https://s.lmcjl.com/camera-kernel.lnx.6.0.r5/xref/drivers/cam_cpas/)
主要功能如下:
各个IP模块的总开关
AHB总线带宽动态投票(省功耗)
AXI总线带宽动态投票(省功耗)
根据usecase不同动态进行QoS改变(省功耗)
CPAS驱动会从cpas_top或camss_top(dts决定)读取当前平台使用的哪个ISP Family,保存在platformVersion中。
Camera IP不管是TFE,OPE,IFE等等,在上电之前都需要调用cam_cpas_start
AP访问CAM IP内部寄存器需要通过AHB总线。为了省功耗默认AHB CLK可能为0,一旦真的用到camera 时再投票打开AHB时钟。
AXI就是数据总线,Camera会根据usecase,动态计算AXI带宽最小需求以节省带宽。
QoS会控制访问AXI总线的优先级,当ISP出现Overflow问题时,如果BW拉满还是没有效果,就可以考虑下QoS的设置了,是否ISP Overflow是因为QoS设置导致抢不过其他模块导致。
本文链接:http://so.lmcjl.com/news/17182/