91精品国产自产在线观看永久_香蕉久久一区二区不卡无毒影院_91视频国产精品_日韩成人高清在线_久久久久久久久久久久久女国产乱 _亚洲欧美日韩国产一区二区三区_99久久精品免费看_亚洲影视九九影院在线观看_久久精品国产亚洲_成人a级免费视频

手機(jī)版 | 網(wǎng)站導(dǎo)航
觀察家網(wǎng) > 專題 >

RK3588-Camera:MIPI-CSI調(diào)試之通路解析 視點(diǎn)

jf_30051736 | 2023-06-11 13:26:38

一、簡介

專欄總目錄

本文介紹RK3588平臺(tái)的Camera:MIPI-CSI調(diào)試之通路解析

MIPI聯(lián)盟,即移動(dòng)產(chǎn)業(yè)處理器接口(Mobile Industry Processor Interface 簡稱MIPI)聯(lián)盟。MIPI(移動(dòng)產(chǎn)業(yè)處理器接口)是MIPI聯(lián)盟發(fā)起的為移動(dòng)應(yīng)用處理器制定的開放標(biāo)準(zhǔn)和一個(gè)規(guī)范。


(資料圖)

目的是把手機(jī)內(nèi)部的接口如攝像頭、顯示屏接口、射頻/基帶接口等標(biāo)準(zhǔn)化,從而減少手機(jī)設(shè)計(jì)的復(fù)雜程度和增加設(shè)計(jì)靈活性。

CSI & DSI

? CSI ( Camera Serial Interface ):攝像頭接口

? DSI ( Display Serial Interface ):顯示接口

二、 名詞解釋:

ISP ( Image Signal Processor ): 即圖像信號處理模塊, 主要作用是對前端圖像傳感器輸出的信號做后期處理,依賴于 ISP 才能在不同的光學(xué)條件下都能較好的還原現(xiàn)場細(xì)節(jié)。VICAP( Video capture ):視頻捕獲單元

三、RK3588 的camera通路:

多sensor支持:

單路硬件isp最多支持4路復(fù)用,isp復(fù)用情況支持分辨率如下:2路復(fù)用:最大分辨率3840x2160,dts對應(yīng)配置2路rkisp_vir設(shè)備。3路或4路復(fù)用:最大分辨率2560x1536,dts對應(yīng)配置3或4路rkisp_vir設(shè)備。硬件支持最多采集7路sensor:6mipi + 1dvp,多sensor軟件通路如下:

下圖是RK3588 camera連接鏈路示意圖,可以支持7路camera。

四、 鏈路解析:

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

對應(yīng)節(jié)點(diǎn):imx415 ---> csi2_dphy0 ---> mipi2_csi2 ---> rkcif_mipi_lvds2--->rkcif_mipi_lvds2_sditf --->rkisp0_vir2

鏈接關(guān)系:sensor---> csi2 dphy---->mipi csi host--->vicap

實(shí)線鏈路解析: Camera sensor ---> dphy ---> 通過mipi_csi2模塊解析mipi協(xié)議---> vicap ( rkcif節(jié)點(diǎn)代表vicap )

虛線鏈路解析:vicap ---> rkcif_mipi_lvds2_sditf ---> isp

每個(gè)vicap節(jié)點(diǎn)與isp的鏈接關(guān)系,通過對應(yīng)虛擬出的XXX_sditf來指明鏈接關(guān)系。

五、RK3588硬件通路框圖

rk3588支持2個(gè)isp硬件,每個(gè)isp設(shè)備可虛擬出多個(gè)虛擬節(jié)點(diǎn),軟件上通過回讀的方式,依次從ddr讀取每一路的圖像數(shù)據(jù)進(jìn)isp處理。對于多攝方案,建議將數(shù)據(jù)流平均分配到兩個(gè)isp上。回讀:指數(shù)據(jù)經(jīng)過vicap采集到ddr,應(yīng)用獲取到數(shù)據(jù)后,將buffer地址推送給isp,isp再從ddr獲取圖像數(shù)據(jù)。

六、詳細(xì)解析:

imx415 : Camera sensorcsi2_dphy0 : rk3588支持2個(gè)dphy硬件,這里我們稱之為dphy0_hw/dphy1_hw ,,兩個(gè)dphy硬件都可以工作在full mode 和split mode兩種模式下。

