首页 > 资讯 >

RK3588-Camera:MIPI-CSI调试之通路解析-环球快资讯

2023-06-11 12:55:59 来源:jf_30051736

一、简介

专栏总目录

本文介绍RK3588平台的Camera:MIPI-CSI调试之通路解析

MIPI联盟,即移动产业处理器接口(Mobile Industry Processor Interface 简称MIPI)联盟。MIPI(移动产业处理器接口)是MIPI联盟发起的为移动应用处理器制定的开放标准和一个规范。


(资料图)

目的是把手机内部的接口如摄像头、显示屏接口、射频/基带接口等标准化,从而减少手机设计的复杂程度和增加设计灵活性。

CSI & DSI

• CSI ( Camera Serial Interface ):摄像头接口

• DSI ( Display Serial Interface ):显示接口

二、 名词解释:

ISP ( Image Signal Processor ): 即图像信号处理模块, 主要作用是对前端图像传感器输出的信号做后期处理,依赖于 ISP 才能在不同的光学条件下都能较好的还原现场细节。VICAP( Video capture ):视频捕获单元

三、RK3588 的camera通路:

多sensor支持:

单路硬件isp最多支持4路复用,isp复用情况支持分辨率如下:2路复用:最大分辨率3840x2160,dts对应配置2路rkisp_vir设备。3路或4路复用:最大分辨率2560x1536,dts对应配置3或4路rkisp_vir设备。硬件支持最多采集7路sensor:6mipi + 1dvp,多sensor软件通路如下:

下图是RK3588 camera连接链路示意图,可以支持7路camera。

四、 链路解析:

图中:mipi camera2---> csi2_dphy1 ---> mipi2_csi2 ---> rkcif_mipi_lvds2--->rkcif_mipi_lvds2_sditf --->rkisp0_vir2

对应节点:imx415 ---> csi2_dphy0 ---> mipi2_csi2 ---> rkcif_mipi_lvds2--->rkcif_mipi_lvds2_sditf --->rkisp0_vir2

链接关系:sensor---> csi2 dphy---->mipi csi host--->vicap

实线链路解析: Camera sensor ---> dphy ---> 通过mipi_csi2模块解析mipi协议---> vicap ( rkcif节点代表vicap )

虚线链路解析:vicap ---> rkcif_mipi_lvds2_sditf ---> isp

每个vicap节点与isp的链接关系,通过对应虚拟出的XXX_sditf来指明链接关系。

五、RK3588硬件通路框图

rk3588支持2个isp硬件,每个isp设备可虚拟出多个虚拟节点,软件上通过回读的方式,依次从ddr读取每一路的图像数据进isp处理。对于多摄方案,建议将数据流平均分配到两个isp上。回读:指数据经过vicap采集到ddr,应用获取到数据后,将buffer地址推送给isp,isp再从ddr获取图像数据。

六、详细解析:

imx415 : Camera sensorcsi2_dphy0 : rk3588支持2个dphy硬件,这里我们称之为dphy0_hw/dphy1_hw ,,两个dphy硬件都可以工作在full mode 和split mode两种模式下。

当使用dphy0_hw:

full mode:节点名称使用csi2_dphy0,最多支持4 lane。当dphy0_hw使用full mode时,链路需要按照csi2_dphy1这条链路来配置,但是节点名称csi2_dphy1需要修改为csi2_dphy0,软件上是通过phy的序号来区分phy使用的模式。split mode:拆分成2个phy使用,分别为csi2_dphy1(使用0/1 lane)、csi2_dphy2(使用2/3 lane),每个phy最多支持2 lane。

当使用dphy1_hw:

full mode:节点名称使用csi2_dphy3,最多支持4 lane。当dphy1_hw使用full mode时,链路需要按照csi2_dphy4这条链路来配置,但是节点名称csi2_dphy4需要修改为csi2_dphy3,软件上是通过phy的序号来区分phy使用的模式。split mode:拆分成2个phy使用,分别为csi2_dphy4(使用0/1 lane)、csi2_dphy5(使用2/3 lane),每个phy最多支持2 lane。

dcphy:rk3588支持两个dcphy,节点名称分别为csi2_dcphy0/csi2_dcphy1。每个dcphy硬件支持RX/TX同时使用,对于camera输入使用的是RX。支持DPHY/CPHY协议复用;需要注意的是同一个dcphy的TX/RX只能同时使用DPHY或同时使用CPHY。其他dcphy参数请查阅rk3588数据手册。

使用上述mipi phy节点,需要把对应的物理节点配置上。(csi2_dcphy0_hw/csi2_dcphy1_hw/csi2_dphy0_hw/csi2_dphy1_hw)

每个mipi phy都需要一个csi2模块来解析mipi协议,节点名称分别为mipi0_csi2~mipi5_csi2。

