当前位置: 首页 > news >正文

海思SDK的sensor驱动框架

对于海思的SDK之前一直对驱动的框架不清楚,只知道mpp的目录下的一些简单的业务demo,归根结底对这个SDK的框架还是不够了解,研究了一段时间才对该框架有一点认识。SDK是通过Makefile来管理和编译的所以对于Makefile文件需要有一定的理解,再研究就不成问题了。
研究了好几款海思的ISP的SDK发现管理架构还是有一定区别,HI3518ev200、HI3516dv300、HI3559av100的结构大致相同,有部分差异。
关于sensor驱动的框架:
涉及到的驱动有外设接口的驱动,比如i2c,spi,mipi等的驱动,还有具体某种sensor的驱动,比如ov9712、imx335等的驱动;
关于想要新增一款驱动的话需要关注的重点在目录:Hi3518E_SDK_V1.0.4.0\package\mpp\mpp\component\isp
最核心的部分就是:Hi3518E_SDK_V1.0.4.0\package\mpp\mpp\component\isp\sensor\omnivision_ov9712
具体sensor的驱动实现,已经定义好了固定接口

typedef struct hiISP_SNS_OBJ_S {HI_S32 (*pfnRegisterCallback)(VI_PIPE ViPipe, ALG_LIB_S *pstAeLib, ALG_LIB_S *pstAwbLib);HI_S32 (*pfnUnRegisterCallback)(VI_PIPE ViPipe, ALG_LIB_S *pstAeLib, ALG_LIB_S *pstAwbLib);HI_S32 (*pfnSetBusInfo)(VI_PIPE ViPipe, ISP_SNS_COMMBUS_U unSNSBusInfo);HI_S32 (*pfnSetBusExInfo)(VI_PIPE ViPipe, ISP_SNS_BUS_EX_S *pstSerdesInfo);HI_VOID (*pfnStandby)(VI_PIPE ViPipe);HI_VOID (*pfnRestart)(VI_PIPE ViPipe);HI_VOID (*pfnMirrorFlip)(VI_PIPE ViPipe, ISP_SNS_MIRRORFLIP_TYPE_E eSnsMirrorFlip);HI_S32 (*pfnWriteReg)(VI_PIPE ViPipe, HI_U32 s32Addr, HI_U32 s32Data);HI_S32 (*pfnReadReg)(VI_PIPE ViPipe, HI_U32 s32Addr);HI_S32 (*pfnSetInit)(VI_PIPE ViPipe, ISP_INIT_ATTR_S *pstInitAttr);
} ISP_SNS_OBJ_S;

需要的是参考Hi3518E_SDK_V1.0.4.0\package\mpp\mpp\component\isp\sensor\下的某一款驱动,提供好相应的接口,应该还有其他需要修改的,还没研究透彻
在这里插入图片描述
提供好后再Hi3518E_SDK_V1.0.4.0\package\mpp\mpp\component\isp目录下执行make即可生成相关的.so和.a驱动文件,并且会复制到mpp的目录下更新相关的lib和ko目录
在这里插入图片描述
具体的实现过程还待研究,需要实践具体移植一遍新增一款sensor才能吃透。
重点还是需要理清楚是如何通过Makefile来管理的,需要读懂Makefile文件,驱动的实现就要去研究mpp/sample下的API调用过程了。

相关文章:

  • Linux423 删除用户
  • 第六章:Multi-Backend Configuration
  • 【Redis】redis主从哨兵
  • 测试基础笔记第十天
  • cgdb的基础使用教程
  • 夏季跑步注意
  • 数据库--页(page)
  • UniOcc:自动驾驶占用预测和预报的统一基准
  • CPP_类和对象
  • 智能外呼系统的技术演进与多场景落地实践
  • 【k8s】LVS/IPVS的三种模式:NAT、DR、TUN
  • NOIP2009提高组.Hankson的趣味题
  • Spring JDBC 的开发步骤(非注解方式)
  • SpringBoot入门实战(第七篇:项目接口-商品管理)
  • Ubuntu启动SMB(Samba)服务步骤
  • pytest心得体会
  • vue2+Vant 定制主题
  • 第二章:ForgeAgent Core
  • 极狐GitLab 的合并请求部件能干什么?
  • 【C语言】C语言中的字符函数和字符串函数全解析
  • 嫦娥五号《月球样品借用协议》签约,2025中国航天公益形象大使公布
  • 央行副行长:上海国际金融中心建设是我国参与国际金融竞争的核心载体
  • 浦江观察|3.6亿元消费券,为上海餐饮业带来了什么?
  • 一季度提高两只医药基金股票仓位,中欧基金葛兰加仓科伦药业、百利天恒
  • 云南城投去年营收约19.29亿元,亏损4945万元
  • 为什么要读书?——北京地铁春季书单(2025)