當(dāng)使用dphy0_hw:

full mode:節(jié)點(diǎn)名稱使用csi2_dphy0,最多支持4 lane。當(dāng)dphy0_hw使用full mode時(shí),鏈路需要按照csi2_dphy1這條鏈路來配置,但是節(jié)點(diǎn)名稱csi2_dphy1需要修改為csi2_dphy0,軟件上是通過phy的序號來區(qū)分phy使用的模式。split mode:拆分成2個(gè)phy使用,分別為csi2_dphy1(使用0/1 lane)、csi2_dphy2(使用2/3 lane),每個(gè)phy最多支持2 lane。

當(dāng)使用dphy1_hw:

full mode:節(jié)點(diǎn)名稱使用csi2_dphy3,最多支持4 lane。當(dāng)dphy1_hw使用full mode時(shí),鏈路需要按照csi2_dphy4這條鏈路來配置,但是節(jié)點(diǎn)名稱csi2_dphy4需要修改為csi2_dphy3,軟件上是通過phy的序號來區(qū)分phy使用的模式。split mode:拆分成2個(gè)phy使用,分別為csi2_dphy4(使用0/1 lane)、csi2_dphy5(使用2/3 lane),每個(gè)phy最多支持2 lane。

dcphy:rk3588支持兩個(gè)dcphy,節(jié)點(diǎn)名稱分別為csi2_dcphy0/csi2_dcphy1。每個(gè)dcphy硬件支持RX/TX同時(shí)使用,對于camera輸入使用的是RX。支持DPHY/CPHY協(xié)議復(fù)用;需要注意的是同一個(gè)dcphy的TX/RX只能同時(shí)使用DPHY或同時(shí)使用CPHY。其他dcphy參數(shù)請查閱rk3588數(shù)據(jù)手冊。

使用上述mipi phy節(jié)點(diǎn),需要把對應(yīng)的物理節(jié)點(diǎn)配置上。(csi2_dcphy0_hw/csi2_dcphy1_hw/csi2_dphy0_hw/csi2_dphy1_hw)

每個(gè)mipi phy都需要一個(gè)csi2模塊來解析mipi協(xié)議,節(jié)點(diǎn)名稱分別為mipi0_csi2~mipi5_csi2。

rk3588所有camera數(shù)據(jù)都需要通過vicap,再鏈接到isp。rk3588僅支持一個(gè)vicap硬件,這個(gè)vicap支持同時(shí)輸入6路mipi phy,及一路dvp數(shù)據(jù),所以我們將vicap分化成rkcif_mipi_lvds~rkcif_mipi_lvds5、rkcif_dvp等7個(gè)節(jié)點(diǎn),各個(gè)節(jié)點(diǎn)的綁定關(guān)系需要嚴(yán)格按照框圖的節(jié)點(diǎn)序號配置。

每個(gè)vicap節(jié)點(diǎn)與isp的鏈接關(guān)系,通過對應(yīng)虛擬出的XXX_sditf來指明鏈接關(guān)系。

rk3588支持2個(gè)isp硬件,每個(gè)isp設(shè)備可虛擬出多個(gè)虛擬節(jié)點(diǎn),軟件上通過回讀的方式,依次從ddr讀取每一路的圖像數(shù)據(jù)進(jìn)isp處理。對于多攝方案,建議將數(shù)據(jù)流平均分配到兩個(gè)isp上。

直通與回讀模式:?直通:指數(shù)據(jù)經(jīng)過vicap采集,直接發(fā)送給isp處理,不存儲(chǔ)到ddr。需要注意的是hdr直通時(shí),只有短幀是真正的直通,長幀需要存在ddr,isp再從ddr讀取。

?回讀:指數(shù)據(jù)經(jīng)過vicap采集到ddr,應(yīng)用獲取到數(shù)據(jù)后,將buffer地址推送給isp,isp再從ddr獲取圖像數(shù)據(jù)。

?在dts配置時(shí),一個(gè)isp硬件,如果只配置一個(gè)虛擬節(jié)點(diǎn),默認(rèn)使用直通模式,如果配置了多個(gè)虛擬節(jié)點(diǎn)默認(rèn)使用回讀模式。

