i.MX8MP MIPI CSI2 bandwidth limitation

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

i.MX8MP MIPI CSI2 bandwidth limitation

ソリューションへジャンプ
2,796件の閲覧回数
artsiomstaliaro
Contributor IV

Hi,

Im using LF6.1.1 Yocto code base for my IMX8MPLUS SoC. I am using camera module with 4 lanes MIPI CIS2, 1350Mbps / lane.

With such baud rate - I can't get data. But if I lower it down to 750Mbps - the camera works fine.

HSSettle settings are correct - I tried another settle value for 1350Mbps - it doesn't help.

MIPI_CSI controller reports about ERR_SOT_HS errors. in 750Mbps mode - no errors.

Should I increase input CLK for MIPI PHY or MIPI CSI controller?

Thank you in advance.

 

タグ(2)
0 件の賞賛
返信
1 解決策
2,757件の閲覧回数
joanxie
NXP TechSupport
NXP TechSupport

how about setting hssettle to 29 or 30? and set CLKSETTLECTL to 0 which is depends on what mipi phy version you use, you can try  0 firstly

joanxie_0-1735003940484.png

 

元の投稿で解決策を見る

8 返答(返信)
2,773件の閲覧回数
joanxie
NXP TechSupport
NXP TechSupport

what lane do you set? and how do you get 1350Mbps / lane? by tools? and what HSSETTLE do you set? ERR_SOT_HS error, need to set HSSETTLE to correct it

0 件の賞賛
返信
2,769件の閲覧回数
artsiomstaliaro
Contributor IV

Lane count set to 4.

1350Mbps steam comes from the sensor. Clock measured by an oscilloscope.

HSSETTLE tried 2, 7, 15 - no luck.

 

 

0 件の賞賛
返信
2,758件の閲覧回数
joanxie
NXP TechSupport
NXP TechSupport

how about setting hssettle to 29 or 30? and set CLKSETTLECTL to 0 which is depends on what mipi phy version you use, you can try  0 firstly

joanxie_0-1735003940484.png

 

2,714件の閲覧回数
artsiomstaliaro
Contributor IV

value 0x30 works fine for 1.5Gbps/lane

0 件の賞賛
返信
2,694件の閲覧回数
artsiomstaliaro
Contributor IV

After testing, we found that the video still not stable. 

after adding in device tree:

csis-hs-settle = <0x30>;

Still can't get a valid video.

Only way to make it work is to change the HSSETTLE value during streaming.

Correct sequence during streaming:

0x32E40024 w 0x5000001F
0x32E40024 w 0x3000001F

Do I need to enable RX skew calibration?

0 件の賞賛
返信
2,665件の閲覧回数
joanxie
NXP TechSupport
NXP TechSupport

Only way to make it work is to change the HSSETTLE value during streaming.

> what do you mean? do you mean need to set hssettle in the dts to 0x30,when streaming the video, you need change the hssettle to 0x5 and 0x3? 

 

0 件の賞賛
返信
2,662件の閲覧回数
artsiomstaliaro
Contributor IV
I mean that during video streaming (v4l2-ctl application with /dev/video0)
to get a stable FPS I need to do:
devmem2 0x32E40024 w 0x5000001F
devmem2 0x32E40024 w 0x3000001F
0 件の賞賛
返信
2,610件の閲覧回数
joanxie
NXP TechSupport
NXP TechSupport

when you set 0x32E40024 during video streaming, you need measure what clock you can get, then to check the timing settings, and I still don't know how you get stable video, you set 0x30 in the dts, then set 0x32E40024 to 0x5000001F,  after that, you need set 0x32E40024 to 0x3000001F again? 

0 件の賞賛
返信