【Camera KMD ISP SubSystem笔记】CAM SYNC与DRQ①

在android系统中fence用于不同模块需要访问同一块buffer的同步,例如camera和graphic。对于preview buffer, camera是生产者graphic是消费者。

camera需要生产图像数据到preview buffer时需要等待preview buffer的 fence可用。

camera sync是高通camx框架里面用于各个node之间进行buffer同步的一套机制,其利用了v4l2 event机制来实现KMD与UMD通信。

camx fence(chi fence/csl fence)与camera sync驱动的sync object一一对应。

camera sync作用:

  1. sensor 直连到 TFE ,不会经过内存处理

  2. 当上层下request 经过TFE后,TFE为输出port创建一个fence id(通过CSL、syncManager、cam_sync driver创建一个sync object row,返回fence id)

  3. TFE 拿到 fence id后,同时将fence id和buffer送给ISP驱动,ISP填充buffer后,通知row已经完成,这时 cam_sync driver上层一个event给syncManager,

syncManager回调给DRQ,此时说明fence已经ready,DRQ将buffer送给OPE

  1. OPE 同样为输出port创建一个fence id、同3

  2. facebauty为软件NODE 通过ioctrol 通知syncManager已经完成,此时流程全部完成。

相关推荐
程序员-珍2 小时前
报错下载android sdk失败
android·java
齊家治國平天下3 小时前
AAOS 电源管理深度解析:休眠/唤醒/功耗优化
android·车载系统·aaos·aosp·电源管理·休眠唤醒·carpowermanager
Xzaveir3 小时前
企业号码展示不可观测怎么办:状态机、拨测事件与异常回放
android·人工智能
2501_916007473 小时前
iOS和macOS应用程序性能分析和优化工具使用综合指南
android·macos·ios·小程序·uni-app·iphone·webview
黄林晴4 小时前
Nearby Connections 重大变更:不再自动开启 Wi-Fi / 蓝牙,适配指南
android
恋猫de小郭4 小时前
Flutter 全新真 3D 实现,用 flutter_scene 能开发一个「我的世界」
android·前端·flutter
HLC++17 小时前
Linux的进程间通信
android·linux·服务器
爱笑鱼21 小时前
Binder(二):AIDL 生成的 Proxy、Stub 和 Parcel 到底在做什么?
android
爱笑鱼21 小时前
Binder(一):一次方法调用,究竟怎样跨进程执行?
android
壮哥_icon1 天前
【Android 系统开发】使用 BAT 脚本高效自动化管理 /system/priv-app/ 系统应用(安装与卸载)
android·运维·自动化