七、單路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 >;};};};

八、 調(diào)試技巧

8.1 i2c設(shè)備的通用調(diào)試命令:查看設(shè)備是否掛載到i2c總線下:

i2cdetect -y 3

8.2 攝像命令

Linux系統(tǒng)攝像命令:
gst-launch-1.0 v4l2src device=/dev/video11 ! video/x-raw,format=NV12,width=3840,height=2160, framerate=30/1 ! xvimagesink

Android系統(tǒng):

Android系統(tǒng)自帶相機(jī)APP。點(diǎn)擊APP,看攝像畫面是否正常顯示。

8.3 imx415 相關(guān)的log信息

dmesg | grep imx415

8.4 查看拓?fù)浣Y(jié)構(gòu)

media-ctl -d /dev/media0 -p

審核編輯:湯梓紅

標(biāo)簽:

  • 標(biāo)簽:中國觀察家網(wǎng),商業(yè)門戶網(wǎng)站,新聞,專題,財(cái)經(jīng),新媒體,焦點(diǎn),排行,教育,熱點(diǎn),行業(yè),消費(fèi),互聯(lián)網(wǎng),科技,國際,文化,時(shí)事,社會(huì),國內(nèi),健康,產(chǎn)業(yè)資訊,房產(chǎn),體育。

相關(guān)推薦