rk3588所有camera数据都需要通过vicap,再链接到isp。rk3588仅支持一个vicap硬件,这个vicap支持同时输入6路mipi phy,及一路dvp数据,所以我们将vicap分化成rkcif_mipi_lvds~rkcif_mipi_lvds5、rkcif_dvp等7个节点,各个节点的绑定关系需要严格按照框图的节点序号配置。

每个vicap节点与isp的链接关系,通过对应虚拟出的XXX_sditf来指明链接关系。

rk3588支持2个isp硬件,每个isp设备可虚拟出多个虚拟节点,软件上通过回读的方式,依次从ddr读取每一路的图像数据进isp处理。对于多摄方案,建议将数据流平均分配到两个isp上。

直通与回读模式:•直通:指数据经过vicap采集,直接发送给isp处理,不存储到ddr。需要注意的是hdr直通时,只有短帧是真正的直通,长帧需要存在ddr,isp再从ddr读取。

•回读:指数据经过vicap采集到ddr,应用获取到数据后,将buffer地址推送给isp,isp再从ddr获取图像数据。

•在dts配置时,一个isp硬件,如果只配置一个虚拟节点,默认使用直通模式,如果配置了多个虚拟节点默认使用回读模式。

七、单路Camera的dts配置说明:( 以imx415摄像头为例 )

