第5讲 Camera KMD驱动V4L2模型之Component框架的运用 第3部分

本讲是Camera KMD ISP子系统专题的第5讲,我们讲解Camera KMD驱动V4L2模型之Component 框架的运用 第3部分,介绍Camera kmd isp子系统中如何使用component顺序初始化。

更多资源:

资源 描述
在线课程 极客笔记在线课程
知识星球 星球名称:深入浅出Android Camera
星球ID: 17296815
Wechat 极客笔记圈

Camera kmd isp子系统中如何使用component顺序初始化

谁是master?谁是component?

谁是master,谁是component

向组件系统注册component

component_add(&pdev->dev, &cam_sync_component_ops);

向组件系统注册component

component_list全局链表空间布局

component_list全局链表空间布局

构建master 设备需要的component_match(match_list)

构建master 设备需要的component_match

构建master 设备需要的component_match

static struct platform_driver *const cam_component_platform_drivers[] = {
/* BASE */
    &cam_sync_driver,
    &cam_smmu_driver,
    &cam_cpas_driver,
    &cam_cdm_intf_driver,
    &cam_hw_cdm_driver,
#ifdef CONFIG_SPECTRA_TFE
    &cam_csid_ppi100_driver,
    &cam_tfe_driver,
    &cam_tfe_csid_driver,

构建master 设备需要的component_match

构建master 设备需要的component_match

CRM master设备注册到component框架

CRM master设备注册到component框架

static const struct component_master_ops cam_req_mgr_component_master_ops = {
    .bind = cam_req_mgr_component_master_bind,
    .unbind = cam_req_mgr_component_master_unbind,
};

aggregate_devices全局链表空间布局

aggregate_devices全局链表空间布局

find_components()接口详解

find_components()接口详解

顺序执行各component的bind()

顺序执行各component的bind

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程