91精品国产自产在线观看永久_香蕉久久一区二区不卡无毒影院_91视频国产精品_日韩成人高清在线_久久久久久久久久久久久女国产乱 _亚洲欧美日韩国产一区二区三区_99久久精品免费看_亚洲影视九九影院在线观看_久久精品国产亚洲_成人a级免费视频
99re亚洲国产精品| 成人午夜av影视| 亚洲成人动漫av| 欧美日韩极品在线观看一区| 国产精品福利一区| 97国产精品videossex| 国产精品久久久爽爽爽麻豆色哟哟| 天堂在线亚洲视频| 国产激情91久久精品导航| 激情小说欧美图片| 欧美性色aⅴ视频一区日韩精品| 国产女人aaa级久久久级| 成人av网站在线观看| 26uuu精品一区二区三区四区在线| 国产一区二区免费视频| 国产精品资源站在线| 蜜臀av性久久久久蜜臀aⅴ| 国产精品99久久久久| 一区二区三区精品在线观看| 国产凹凸在线观看一区二区| 三级久久三级久久久| 亚洲成人动漫av| 亚洲视频免费在线| 精品国产免费一区二区三区四区 | 色婷婷av一区二区| 日韩欧美在线1卡| 欧美自拍丝袜亚洲| 一区二区三区免费网站| 国产精品欧美经典| 成人精品鲁一区一区二区| 欧美激情一区二区三区蜜桃视频| 日本不卡不码高清免费观看| 国产精品白丝jk白祙喷水网站| 精品国产一区久久| 极品少妇一区二区三区精品视频| 久久精品国产一区二区| 精品一区二区成人精品| 一区二区三区免费| 日韩免费高清电影| 午夜在线成人av| 欧美精品日韩一本| 韩国欧美一区二区| 91精品婷婷国产综合久久性色| 亚洲国产视频直播| 欧美性感一类影片在线播放| 精品视频资源站| 欧美电影影音先锋| 精品日产卡一卡二卡麻豆| 久久精品一区二区三区四区| 国产精品无人区| 精品成人一区二区| 精品少妇一区二区三区日产乱码 | 欧美丰满少妇xxxbbb| 久久色中文字幕| 欧美一区二区久久久| 中文字幕国产一区| 一区二区高清在线| 久久激五月天综合精品| 五月天一区二区三区| 91国产福利在线| 国产三级欧美三级日产三级99| 一区二区三区日韩欧美| 亚洲宅男天堂在线观看无病毒| 欧美日韩免费观看一区三区| 欧美国产日产图区| 婷婷综合五月天| 美女网站色91| 亚洲一区二区偷拍精品| 一区二区三区四区av| 中文字幕不卡一区| 国产三级欧美三级| 91亚洲精品久久久蜜桃网站 | 国产日韩精品久久久| 国产精品全国免费观看高清| 日韩国产欧美三级| 成人国产亚洲欧美成人综合网| 欧美精三区欧美精三区| 天使萌一区二区三区免费观看| 五月婷婷激情综合| 99热这里都是精品| 国产精品不卡在线| 日韩国产欧美一区二区三区| 中文字幕第一区综合| 国产在线看一区| 国产精品网站在线观看| 日韩丝袜情趣美女图片| 中文幕一区二区三区久久蜜桃| 色综合久久99| 欧美成人欧美edvon| 久久疯狂做爰流白浆xx| 久久久久高清精品| 一区二区三区欧美| 亚洲精品欧美激情| 国产精品网曝门| 亚洲自拍偷拍欧美| 夜夜嗨av一区二区三区| 91精品国产综合久久久久久| 国产精品成人网| 亚洲色图色小说| 日韩女优制服丝袜电影| 成人高清免费在线播放| 国产精品久久久久一区二区三区| 一本一道波多野结衣一区二区| 国产精品传媒视频| 一区二区国产视频| 成人毛片在线观看| 樱花草国产18久久久久| 国产精品18久久久久久久网站| 欧美日韩二区三区| 性感美女久久精品| 久久色在线视频| 欧美大黄免费观看| 国产精品99久久久久久久vr | 99国产欧美另类久久久精品| 国产亚洲精品福利| 国产乱国产乱300精品| 亚洲国产综合视频在线观看| 欧美乱妇一区二区三区不卡视频| 日韩欧美国产不卡| 精品乱人伦小说| 亚洲精品成a人| 2021久久国产精品不只是精品| 国产精品色眯眯| 亚洲欧洲日韩在线| 欧美岛国在线观看| 久久奇米777| 国产视频亚洲色图| 在线日韩国产精品| 91高清在线观看| 香蕉加勒比综合久久| 久久久久成人黄色影片| 99久久综合精品| 青青青伊人色综合久久| 色噜噜狠狠色综合欧洲selulu| 亚洲三级电影全部在线观看高清| 在线不卡的av| 欧美精品国产精品| 国产精品午夜春色av| 99久久伊人久久99| 日本网站在线观看一区二区三区| 激情亚洲综合在线| 亚洲一区视频在线| 国产成人精品三级| 丝袜国产日韩另类美女| 亚洲欧美在线视频| 午夜伦理一区二区| 欧美中文字幕一二三区视频| 日韩成人伦理电影在线观看| 免费一级欧美片在线观看| 亚洲在线视频网站| 国产精品一区二区久久精品爱涩| 免费观看久久久4p| 欧美日韩黄色影视| 日韩一区二区免费在线电影| 5566中文字幕一区二区电影| 久久精品一区二区三区av| 日韩黄色免费电影| 处破女av一区二区| 欧美伊人久久大香线蕉综合69| 欧美成人在线直播| 亚洲色欲色欲www| 国产精品国产三级国产aⅴ中文 | 粉嫩aⅴ一区二区三区四区| 在线影院国内精品| 一本一道久久a久久精品综合蜜臀| 在线视频你懂得一区二区三区| 国产xxx精品视频大全| 欧美日韩一区高清| 国产精品区一区二区三区| 久久久久99精品一区| 色爱区综合激月婷婷| 91美女片黄在线观看91美女| 99re成人精品视频| 欧美一区二区精美| 欧美一区二区在线视频| 欧美成人aa大片| 精品一区二区三区香蕉蜜桃 | 日本aⅴ亚洲精品中文乱码| 五月综合激情婷婷六月色窝| 日韩一区二区影院| 亚洲成人在线免费| 99精品视频在线观看| 国产精品毛片久久久久久久| 视频一区二区中文字幕| 91麻豆精品国产自产在线观看一区| 欧美mv日韩mv国产网站app| 国产精品高清亚洲| 亚洲国产成人av| 99精品国产99久久久久久白柏 | 久久综合九色欧美综合狠狠| 久久精品久久综合| 欧美美女bb生活片| 99国产欧美另类久久久精品| 人人精品人人爱| 亚洲电影视频在线| 国产精品国产三级国产a| 在线综合+亚洲+欧美中文字幕| 成人一二三区视频| 久久99久久久久| 成人一区二区视频|