Camera sensor os02g10 MIPI CSI for IMX8MM

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Camera sensor os02g10 MIPI CSI for IMX8MM

Jump to solution
3,219 Views
btarnowski
Contributor III

Hi all.

I got the driver for os02g10 from:

https://github.com/Shaggy013/kernel-5.10

I added driver as a patch.

 

My DeviceTree looks that:

 

            csi1_bridge: csi1_bridge@32e20000 {
                compatible = "fsl,imx8mm-csi", "fsl,imx8mq-csi", "fsl,imx6s-csi";
                reg = <0x32e20000 0x1000>;
                interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
                clocks = <&clk IMX8MM_CLK_DISP_AXI_ROOT>,
                         <&clk IMX8MM_CLK_CSI1_ROOT>,
                         <&clk IMX8MM_CLK_DISP_APB_ROOT>;
                clock-names = "disp-axi", "csi_mclk", "disp_dcic";
                power-domains = <&dispmix_pd>;
                status = "disabled";
            };

            mipi_csi_1: mipi_csi@32e30000 {
                compatible = "fsl,imx8mm-mipi-csi";
                reg = <0x32e30000 0x1000>;
                interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
                clock-frequency = <360000000>;
                clocks = <&clk IMX8MM_CLK_CSI1_CORE>,
                         <&clk IMX8MM_CLK_CSI1_PHY_REF>,
                         <&clk IMX8MM_CLK_DISP_AXI_ROOT>,
                         <&clk IMX8MM_CLK_DISP_APB_ROOT>;
                clock-names = "mipi_clk", "phy_clk", "disp_axi", "disp_apb";
                bus-width = <2>;
                resets = <&mipi_csi_resets>;
                power-domains = <&mipi_pd>;
                status = "disabled";
            };

    os02g10: os02g10@3c {
		compatible = "ovti,os02g10";
		reg = <0x3c>; // spec (manual) says that I2c addres is 0x3d 
        status = "okay";
		pinctrl-names = "rockchip,camera_default", "rockchip,camera_sleep";		
		pinctrl-0 = <&pinctrl_csi_pwdn>, <&pinctrl_csi_rst>, <&pinctrl_mux_oe>;
		pinctrl-1 = <&pinctrl_csi_pwdn>, <&pinctrl_csi_rst>, <&pinctrl_mux_oe>;
		csi_id = <0>;
        pwdn-gpios = <&gpio2 16 GPIO_ACTIVE_HIGH>;
        reset-gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
        mux-gpios = <&gpio2 14 GPIO_ACTIVE_HIGH>;
		mclk = <24000000>;
		mclk_source = <0>;
		rockchip,camera-module-index = <1>;
		rockchip,camera-module-facing = "back";
		rockchip,camera-module-name = "OS02G10 camera";
		rockchip,camera-module-lens-name = "1//2.9 inch 15*";
		rockchip,camera-hdr-mode = <0>; // kernel-5.10\include\uapi\linux\rk-camera-module.h:307  (enum rkmodule_hdr_mode)
		mipi_csi;

		port {
			os02g10_ep: endpoint {
				remote-endpoint = <&mipi1_sensor_ep>;
			};
		};
    };
};

&csi1_bridge {
    fsl,mipi-mode;
	status = "okay";
	port {
		csi1_ep: endpoint {
			remote-endpoint = <&csi1_mipi_ep>;
		};
	};
};

&mipi_csi_1 {
	status = "okay";
	port {
        #address-cells = <1>;
        #size-cells = <0>;
            
		    mipi1_sensor_ep: endpoint@1 {
            reg = <1>;
			remote-endpoint = <&os02g10_ep>;
			data-lanes = <2>;
			csis-hs-settle = <13>;
			csis-clk-settle = <2>;
			csis-wclk;
            };
           
            csi1_mipi_ep: endpoint@2 {
            reg = <2>;
			remote-endpoint = <&csi1_ep>;
        };
	};
};

&clk {
    init-on-array = <IMX8MM_CLK_UART4_ROOT
                     IMX8MM_CLK_AHB IMX8MM_CLK_DRAM_CORE
                     IMX8MM_CLK_NOC IMX8MM_CLK_NOC_APB
                     IMX8MM_CLK_USB_BUS
                     IMX8MM_CLK_MAIN_AXI IMX8MM_CLK_AUDIO_AHB
                     IMX8MM_CLK_DRAM_APB IMX8MM_CLK_A53_DIV
                     IMX8MM_ARM_PLL_OUT IMX8MM_CLK_DISP_AXI
                     IMX8MM_CLK_DISP_APB
                    >;
};

 

 