案例场景:这里使用的是csi2_dphy0的单路camera配置:链路配置: imx415 —> csi2_dphy0 —> mipi2_csi2 —> rkcif_mipi_lvds2—>rkcif_mipi_lvds2_sditf —>rkisp0_vir2
&i2c3 {status = "okay";imx415: imx415@1a {status = "okay";compatible = "sony,imx415";reg = < 0x1a >;clocks = < &cru CLK_MIPI_CAMARAOUT_M3 >;clock-names = "xvclk";pinctrl-names = "default";pinctrl-0 = < &mipim0_camera3_clk >;power-domains = < &power RK3588_PD_VI >;pwdn-gpios = < &gpio1 RK_PB0 GPIO_ACTIVE_HIGH >;reset-gpios = < &gpio4 RK_PA0 GPIO_ACTIVE_LOW >;rockchip,camera-module-index = < 0 >;rockchip,camera-module-facing = "back";rockchip,camera-module-name = "CMK-OT2022-PX1";rockchip,camera-module-lens-name = "IR0147-50IRC-8M-F20";port {imx415_out0: endpoint {remote-endpoint = < &mipidphy0_in_ucam0 >;data-lanes = < 1 2 3 4 >;};};};camera_imx219: camera-imx219@10 {status = "disabled";compatible = "sony,imx219";reg = < 0x10 >;clocks = < &clk_cam_24m >;clock-names = "xvclk";rockchip,camera-module-index = < 0 >;rockchip,camera-module-facing = "back";rockchip,camera-module-name = "rpi-camera-v2";rockchip,camera-module-lens-name = "default";port {imx219_out0: endpoint {remote-endpoint = < &mipidphy0_in_ucam1 >;data-lanes = < 1 2 >;};};};};&csi2_dphy0_hw {status = "okay";};&csi2_dphy0 {status = "okay";ports {#address-cells = < 1 >;#size-cells = < 0 >;port@0 {reg = < 0 >;#address-cells = < 1 >;#size-cells = < 0 >;mipidphy0_in_ucam0: endpoint@1 {reg = < 1 >;remote-endpoint = < &imx415_out0 >;data-lanes = < 1 2 3 4 >;};mipidphy0_in_ucam1: endpoint@2 {reg = < 2 >;remote-endpoint = < &imx219_out0 >;data-lanes = < 1 2 >;};};port@1 {reg = < 1 >;#address-cells = < 1 >;#size-cells = < 0 >;csidphy0_out: endpoint@0 {reg = < 0 >;remote-endpoint = < &mipi2_csi2_input >;};};};};&mipi2_csi2 {status = "okay";ports {#address-cells = < 1 >;#size-cells = < 0 >;port@0 {reg = < 0 >;#address-cells = < 1 >;#size-cells = < 0 >;mipi2_csi2_input: endpoint@1 {reg = < 1 >;remote-endpoint = < &csidphy0_out >;};};port@1 {reg = < 1 >;#address-cells = < 1 >;#size-cells = < 0 >;mipi2_csi2_output: endpoint@0 {reg = < 0 >;remote-endpoint = < &cif_mipi2_in0 >;};};};};&rkcif {status = "okay";};&rkcif_mipi_lvds2 {status = "okay";port {cif_mipi2_in0: endpoint {remote-endpoint = < &mipi2_csi2_output >;};};};&rkcif_mipi_lvds2_sditf {status = "okay";port {mipi_lvds2_sditf: endpoint {remote-endpoint = < &isp0_vir0 >;};};};&rkcif_mmu {status = "okay";};&rkisp0 {status = "okay";};&isp0_mmu {status = "okay";};&rkisp0_vir0 {status = "okay";port {#address-cells = < 1 >;#size-cells = < 0 >;isp0_vir0: endpoint@0 {reg = < 0 >;remote-endpoint = < &mipi_lvds2_sditf >;};};};&pinctrl {camera {cam_pwdn_gpio: cam-pwdn-gpio {rockchip,pins = < 1 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up >;};};};

八、 调试技巧

8.1 i2c设备的通用调试命令:查看设备是否挂载到i2c总线下:

i2cdetect -y 3

8.2 摄像命令

Linux系统摄像命令:
gst-launch-1.0 v4l2src device=/dev/video11 ! video/x-raw,format=NV12,width=3840,height=2160, framerate=30/1 ! xvimagesink

Android系统:

Android系统自带相机APP。点击APP,看摄像画面是否正常显示。

8.3 imx415 相关的log信息

dmesg | grep imx415

8.4 查看拓扑结构

media-ctl -d /dev/media0 -p

审核编辑:汤梓红

上一篇:

“作弊秤”刚被查 又上演“过度捆绑”!同安两家水产摊店面临严惩|每日简讯

下一篇:

最后一页

x
推荐阅读

RK3588-Camera:MIPI-CSI调试之通路解析-环球快资讯

“作弊秤”刚被查 又上演“过度捆绑”!同安两家水产摊店面临严惩|每日简讯

通灵学院入口在哪(通灵学院入口)

环球观点:《皮卡堂过家家》_2144皮卡堂过家家

今日快看!为什么这样子周杰伦(为什么这样子)

环球观天下!指南针炒股软件官网下载电脑版_zn

【全球时快讯】高校食堂“鼠头鸭脖事件”背后:10万能拿下一个档口?

长恨歌读后感1000字_长恨歌读后感 天天观点

暗黑4威能类型介绍_每日热门

中国文学书籍大全_文学书籍大全 世界热点评

收藏|最全卧床病人翻身技巧_热点评

北极雪陈慧琳(北极雪)|热点

运动鞋怎么清洗网面污渍(运动鞋怎么清洗)

樊纲:今年5%以上经济增长可以期待 焦点速讯

报道:分钟英语怎么读 分钟

曼城挖角拜仁后防全能神将,7球1助攻堪称带刀后卫,6大豪门都想买他_天天速看

梅西乘私人飞机抵达北京!开启个人第7次中国行

什么时候换挡(怎么换挡最合适?)

突发!蔡英文与台空军通话,疑似"被解放军打断"!俄罗斯重大宣布:在此地部署核武器|全球资讯

科普图解 | 筑牢生态屏障!一图看懂我国防沙治沙新成就

洋葱炒土豆怎么做好吃? 全球快资讯

世界微速讯:有则理惠是好的吗_有则理惠

勾兑白酒执行标准(白酒的执行标准是什么意思)

世界速递!散水模板工程量怎么计算(算混凝土工程量散水怎么计算)

世界热点评!一位付费API工程师如何制造了推特今年第七次崩溃?

青山有幸埋忠骨白铁无辜铸佞臣的意思是什么_青山有幸埋忠骨白铁无辜铸佞臣的意思-全球新视野

诗词里的遗产:龙虎天下绝 千载玉棺探秘 要闻

零度战姬第三季会出吗(零度战姬第三季)

AMD 官网发现 Threadripper 7900X / PRO 7905WX 系列处理器 精选

环球播报:门卫老汉美女学生小说

李小璐身后,那些进入她世界里的人,只不过都是过客而已|环球聚看点

世界快看:二十四节气顺序正确的是(二十四节气顺序)

一个容积为2.5升的塑料壶用它装酒精最多能装多少千克(一个容积为2 5l的塑料瓶用它装水)|微资讯

环球快看点丨昌都宝藏男孩,完成了5400公里的G318骑行

每日快播:多措并举促进应届高校毕业生就业 网络招聘活动忙

世界聚焦:房间面积怎么算平方米公式(房间面积怎么算)

“山海连城——深圳美术家邀请展”文博会上展出 诗意鹏城 美不胜收 观热点

世界视讯!“五彩湘茶”九大品牌进京推介,与合作茶企达成产销对接

“文根”何以“深种”?看文博会如何寻找岭南新坐标-环球快资讯

百度智能云技术交流会:文心一言推理性能10倍提升、Turbo服务性能增长50倍

当前热门:干红葡萄酒兑什么饮料好喝?

高爆率传奇刀刀切割版手游大全 高爆率传奇刀刀切割版推荐

今年端午假期或成近五年最火端午

科普图解 | 筑牢生态屏障!一图看懂我国防沙治沙新成就_焦点速读

天天热资讯!9成产品“赚到钱”!部分债基开始限购

天上的白云真白啊乌青 天上的白云真白啊 环球看热讯

《黑暗荣耀》郑星一将演出古装电影新作《战,乱》,与车胜元、朴正民、姜栋元合作

天天日报丨霍尊前女友涉嫌敲诈勒索案有新进展,已移送检察院

苏州化工医院下午体检吗(苏州化工医院)

丹麦男子10年访遍全球每个国家,不坐飞机,行程36万公里 世界视讯