RV1103与FPGA通过MIPI CSI-2实现视频传输,实现网络推流。
一:图像格式
支持图像格式如下:
0\]: 'NV16' (Y/CbCr 4:2:2) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[1\]: 'NV61' (Y/CrCb 4:2:2) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[2\]: 'NV12' (Y/CbCr 4:2:0) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[3\]: 'NV21' (Y/CrCb 4:2:0) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[4\]: 'YUYV' (YUYV 4:2:2) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[5\]: 'YVYU' (YVYU 4:2:2) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[6\]: 'UYVY' (UYVY 4:2:2) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[7\]: 'VYUY' (VYUY 4:2:2) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[8\]: 'RGB3' (24-bit RGB 8-8-8) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[9\]: 'BGR3' (24-bit BGR 8-8-8) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[10\]: 'RGBP' (16-bit RGB 5-6-5) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[11\]: 'BGRH' (18-bit BGRX 6-6-6-14) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[12\]: 'RGGB' (8-bit Bayer RGRG/GBGB) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[13\]: 'GRBG' (8-bit Bayer GRGR/BGBG) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[14\]: 'GBRG' (8-bit Bayer GBGB/RGRG) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[15\]: 'BA81' (8-bit Bayer BGBG/GRGR) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[16\]: 'RG10' (10-bit Bayer RGRG/GBGB) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[17\]: 'BA10' (10-bit Bayer GRGR/BGBG) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[18\]: 'GB10' (10-bit Bayer GBGB/RGRG) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[19\]: 'BG10' (10-bit Bayer BGBG/GRGR) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[20\]: 'RG12' (12-bit Bayer RGRG/GBGB) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[21\]: 'BA12' (12-bit Bayer GRGR/BGBG) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[22\]: 'GB12' (12-bit Bayer GBGB/RGRG) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[23\]: 'BG12' (12-bit Bayer BGBG/GRGR) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[24\]: 'BYR2' (16-bit Bayer BGBG/GRGR) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[25\]: 'GB16' (16-bit Bayer GBGB/RGRG) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[26\]: 'GR16' (16-bit Bayer GRGR/BGBG) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[27\]: 'RG16' (16-bit Bayer RGRG/GBGB) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[28\]: 'Y16 ' (16-bit Greyscale) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[29\]: 'GREY' (8-bit Greyscale) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[30\]: 'EBD8' (Embedded data 8-bit) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[31\]: 'SPD6' (Shield pix data 16-bit) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[32\]: 'Y12 ' (12-bit Greyscale) Size: Stepwise 64x64 - 2304x1296 with step 8/8 \[33\]: 'Y10 ' (10-bit Greyscale) Size: Stepwise 64x64 - 2304x1296 with step 8/8 **二:DTS配置** 配置DTS: \&csi2_dphy_hw { status = "okay"; }; \&csi2_dphy0 { status = "okay"; ports { #address-cells = \<1\>; #size-cells = \<0\>; port@0 { reg = \<0\>; #address-cells = \<1\>; #size-cells = \<0\>; csi_dphy_input0: endpoint@0 { reg = \<0\>; remote-endpoint = \<\&sc3336_out\>; data-lanes = \<1 2\>; }; csi_dphy_input1: endpoint@1 { reg = \<1\>; remote-endpoint = \<\&sc4336_out\>; data-lanes = \<1 2\>; }; csi_dphy_input2: endpoint@2 { reg = \<2\>; remote-endpoint = \<\&sc530ai_out\>; data-lanes = \<1 2\>; }; }; port@1 { reg = \<1\>; #address-cells = \<1\>; #size-cells = \<0\>; csi_dphy_output: endpoint@0 { reg = \<0\>; remote-endpoint = \<\&mipi_csi2_input\>; }; }; }; }; \&i2c4 { status = "okay"; clock-frequency = \<400000\>; pinctrl-names = "default"; pinctrl-0 = \<\&i2c4m2_xfer\>; sc3336: sc3336@30 { compatible = "smartsens,sc3336"; status = "okay"; reg = \<0x30\>; clocks = \<\&cru MCLK_REF_MIPI0\>; clock-names = "xvclk"; pwdn-gpios = \<\&gpio3 RK_PC5 GPIO_ACTIVE_HIGH\>; pinctrl-names = "default"; pinctrl-0 = \<\&mipi_refclk_out0\>; rockchip,camera-module-index = \<0\>; rockchip,camera-module-facing = "back"; rockchip,camera-module-name = "CMK-OT2119-PC1"; rockchip,camera-module-lens-name = "30IRC-F16"; port { sc3336_out: endpoint { remote-endpoint = \<\&csi_dphy_input0\>; data-lanes = \<1 2\>; }; }; }; sc4336: sc4336@30 { compatible = "smartsens,sc4336"; status = "okay"; reg = \<0x30\>; clocks = \<\&cru MCLK_REF_MIPI0\>; clock-names = "xvclk"; pwdn-gpios = \<\&gpio3 RK_PC5 GPIO_ACTIVE_HIGH\>; pinctrl-names = "default"; pinctrl-0 = \<\&mipi_refclk_out0\>; rockchip,camera-module-index = \<0\>; rockchip,camera-module-facing = "back"; rockchip,camera-module-name = "OT01"; rockchip,camera-module-lens-name = "40IRC_F16"; port { sc4336_out: endpoint { remote-endpoint = \<\&csi_dphy_input1\>; data-lanes = \<1 2\>; }; }; }; sc530ai: sc530ai@30 { compatible = "smartsens,sc530ai"; status = "okay"; reg = \<0x30\>; clocks = \<\&cru MCLK_REF_MIPI0\>; clock-names = "xvclk"; pwdn-gpios = \<\&gpio3 RK_PC5 GPIO_ACTIVE_HIGH\>; pinctrl-names = "default"; pinctrl-0 = \<\&mipi_refclk_out0\>; rockchip,camera-module-index = \<0\>; rockchip,camera-module-facing = "back"; rockchip,camera-module-name = "CMK-OT2115-PC1"; rockchip,camera-module-lens-name = "30IRC-F16"; port { sc530ai_out: endpoint { remote-endpoint = \<\&csi_dphy_input2\>; data-lanes = \<1 2\>; }; }; }; }; \&i2s0_8ch { #sound-dai-cells = \<0\>; status = "okay"; }; \&mipi0_csi2 { status = "okay"; ports { #address-cells = \<1\>; #size-cells = \<0\>; port@0 { reg = \<0\>; #address-cells = \<1\>; #size-cells = \<0\>; mipi_csi2_input: endpoint@1 { reg = \<1\>; remote-endpoint = \<\&csi_dphy_output\>; }; }; port@1 { reg = \<1\>; #address-cells = \<1\>; #size-cells = \<0\>; mipi_csi2_output: endpoint@0 { reg = \<0\>; remote-endpoint = \<\&cif_mipi_in\>; }; }; }; }; \&pwm0 { status = "okay"; }; \&rkcif { status = "okay"; }; \&rkcif_mipi_lvds { status = "okay"; pinctrl-names = "default"; pinctrl-0 = \<\&mipi_pins\>; port { /\* MIPI CSI-2 endpoint \*/ cif_mipi_in: endpoint { remote-endpoint = \<\&mipi_csi2_output\>; }; }; }; \&rkcif_mipi_lvds_sditf { status = "okay"; port { /\* MIPI CSI-2 endpoint \*/ mipi_lvds_sditf: endpoint { remote-endpoint = \<\&isp_in\>; }; }; }; \&rkisp { status = "okay"; }; \&rkisp_vir0 { status = "okay"; port@0 { isp_in: endpoint { remote-endpoint = \<\&mipi_lvds_sditf\>; }; }; }; \&saradc { status = "okay"; vref-supply = \<\&vcc_1v8\>; }; **三:驱动配置** 配置分辨率,数据类型。 static const struct sc3336_mode supported_modes\[\] = { { .width = 2304, .height = 1296, .max_fps = { .numerator = 10000, .denominator = 250000, }, .exp_def = 0x0080, .hts_def = 0x05dc, .vts_def = 0x0654, .bus_fmt = MEDIA_BUS_FMT_SBGGR8_1X8, .reg_list = sc3336_linear_10_2304x1296_25fps_regs, .hdr_mode = NO_HDR, .xvclk_freq = 27000000, .link_freq_idx = 0, .vc\[PAD0\] = V4L2_MBUS_CSI2_CHANNEL_0, }, { .width = 2304, .height = 1296, .max_fps = { .numerator = 10000, .denominator = 300000, }, .exp_def = 0x0080, .hts_def = 0x0578 \* 2, .vts_def = 0x0550, .bus_fmt = MEDIA_BUS_FMT_SBGGR8_1X8, .reg_list = sc3336_linear_10_2304x1296_30fps_regs, .hdr_mode = NO_HDR, .xvclk_freq = 24000000, .link_freq_idx = 1, .vc\[PAD0\] = V4L2_MBUS_CSI2_CHANNEL_0, } }; **四:注册查询** Media controller API version 5.10.110 Media device information ------------------------ driver rkcif model rkcif-mipi-lvds serial bus info hw revision 0x0 driver version 5.10.110 Device topology - entity 1: stream_cif_mipi_id0 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video0 pad0: Sink \<- "rockchip-mipi-csi2":1 \[ENABLED
<- "rockchip-mipi-csi2":2 []
<- "rockchip-mipi-csi2":3 []
<- "rockchip-mipi-csi2":4 []
<- "rockchip-mipi-csi2":5 []
<- "rockchip-mipi-csi2":6 []
<- "rockchip-mipi-csi2":7 []
<- "rockchip-mipi-csi2":8 []
<- "rockchip-mipi-csi2":9 []
<- "rockchip-mipi-csi2":10 []
<- "rockchip-mipi-csi2":11 []
- entity 5: stream_cif_mipi_id1 (1 pad, 11 links)
type Node subtype V4L flags 0
device node name /dev/video1
pad0: Sink
<- "rockchip-mipi-csi2":1 []
<- "rockchip-mipi-csi2":2 [ENABLED]
<- "rockchip-mipi-csi2":3 []
<- "rockchip-mipi-csi2":4 []
<- "rockchip-mipi-csi2":5 []
<- "rockchip-mipi-csi2":6 []
<- "rockchip-mipi-csi2":7 []
<- "rockchip-mipi-csi2":8 []
<- "rockchip-mipi-csi2":9 []
<- "rockchip-mipi-csi2":10 []
<- "rockchip-mipi-csi2":11 []
- entity 9: stream_cif_mipi_id2 (1 pad, 11 links)
type Node subtype V4L flags 0
device node name /dev/video2
pad0: Sink
<- "rockchip-mipi-csi2":1 []
<- "rockchip-mipi-csi2":2 []
<- "rockchip-mipi-csi2":3 [ENABLED]
<- "rockchip-mipi-csi2":4 []
<- "rockchip-mipi-csi2":5 []
<- "rockchip-mipi-csi2":6 []
<- "rockchip-mipi-csi2":7 []
<- "rockchip-mipi-csi2":8 []
<- "rockchip-mipi-csi2":9 []
<- "rockchip-mipi-csi2":10 []
<- "rockchip-mipi-csi2":11 []
- entity 13: stream_cif_mipi_id3 (1 pad, 11 links)
type Node subtype V4L flags 0
device node name /dev/video3
pad0: Sink
<- "rockchip-mipi-csi2":1 []
<- "rockchip-mipi-csi2":2 []
<- "rockchip-mipi-csi2":3 []
<- "rockchip-mipi-csi2":4 [ENABLED]
<- "rockchip-mipi-csi2":5 []
<- "rockchip-mipi-csi2":6 []
<- "rockchip-mipi-csi2":7 []
<- "rockchip-mipi-csi2":8 []
<- "rockchip-mipi-csi2":9 []
<- "rockchip-mipi-csi2":10 []
<- "rockchip-mipi-csi2":11 []
- entity 17: rkcif_scale_ch0 (1 pad, 11 links)
type Node subtype V4L flags 0
device node name /dev/video4
pad0: Sink
<- "rockchip-mipi-csi2":1 []
<- "rockchip-mipi-csi2":2 []
<- "rockchip-mipi-csi2":3 []
<- "rockchip-mipi-csi2":4 []
<- "rockchip-mipi-csi2":5 [ENABLED]
<- "rockchip-mipi-csi2":6 []
<- "rockchip-mipi-csi2":7 []
<- "rockchip-mipi-csi2":8 []
<- "rockchip-mipi-csi2":9 []
<- "rockchip-mipi-csi2":10 []
<- "rockchip-mipi-csi2":11 []
- entity 21: rkcif_scale_ch1 (1 pad, 11 links)
type Node subtype V4L flags 0
device node name /dev/video5
pad0: Sink
<- "rockchip-mipi-csi2":1 []
<- "rockchip-mipi-csi2":2 []
<- "rockchip-mipi-csi2":3 []
<- "rockchip-mipi-csi2":4 []
<- "rockchip-mipi-csi2":5 []
<- "rockchip-mipi-csi2":6 [ENABLED]
<- "rockchip-mipi-csi2":7 []
<- "rockchip-mipi-csi2":8 []
<- "rockchip-mipi-csi2":9 []
<- "rockchip-mipi-csi2":10 []
<- "rockchip-mipi-csi2":11 []
- entity 25: rkcif_scale_ch2 (1 pad, 11 links)
type Node subtype V4L flags 0
device node name /dev/video6
pad0: Sink
<- "rockchip-mipi-csi2":1 []
<- "rockchip-mipi-csi2":2 []
<- "rockchip-mipi-csi2":3 []
<- "rockchip-mipi-csi2":4 []
<- "rockchip-mipi-csi2":5 []
<- "rockchip-mipi-csi2":6 []
<- "rockchip-mipi-csi2":7 [ENABLED]
<- "rockchip-mipi-csi2":8 []
<- "rockchip-mipi-csi2":9 []
<- "rockchip-mipi-csi2":10 []
<- "rockchip-mipi-csi2":11 []
- entity 29: rkcif_scale_ch3 (1 pad, 11 links)
type Node subtype V4L flags 0
device node name /dev/video7
pad0: Sink
<- "rockchip-mipi-csi2":1 []
<- "rockchip-mipi-csi2":2 []
<- "rockchip-mipi-csi2":3 []
<- "rockchip-mipi-csi2":4 []
<- "rockchip-mipi-csi2":5 []
<- "rockchip-mipi-csi2":6 []
<- "rockchip-mipi-csi2":7 []
<- "rockchip-mipi-csi2":8 [ENABLED]
<- "rockchip-mipi-csi2":9 []
<- "rockchip-mipi-csi2":10 []
<- "rockchip-mipi-csi2":11 []
- entity 33: rkcif_tools_id0 (1 pad, 11 links)
type Node subtype V4L flags 0
device node name /dev/video8
pad0: Sink
<- "rockchip-mipi-csi2":1 []
<- "rockchip-mipi-csi2":2 []
<- "rockchip-mipi-csi2":3 []
<- "rockchip-mipi-csi2":4 []
<- "rockchip-mipi-csi2":5 []
<- "rockchip-mipi-csi2":6 []
<- "rockchip-mipi-csi2":7 []
<- "rockchip-mipi-csi2":8 []
<- "rockchip-mipi-csi2":9 [ENABLED]
<- "rockchip-mipi-csi2":10 []
<- "rockchip-mipi-csi2":11 []
- entity 37: rkcif_tools_id1 (1 pad, 11 links)
type Node subtype V4L flags 0
device node name /dev/video9
pad0: Sink
<- "rockchip-mipi-csi2":1 []
<- "rockchip-mipi-csi2":2 []
<- "rockchip-mipi-csi2":3 []
<- "rockchip-mipi-csi2":4 []
<- "rockchip-mipi-csi2":5 []
<- "rockchip-mipi-csi2":6 []
<- "rockchip-mipi-csi2":7 []
<- "rockchip-mipi-csi2":8 []
<- "rockchip-mipi-csi2":9 []
<- "rockchip-mipi-csi2":10 [ENABLED]
<- "rockchip-mipi-csi2":11 []
- entity 41: rkcif_tools_id2 (1 pad, 11 links)
type Node subtype V4L flags 0
device node name /dev/video10
pad0: Sink
<- "rockchip-mipi-csi2":1 []
<- "rockchip-mipi-csi2":2 []
<- "rockchip-mipi-csi2":3 []
<- "rockchip-mipi-csi2":4 []
<- "rockchip-mipi-csi2":5 []
<- "rockchip-mipi-csi2":6 []
<- "rockchip-mipi-csi2":7 []
<- "rockchip-mipi-csi2":8 []
<- "rockchip-mipi-csi2":9 []
<- "rockchip-mipi-csi2":10 []
<- "rockchip-mipi-csi2":11 [ENABLED]
- entity 45: rockchip-mipi-csi2 (12 pads, 122 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev0
pad0: Sink
fmt:SBGGR8_1X8/2304x1296 field:none crop.bounds:(0,0)/2304x1296 crop:(0,0)/2304x1296
<- "rockchip-csi2-dphy0":1 [ENABLED]
pad1: Source
-> "stream_cif_mipi_id0":0 [ENABLED]
-> "stream_cif_mipi_id1":0 []
-> "stream_cif_mipi_id2":0 []
-> "stream_cif_mipi_id3":0 []
-> "rkcif_scale_ch0":0 []
-> "rkcif_scale_ch1":0 []
-> "rkcif_scale_ch2":0 []
-> "rkcif_scale_ch3":0 []
-> "rkcif_tools_id0":0 []
-> "rkcif_tools_id1":0 []
-> "rkcif_tools_id2":0 []
pad2: Source
-> "stream_cif_mipi_id0":0 []
-> "stream_cif_mipi_id1":0 [ENABLED]
-> "stream_cif_mipi_id2":0 []
-> "stream_cif_mipi_id3":0 []
-> "rkcif_scale_ch0":0 []
-> "rkcif_scale_ch1":0 []
-> "rkcif_scale_ch2":0 []
-> "rkcif_scale_ch3":0 []
-> "rkcif_tools_id0":0 []
-> "rkcif_tools_id1":0 []
-> "rkcif_tools_id2":0 []
pad3: Source
-> "stream_cif_mipi_id0":0 []
-> "stream_cif_mipi_id1":0 []
-> "stream_cif_mipi_id2":0 [ENABLED]
-> "stream_cif_mipi_id3":0 []
-> "rkcif_scale_ch0":0 []
-> "rkcif_scale_ch1":0 []
-> "rkcif_scale_ch2":0 []
-> "rkcif_scale_ch3":0 []
-> "rkcif_tools_id0":0 []
-> "rkcif_tools_id1":0 []
-> "rkcif_tools_id2":0 []
pad4: Source
-> "stream_cif_mipi_id0":0 []
-> "stream_cif_mipi_id1":0 []
-> "stream_cif_mipi_id2":0 []
-> "stream_cif_mipi_id3":0 [ENABLED]
-> "rkcif_scale_ch0":0 []
-> "rkcif_scale_ch1":0 []
-> "rkcif_scale_ch2":0 []
-> "rkcif_scale_ch3":0 []
-> "rkcif_tools_id0":0 []
-> "rkcif_tools_id1":0 []
-> "rkcif_tools_id2":0 []
pad5: Source
-> "stream_cif_mipi_id0":0 []
-> "stream_cif_mipi_id1":0 []
-> "stream_cif_mipi_id2":0 []
-> "stream_cif_mipi_id3":0 []
-> "rkcif_scale_ch0":0 [ENABLED]
-> "rkcif_scale_ch1":0 []
-> "rkcif_scale_ch2":0 []
-> "rkcif_scale_ch3":0 []
-> "rkcif_tools_id0":0 []
-> "rkcif_tools_id1":0 []
-> "rkcif_tools_id2":0 []
pad6: Source
-> "stream_cif_mipi_id0":0 []
-> "stream_cif_mipi_id1":0 []
-> "stream_cif_mipi_id2":0 []
-> "stream_cif_mipi_id3":0 []
-> "rkcif_scale_ch0":0 []
-> "rkcif_scale_ch1":0 [ENABLED]
-> "rkcif_scale_ch2":0 []
-> "rkcif_scale_ch3":0 []
-> "rkcif_tools_id0":0 []
-> "rkcif_tools_id1":0 []
-> "rkcif_tools_id2":0 []
pad7: Source
-> "stream_cif_mipi_id0":0 []
-> "stream_cif_mipi_id1":0 []
-> "stream_cif_mipi_id2":0 []
-> "stream_cif_mipi_id3":0 []
-> "rkcif_scale_ch0":0 []
-> "rkcif_scale_ch1":0 []
-> "rkcif_scale_ch2":0 [ENABLED]
-> "rkcif_scale_ch3":0 []
-> "rkcif_tools_id0":0 []
-> "rkcif_tools_id1":0 []
-> "rkcif_tools_id2":0 []
pad8: Source
-> "stream_cif_mipi_id0":0 []
-> "stream_cif_mipi_id1":0 []
-> "stream_cif_mipi_id2":0 []
-> "stream_cif_mipi_id3":0 []
-> "rkcif_scale_ch0":0 []
-> "rkcif_scale_ch1":0 []
-> "rkcif_scale_ch2":0 []
-> "rkcif_scale_ch3":0 [ENABLED]
-> "rkcif_tools_id0":0 []
-> "rkcif_tools_id1":0 []
-> "rkcif_tools_id2":0 []
pad9: Source
-> "stream_cif_mipi_id0":0 []
-> "stream_cif_mipi_id1":0 []
-> "stream_cif_mipi_id2":0 []
-> "stream_cif_mipi_id3":0 []
-> "rkcif_scale_ch0":0 []
-> "rkcif_scale_ch1":0 []
-> "rkcif_scale_ch2":0 []
-> "rkcif_scale_ch3":0 []
-> "rkcif_tools_id0":0 [ENABLED]
-> "rkcif_tools_id1":0 []
-> "rkcif_tools_id2":0 []
pad10: Source
-> "stream_cif_mipi_id0":0 []
-> "stream_cif_mipi_id1":0 []
-> "stream_cif_mipi_id2":0 []
-> "stream_cif_mipi_id3":0 []
-> "rkcif_scale_ch0":0 []
-> "rkcif_scale_ch1":0 []
-> "rkcif_scale_ch2":0 []
-> "rkcif_scale_ch3":0 []
-> "rkcif_tools_id0":0 []
-> "rkcif_tools_id1":0 [ENABLED]
-> "rkcif_tools_id2":0 []
pad11: Source
-> "stream_cif_mipi_id0":0 []
-> "stream_cif_mipi_id1":0 []
-> "stream_cif_mipi_id2":0 []
-> "stream_cif_mipi_id3":0 []
-> "rkcif_scale_ch0":0 []
-> "rkcif_scale_ch1":0 []
-> "rkcif_scale_ch2":0 []
-> "rkcif_scale_ch3":0 []
-> "rkcif_tools_id0":0 []
-> "rkcif_tools_id1":0 []
-> "rkcif_tools_id2":0 [ENABLED]
- entity 58: rockchip-csi2-dphy0 (2 pads, 2 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev1
pad0: Sink
fmt:SBGGR8_1X8/2304x1296@10000/250000 field:none
<- "m00_b_sc3336 4-0030":0 [ENABLED]
pad1: Source
-> "rockchip-mipi-csi2":0 [ENABLED]
- entity 63: m00_b_sc3336 4-0030 (1 pad, 1 link)
type V4L2 subdev subtype Sensor flags 0
device node name /dev/v4l-subdev2
pad0: Source
fmt:SBGGR8_1X8/2304x1296@10000/250000 field:none
-> "rockchip-csi2-dphy0":0 [ENABLED]
五:FPGA端MIPI CSI-2发送调试
确认FPGA端发送正常
六:图像VLC推流查看

FPGA发送动态图像模板显示效果

七:欢迎讨论交流
微:moning_hello