I modified probe function for camera driver and for mxc_mipi-csi.c, mx6s-csi.c

Before I had 2 times format match error but I added to the mx6s-csi

 

{
.name		= "RAWRGB10 (SBGGR10)",
.fourcc	= V4L2_PIX_FMT_SBGGR10,
.pixelformat	= V4L2_PIX_FMT_SBGGR10,
.mbus_code	= MEDIA_BUS_FMT_SBGGR10_1X10,
.bpp		= 1,
}

 

and added to mxc_mipi-csi.c

 

{
.code = MEDIA_BUS_FMT_SBGGR10_1X10,
.fmt_reg = MIPI_CSIS_ISPCFG_FMT_RAW10,
.data_alignment = 8,
 }

 

 

and v4l2 API works, there is no error. Below my command to get picture

 

v4l2-ctl -d /dev/video0 --verbose --set-fmt-video=width=1920,height=1080,pixelformat=BG10  --stream-mmap --stream-count=1 --stream-to=bb001.raw

 

and the result with my debug messages

 

mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_s_power
os02g10 3-003c: in function: os02g10_s_power
os02g10 3-003c: in function: os02g10_runtime_resume
os02g10 3-003c: in function: __os02g10_power_on

os02g10 3-003c: OS02G10_REG_SOFTWARE_RESET
mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_clk_enable
mxc_mipi-csi 32e30000.mipi_csi: enable mipi_clk returns: 0
mxc_mipi-csi 32e30000.mipi_csi: enable phy_clk returns: 0
mxc_mipi-csi 32e30000.mipi_csi: enable disp_axi returns: 0
mxc_mipi-csi 32e30000.mipi_csi: enable disp_apb returns: 0

VIDIOC_QUERYCAP: ok
VIDIOC_G_FMT: ok

mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_enum_mbus_code
os02g10 3-003c: in function: os02g10_enum_mbus_code
mxc_mipi-csi 32e30000.mipi_csi: camera sensor format (media-bus-format.h): 0x3007
mxc_mipi-csi 32e30000.mipi_csi: supported format0 by mipi-csi driver:    0x2008
mxc_mipi-csi 32e30000.mipi_csi: supported format1 by mipi-csi driver:    0x2007
mxc_mipi-csi 32e30000.mipi_csi: supported format2 by mipi-csi driver:    0x3001
mxc_mipi-csi 32e30000.mipi_csi: supported format3 by mipi-csi driver:    0x3007
mx6s-csi 32e20000.csi1_bridge: in function: mx6s_vidioc_enum_fmt_vid_cap - format RAWRGB10 (SBGGR10)
mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_set_fmt

VIDIOC_S_FMT: ok
Format Video Capture:
        Width/Height      : 1920/1080

mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_enum_mbus_code
os02g10 3-003c: in function: os02g10_enum_mbus_code
mxc_mipi-csi 32e30000.mipi_csi: camera sensor format (media-bus-format.h): 0x3007
mxc_mipi-csi 32e30000.mipi_csi: supported format0 by mipi-csi driver:    0x2008
mxc_mipi-csi 32e30000.mipi_csi: supported format1 by mipi-csi driver:    0x2007
mxc_mipi-csi 32e30000.mipi_csi: supported format2 by mipi-csi driver:    0x3001
mxc_mipi-csi 32e30000.mipi_csi: supported format3 by mipi-csi driver:    0x3007
mx6s-csi 32e20000.csi1_bridge: in function: mx6s_vidioc_enum_fmt_vid_cap - format RAWRGB10 (SBGGR10)


        Pixel Format      : 'BG10' (10-bit Bayer BGBG/GRGR)
        Field             : None
        Bytes per Line    : 1920
        Size Image        : 2073600
        Colorspace        : sRGB
        Transfer Function : Default (maps to sRGB)
        YCbCr/HSV Encoding: ITU-R 601
        Quantization      : Full Range
        Flags:

mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_s_stream
mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_clear_counters
mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_start_stream
mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_sw_reset: REG CMN_CTRL 0x32E30004 = 0x00004000
mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_set_params
mxc_mipi-csi 32e30000.mipi_csi: in function: __mipi_csis_set_format
mxc_mipi-csi.0: fmt: 0x3007, 1920 x 1080
mxc_mipi-csi 32e30000.mipi_csi: in function: __mipi_csis_set_format: REG ISPRESOL_CH0 0x32E30044 = 0x04380780
mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_set_hsync_settle: REG DPHYCTRL 0x32E30024=0x0d800000
mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_set_params: REG CMN_CTRL 0x32E30004 = 0x00004104
mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_system_enable: REG CMN_CTRL 0x32E30004=0x00004105

VIDIOC_REQBUFS returned 0 (Success)
VIDIOC_QUERYBUF returned 0 (Success)
VIDIOC_QUERYBUF returned 0 (Success)
VIDIOC_QUERYBUF returned 0 (Success)
VIDIOC_QUERYBUF returned 0 (Success)
VIDIOC_QBUF returned 0 (Success)
VIDIOC_QBUF returned 0 (Success)
VIDIOC_QBUF returned 0 (Success)
VIDIOC_QBUF returned 0 (Success)

mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_system_enable: REG DPHYCTRL 0x32E30024=0x0d800007
mxc_mipi-csi 32e30000.mipi_csi: in function: mipi_csis_enable_interrupts: REG CSIS_INTMSK 0x32E30010 = 0xf00fffff
mxc_mipi-csi.0: --- mipi_csis_start_stream ---
mxc_mipi-csi.0: 0x04 CMM CTRL : 0x00004105
mxc_mipi-csi.0: 0x08 CLK CTRL : 0x000f0000
mxc_mipi-csi.0: 0x10 INT MASK0: 0xf00fffff
mxc_mipi-csi.0: 0x14 INT SRC0 : 0x00000000
mxc_mipi-csi.0: 0x18 INT MASK1: 0x00000000
mxc_mipi-csi.0: 0x1c INT SRC1 : 0x00000000
mxc_mipi-csi.0: 0x20 PHY STAT : 0x000000f1
mxc_mipi-csi.0: 0x24 PHY CTRL : 0x0d800007
mxc_mipi-csi.0: 0x30 PHY M/S-L: 0x000001f4
mxc_mipi-csi.0: 0x34 PHY M/S-H: 0x00000000
mxc_mipi-csi.0: 0x38 PHY S-CTL: 0x00000000
mxc_mipi-csi.0: 0x3C PHY S-CTH: 0x00000000
mxc_mipi-csi.0: 0x40 ISP CONF : 0x000000ac
mxc_mipi-csi.0: 0x44 ISP RESOL: 0x04380780
mxc_mipi-csi.0: 0x48 ISP SYNC : 0x04380780
os02g10 3-003c: in function: os02g10_s_stream
os02g10 3-003c: in function: __os02g10_start_stream
os02g10 3-003c: in function: __os02g10_start_stream  __v4l2_ctrl_handler_setup returns: 0
os02g10 3-003c: in function: os02g10_s_stream: unlock_and_return

               VIDIOC_STREAMON returned 0 (Success)

 

 

After that nothing is going to happen, just waiting and waiting and nothing.

I can not observe any traffic on MIPI DATA and MIPI CLK lines by 20MHz oscilloscope. (I know the bandwidth is low but for data lines there should be anything seen - any change but there is completely silence) 

Im not sure if clk node is correct and maybe there is no match &clk node with mipi_csi clocks by clock names. Has anyone experience with it?

What can I do ?

 

Labels (1)
0 Kudos
Reply
1 Solution
3,202 Views
btarnowski
Contributor III

I got it to work.
.bpp has to be = 2
but main issue was with hardware

View solution in original post

0 Kudos
Reply
2 Replies
34 Views
RutvijTrivedi207
Contributor III
0 Kudos
Reply
3,203 Views
btarnowski
Contributor III

I got it to work.
.bpp has to be = 2
but main issue was with hardware

0 Kudos
Reply
%3CLINGO-SUB%20id%3D%22lingo-sub-1508947%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ECamera%20sensor%20os02g10%20MIPI%20CSI%20for%20IMX8MM%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1508947%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%20all.%3C%2FP%3E%3CP%3EI%20got%20the%20driver%20for%20os02g10%20from%3A%3C%2FP%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2FShaggy013%2Fkernel-5.10%22%20target%3D%22_blank%22%20rel%3D%22noopener%20nofollow%20noreferrer%22%3Ehttps%3A%2F%2Fgithub.com%2FShaggy013%2Fkernel-5.10%3C%2FA%3E%3C%2FP%3E%3CP%3EI%20added%20driver%20as%20a%20patch.%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EMy%20DeviceTree%20looks%20that%3A%3C%2FP%3E%3CBR%20%2F%3E%3CPRE%20class%3D%22lia-code-sample%20language-c%22%3E%3CCODE%3E%20%20%20%20%20%20%20%20%20%20%20%20csi1_bridge%3A%20csi1_bridge%4032e20000%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20compatible%20%3D%20%22fsl%2Cimx8mm-csi%22%2C%20%22fsl%2Cimx8mq-csi%22%2C%20%22fsl%2Cimx6s-csi%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20reg%20%3D%20%26lt%3B0x32e20000%200x1000%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20interrupts%20%3D%20%3CGIC_SPI%2016%3D%22%22%20irq_type_level_high%3D%22%22%3E%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20clocks%20%3D%20%26lt%3B%26amp%3Bclk%20IMX8MM_CLK_DISP_AXI_ROOT%26gt%3B%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%26lt%3B%26amp%3Bclk%20IMX8MM_CLK_CSI1_ROOT%26gt%3B%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%26lt%3B%26amp%3Bclk%20IMX8MM_CLK_DISP_APB_ROOT%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20clock-names%20%3D%20%22disp-axi%22%2C%20%22csi_mclk%22%2C%20%22disp_dcic%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20power-domains%20%3D%20%26lt%3B%26amp%3Bdispmix_pd%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20status%20%3D%20%22disabled%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20mipi_csi_1%3A%20mipi_csi%4032e30000%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20compatible%20%3D%20%22fsl%2Cimx8mm-mipi-csi%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20reg%20%3D%20%26lt%3B0x32e30000%200x1000%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20interrupts%20%3D%20%3CGIC_SPI%2017%3D%22%22%20irq_type_level_high%3D%22%22%3E%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20clock-frequency%20%3D%20%26lt%3B360000000%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20clocks%20%3D%20%26lt%3B%26amp%3Bclk%20IMX8MM_CLK_CSI1_CORE%26gt%3B%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%26lt%3B%26amp%3Bclk%20IMX8MM_CLK_CSI1_PHY_REF%26gt%3B%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%26lt%3B%26amp%3Bclk%20IMX8MM_CLK_DISP_AXI_ROOT%26gt%3B%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%26lt%3B%26amp%3Bclk%20IMX8MM_CLK_DISP_APB_ROOT%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20clock-names%20%3D%20%22mipi_clk%22%2C%20%22phy_clk%22%2C%20%22disp_axi%22%2C%20%22disp_apb%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20bus-width%20%3D%20%26lt%3B2%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20resets%20%3D%20%26lt%3B%26amp%3Bmipi_csi_resets%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20power-domains%20%3D%20%26lt%3B%26amp%3Bmipi_pd%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20status%20%3D%20%22disabled%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%3B%0A%0A%20%20%20%20os02g10%3A%20os02g10%403c%20%7B%0A%09%09compatible%20%3D%20%22ovti%2Cos02g10%22%3B%0A%09%09reg%20%3D%20%26lt%3B0x3c%26gt%3B%3B%20%2F%2F%20spec%20(manual)%20says%20that%20I2c%20addres%20is%200x3d%20%0A%20%20%20%20%20%20%20%20status%20%3D%20%22okay%22%3B%0A%09%09pinctrl-names%20%3D%20%22rockchip%2Ccamera_default%22%2C%20%22rockchip%2Ccamera_sleep%22%3B%09%09%0A%09%09pinctrl-0%20%3D%20%26lt%3B%26amp%3Bpinctrl_csi_pwdn%26gt%3B%2C%20%26lt%3B%26amp%3Bpinctrl_csi_rst%26gt%3B%2C%20%26lt%3B%26amp%3Bpinctrl_mux_oe%26gt%3B%3B%0A%09%09pinctrl-1%20%3D%20%26lt%3B%26amp%3Bpinctrl_csi_pwdn%26gt%3B%2C%20%26lt%3B%26amp%3Bpinctrl_csi_rst%26gt%3B%2C%20%26lt%3B%26amp%3Bpinctrl_mux_oe%26gt%3B%3B%0A%09%09csi_id%20%3D%20%26lt%3B0%26gt%3B%3B%0A%20%20%20%20%20%20%20%20pwdn-gpios%20%3D%20%26lt%3B%26amp%3Bgpio2%2016%20GPIO_ACTIVE_HIGH%26gt%3B%3B%0A%20%20%20%20%20%20%20%20reset-gpios%20%3D%20%26lt%3B%26amp%3Bgpio2%2013%20GPIO_ACTIVE_HIGH%26gt%3B%3B%0A%20%20%20%20%20%20%20%20mux-gpios%20%3D%20%26lt%3B%26amp%3Bgpio2%2014%20GPIO_ACTIVE_HIGH%26gt%3B%3B%0A%09%09mclk%20%3D%20%26lt%3B24000000%26gt%3B%3B%0A%09%09mclk_source%20%3D%20%26lt%3B0%26gt%3B%3B%0A%09%09rockchip%2Ccamera-module-index%20%3D%20%26lt%3B1%26gt%3B%3B%0A%09%09rockchip%2Ccamera-module-facing%20%3D%20%22back%22%3B%0A%09%09rockchip%2Ccamera-module-name%20%3D%20%22OS02G10%20camera%22%3B%0A%09%09rockchip%2Ccamera-module-lens-name%20%3D%20%221%2F%2F2.9%20inch%2015*%22%3B%0A%09%09rockchip%2Ccamera-hdr-mode%20%3D%20%26lt%3B0%26gt%3B%3B%20%2F%2F%20kernel-5.10%5Cinclude%5Cuapi%5Clinux%5Crk-camera-module.h%3A307%20%20(enum%20rkmodule_hdr_mode)%0A%09%09mipi_csi%3B%0A%0A%09%09port%20%7B%0A%09%09%09os02g10_ep%3A%20endpoint%20%7B%0A%09%09%09%09remote-endpoint%20%3D%20%26lt%3B%26amp%3Bmipi1_sensor_ep%26gt%3B%3B%0A%09%09%09%7D%3B%0A%09%09%7D%3B%0A%20%20%20%20%7D%3B%0A%7D%3B%0A%0A%26amp%3Bcsi1_bridge%20%7B%0A%20%20%20%20fsl%2Cmipi-mode%3B%0A%09status%20%3D%20%22okay%22%3B%0A%09port%20%7B%0A%09%09csi1_ep%3A%20endpoint%20%7B%0A%09%09%09remote-endpoint%20%3D%20%26lt%3B%26amp%3Bcsi1_mipi_ep%26gt%3B%3B%0A%09%09%7D%3B%0A%09%7D%3B%0A%7D%3B%0A%0A%26amp%3Bmipi_csi_1%20%7B%0A%09status%20%3D%20%22okay%22%3B%0A%09port%20%7B%0A%20%20%20%20%20%20%20%20%23address-cells%20%3D%20%26lt%3B1%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%23size-cells%20%3D%20%26lt%3B0%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%09%09%20%20%20%20mipi1_sensor_ep%3A%20endpoint%401%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20reg%20%3D%20%26lt%3B1%26gt%3B%3B%0A%09%09%09remote-endpoint%20%3D%20%26lt%3B%26amp%3Bos02g10_ep%26gt%3B%3B%0A%09%09%09data-lanes%20%3D%20%26lt%3B2%26gt%3B%3B%0A%09%09%09csis-hs-settle%20%3D%20%26lt%3B13%26gt%3B%3B%0A%09%09%09csis-clk-settle%20%3D%20%26lt%3B2%26gt%3B%3B%0A%09%09%09csis-wclk%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%3B%0A%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20csi1_mipi_ep%3A%20endpoint%402%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20reg%20%3D%20%26lt%3B2%26gt%3B%3B%0A%09%09%09remote-endpoint%20%3D%20%26lt%3B%26amp%3Bcsi1_ep%26gt%3B%3B%0A%20%20%20%20%20%20%20%20%7D%3B%0A%09%7D%3B%0A%7D%3B%0A%0A%26amp%3Bclk%20%7B%0A%20%20%20%20init-on-array%20%3D%20%3CIMX8MM_CLK_UART4_ROOT%20imx8mm_clk_ahb%3D%22%22%20imx8mm_clk_dram_core%3D%22%22%20imx8mm_clk_noc%3D%22%22%20imx8mm_clk_noc_apb%3D%22%22%20imx8mm_clk_usb_bus%3D%22%22%20imx8mm_clk_main_axi%3D%22%22%20imx8mm_clk_audio_ahb%3D%22%22%20imx8mm_clk_dram_apb%3D%22%22%20imx8mm_clk_a53_div%3D%22%22%20imx8mm_arm_pll_out%3D%22%22%20imx8mm_clk_disp_axi%3D%22%22%20imx8mm_clk_disp_apb%3D%22%22%3E%3B%0A%7D%3B%3C%2FIMX8MM_CLK_UART4_ROOT%3E%3C%2FGIC_SPI%3E%3C%2FGIC_SPI%3E%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3EI%20modified%20probe%20function%20for%20camera%20driver%20and%20for%20mxc_mipi-csi.c%2C%20mx6s-csi.c%3C%2FP%3E%3CP%3EBefore%20I%20had%202%20times%20format%20match%20error%20but%20I%20added%20to%20the%20mx6s-csi%3C%2FP%3E%3CBR%20%2F%3E%3CPRE%20class%3D%22lia-code-sample%20language-c%22%3E%3CCODE%3E%7B%0A.name%09%09%3D%20%22RAWRGB10%20(SBGGR10)%22%2C%0A.fourcc%09%3D%20V4L2_PIX_FMT_SBGGR10%2C%0A.pixelformat%09%3D%20V4L2_PIX_FMT_SBGGR10%2C%0A.mbus_code%09%3D%20MEDIA_BUS_FMT_SBGGR10_1X10%2C%0A.bpp%09%09%3D%201%2C%0A%7D%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CP%3Eand%20added%20to%20mxc_mipi-csi.c%3C%2FP%3E%3CBR%20%2F%3E%3CPRE%20class%3D%22lia-code-sample%20language-c%22%3E%3CCODE%3E%7B%0A.code%20%3D%20MEDIA_BUS_FMT_SBGGR10_1X10%2C%0A.fmt_reg%20%3D%20MIPI_CSIS_ISPCFG_FMT_RAW10%2C%0A.data_alignment%20%3D%208%2C%0A%20%7D%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3Eand%20v4l2%20API%20works%2C%20there%20is%20no%20error.%20Below%20my%20command%20to%20get%20picture%3C%2FP%3E%3CBR%20%2F%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Ev4l2-ctl%20-d%20%2Fdev%2Fvideo0%20--verbose%20--set-fmt-video%3Dwidth%3D1920%2Cheight%3D1080%2Cpixelformat%3DBG10%20%20--stream-mmap%20--stream-count%3D1%20--stream-to%3Dbb001.raw%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CP%3Eand%20the%20result%20with%20my%20debug%20messages%3C%2FP%3E%3CBR%20%2F%3E%3CPRE%20class%3D%22lia-code-sample%20language-c%22%3E%3CCODE%3Emxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_s_power%0Aos02g10%203-003c%3A%20in%20function%3A%20os02g10_s_power%0Aos02g10%203-003c%3A%20in%20function%3A%20os02g10_runtime_resume%0Aos02g10%203-003c%3A%20in%20function%3A%20__os02g10_power_on%0A%0Aos02g10%203-003c%3A%20OS02G10_REG_SOFTWARE_RESET%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_clk_enable%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20enable%20mipi_clk%20returns%3A%200%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20enable%20phy_clk%20returns%3A%200%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20enable%20disp_axi%20returns%3A%200%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20enable%20disp_apb%20returns%3A%200%0A%0AVIDIOC_QUERYCAP%3A%20ok%0AVIDIOC_G_FMT%3A%20ok%0A%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_enum_mbus_code%0Aos02g10%203-003c%3A%20in%20function%3A%20os02g10_enum_mbus_code%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20camera%20sensor%20format%20(media-bus-format.h)%3A%200x3007%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20supported%20format0%20by%20mipi-csi%20driver%3A%20%20%20%200x2008%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20supported%20format1%20by%20mipi-csi%20driver%3A%20%20%20%200x2007%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20supported%20format2%20by%20mipi-csi%20driver%3A%20%20%20%200x3001%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20supported%20format3%20by%20mipi-csi%20driver%3A%20%20%20%200x3007%0Amx6s-csi%2032e20000.csi1_bridge%3A%20in%20function%3A%20mx6s_vidioc_enum_fmt_vid_cap%20-%20format%20RAWRGB10%20(SBGGR10)%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_set_fmt%0A%0AVIDIOC_S_FMT%3A%20ok%0AFormat%20Video%20Capture%3A%0A%20%20%20%20%20%20%20%20Width%2FHeight%20%20%20%20%20%20%3A%201920%2F1080%0A%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_enum_mbus_code%0Aos02g10%203-003c%3A%20in%20function%3A%20os02g10_enum_mbus_code%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20camera%20sensor%20format%20(media-bus-format.h)%3A%200x3007%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20supported%20format0%20by%20mipi-csi%20driver%3A%20%20%20%200x2008%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20supported%20format1%20by%20mipi-csi%20driver%3A%20%20%20%200x2007%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20supported%20format2%20by%20mipi-csi%20driver%3A%20%20%20%200x3001%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20supported%20format3%20by%20mipi-csi%20driver%3A%20%20%20%200x3007%0Amx6s-csi%2032e20000.csi1_bridge%3A%20in%20function%3A%20mx6s_vidioc_enum_fmt_vid_cap%20-%20format%20RAWRGB10%20(SBGGR10)%0A%0A%0A%20%20%20%20%20%20%20%20Pixel%20Format%20%20%20%20%20%20%3A%20'BG10'%20(10-bit%20Bayer%20BGBG%2FGRGR)%0A%20%20%20%20%20%20%20%20Field%20%20%20%20%20%20%20%20%20%20%20%20%20%3A%20None%0A%20%20%20%20%20%20%20%20Bytes%20per%20Line%20%20%20%20%3A%201920%0A%20%20%20%20%20%20%20%20Size%20Image%20%20%20%20%20%20%20%20%3A%202073600%0A%20%20%20%20%20%20%20%20Colorspace%20%20%20%20%20%20%20%20%3A%20sRGB%0A%20%20%20%20%20%20%20%20Transfer%20Function%20%3A%20Default%20(maps%20to%20sRGB)%0A%20%20%20%20%20%20%20%20YCbCr%2FHSV%20Encoding%3A%20ITU-R%20601%0A%20%20%20%20%20%20%20%20Quantization%20%20%20%20%20%20%3A%20Full%20Range%0A%20%20%20%20%20%20%20%20Flags%3A%0A%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_s_stream%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_clear_counters%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_start_stream%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_sw_reset%3A%20REG%20CMN_CTRL%200x32E30004%20%3D%200x00004000%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_set_params%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20__mipi_csis_set_format%0Amxc_mipi-csi.0%3A%20fmt%3A%200x3007%2C%201920%20x%201080%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20__mipi_csis_set_format%3A%20REG%20ISPRESOL_CH0%200x32E30044%20%3D%200x04380780%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_set_hsync_settle%3A%20REG%20DPHYCTRL%200x32E30024%3D0x0d800000%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_set_params%3A%20REG%20CMN_CTRL%200x32E30004%20%3D%200x00004104%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_system_enable%3A%20REG%20CMN_CTRL%200x32E30004%3D0x00004105%0A%0AVIDIOC_REQBUFS%20returned%200%20(Success)%0AVIDIOC_QUERYBUF%20returned%200%20(Success)%0AVIDIOC_QUERYBUF%20returned%200%20(Success)%0AVIDIOC_QUERYBUF%20returned%200%20(Success)%0AVIDIOC_QUERYBUF%20returned%200%20(Success)%0AVIDIOC_QBUF%20returned%200%20(Success)%0AVIDIOC_QBUF%20returned%200%20(Success)%0AVIDIOC_QBUF%20returned%200%20(Success)%0AVIDIOC_QBUF%20returned%200%20(Success)%0A%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_system_enable%3A%20REG%20DPHYCTRL%200x32E30024%3D0x0d800007%0Amxc_mipi-csi%2032e30000.mipi_csi%3A%20in%20function%3A%20mipi_csis_enable_interrupts%3A%20REG%20CSIS_INTMSK%200x32E30010%20%3D%200xf00fffff%0Amxc_mipi-csi.0%3A%20---%20mipi_csis_start_stream%20---%0Amxc_mipi-csi.0%3A%200x04%20CMM%20CTRL%20%3A%200x00004105%0Amxc_mipi-csi.0%3A%200x08%20CLK%20CTRL%20%3A%200x000f0000%0Amxc_mipi-csi.0%3A%200x10%20INT%20MASK0%3A%200xf00fffff%0Amxc_mipi-csi.0%3A%200x14%20INT%20SRC0%20%3A%200x00000000%0Amxc_mipi-csi.0%3A%200x18%20INT%20MASK1%3A%200x00000000%0Amxc_mipi-csi.0%3A%200x1c%20INT%20SRC1%20%3A%200x00000000%0Amxc_mipi-csi.0%3A%200x20%20PHY%20STAT%20%3A%200x000000f1%0Amxc_mipi-csi.0%3A%200x24%20PHY%20CTRL%20%3A%200x0d800007%0Amxc_mipi-csi.0%3A%200x30%20PHY%20M%2FS-L%3A%200x000001f4%0Amxc_mipi-csi.0%3A%200x34%20PHY%20M%2FS-H%3A%200x00000000%0Amxc_mipi-csi.0%3A%200x38%20PHY%20S-CTL%3A%200x00000000%0Amxc_mipi-csi.0%3A%200x3C%20PHY%20S-CTH%3A%200x00000000%0Amxc_mipi-csi.0%3A%200x40%20ISP%20CONF%20%3A%200x000000ac%0Amxc_mipi-csi.0%3A%200x44%20ISP%20RESOL%3A%200x04380780%0Amxc_mipi-csi.0%3A%200x48%20ISP%20SYNC%20%3A%200x04380780%0Aos02g10%203-003c%3A%20in%20function%3A%20os02g10_s_stream%0Aos02g10%203-003c%3A%20in%20function%3A%20__os02g10_start_stream%0Aos02g10%203-003c%3A%20in%20function%3A%20__os02g10_start_stream%20%20__v4l2_ctrl_handler_setup%20returns%3A%200%0Aos02g10%203-003c%3A%20in%20function%3A%20os02g10_s_stream%3A%20unlock_and_return%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20VIDIOC_STREAMON%20returned%200%20(Success)%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3EAfter%20that%20nothing%20is%20going%20to%20happen%2C%20just%20waiting%20and%20waiting%20and%20nothing.%3C%2FP%3E%3CP%3EI%20can%20not%20observe%20any%20traffic%20on%20MIPI%20DATA%20and%20MIPI%20CLK%20lines%20by%2020MHz%20oscilloscope.%20(I%20know%20the%20bandwidth%20is%20low%20but%20for%20data%20lines%20there%20should%20be%20anything%20seen%20-%20any%20change%20but%20there%20is%20completely%20silence)%26nbsp%3B%3C%2FP%3E%3CP%3E%3CSTRONG%3EIm%20not%20sure%20if%20clk%20node%20is%20correct%20and%20maybe%20there%20is%20no%20match%20%26amp%3Bclk%20node%20with%20mipi_csi%20clocks%20by%20clock%20names.%3C%2FSTRONG%3E%20Has%20anyone%20experience%20with%20it%3F%3CBR%20%2F%3E%3CBR%20%2F%3EWhat%20can%20I%20do%20%3F%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1508947%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3Ei.MX%208M%20%7C%20i.MX%208M%20Mini%20%7C%20i.MX%208M%20Nano%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2412711%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Camera%20sensor%20os02g10%20MIPI%20CSI%20for%20IMX8MM%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2412711%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%2C%20you%20can%20use%20our%20linux%20upstreamed%20driver%2C%26nbsp%3B%3CBR%20%2F%3Ewe%20have%20tested%20this%20on%20i.mx8mp%20based%20debix%20platform.%26nbsp%3B%3CBR%20%2F%3EHere%20is%20our%20driver%26nbsp%3B%3CBR%20%2F%3E%3CA%20href%3D%22https%3A%2F%2Fweb.git.kernel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Fnext%2Flinux-next.git%2Fcommit%2F%3Fid%3D263d0fa1d46ac1ae2eebc5a5490fec58233c69ad%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fweb.git.kernel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Fnext%2Flinux-next.git%2Fcommit%2F%3Fid%3D263d0fa1d46ac1ae2eebc5a5490fec58233c69ad%3C%2FA%3E%3C%2FP%3E%3CP%3EHere%20is%20our%20DT%3C%2FP%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fweb.git.kernel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Fnext%2Flinux-next.git%2Fcommit%2F%3Fid%3Da4d0f0c88ae8185315afbc1eb68c978ed710f759%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fweb.git.kernel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Fnext%2Flinux-next.git%2Fcommit%2F%3Fid%3Da4d0f0c88ae8185315afbc1eb68c978ed710f759%3C%2FA%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E--%3CBR%20%2F%3ERutvij%26nbsp%3B%3CBR%20%2F%3E%3CA%20href%3D%22https%3A%2F%2Fsiliconsignals.io%2Fsolutions%2Fupstream-engineering%2F%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3ESiliconSignals%20%3C%2FA%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1512380%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Camera%20sensor%20os02g10%20MIPI%20CSI%20for%20IMX8MM%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1512380%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EI%20got%20it%20to%20work.%3CBR%20%2F%3E.bpp%20has%20to%20be%20%3D%202%3CBR%20%2F%3Ebut%20main%20issue%20was%20with%20hardware%3C%2FP%3E%3C%2FLINGO-BODY%3E