/**
 EVB3568 V2 csi split mode
*/
/{
        vcc_camera: vcc-camera-regulator {
                compatible = "regulator-fixed";
                gpio = <&gpio0 RK_PD3 GPIO_ACTIVE_HIGH>;
                pinctrl-names = "default";
                pinctrl-0 = <&camera_pwr>;
                regulator-name = "vcc_camera";
                enable-active-high;
                regulator-always-on;
                regulator-boot-on;
        };
        flash_sgm3141:flash-sgm3141 {
                status = "okay";
                compatible = "sgmicro,sgm3141";
                label = "gpio-flash";
                pinctrl-names = "default";
                pinctrl-0 = <&flash_led_gpios>;
                
                led-max-microamp = <20000>;
                flash-max-microamp = <20000>;
                flash-max-timeout-us = <1000000>;
                strobe-gpios = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>;
                enable-gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>;
                rockchip,camera-module-index = <0>;
                rockchip,camera-module-facing = "back"; 
        };
};
&i2c4 {
	status = "okay";
/*
        dw9714: dw9714@0c {
		compatible = "dongwoon,dw9714";
		status = "okay";
		reg = <0x0c>;
		rockchip,camera-module-index = <0>;
		rockchip,vcm-max-current = <100>;
		rockchip,vcm-start-current = <0>;
		rockchip,vcm-rated-current = <100>;
		rockchip,vcm-step-mode = <0xd>;
		rockchip,vcm-dlc-enable = <0>;
		rockchip,vcm-mclk = <0>;	
		rockchip,vcm-t-src = <0>;
		rockchip,camera-module-facing = "back"; //"fornt";
	};
        gc8034: gc8034@37 {
		status = "okay";
		compatible = "galaxycore,gc8034";
		reg = <0x37>;
                clocks = <&cru CLK_CAM0_OUT>;
                clock-names = "xvclk";
                power-domains = <&power RK3568_PD_VI>;
                pinctrl-names = "default";
                pinctrl-0 = <&cam_clkout0>;
		//pinctrl-1 = <&cam_split_2>;
		// power-gpios = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>;
		// reset-gpios = <&gpio3 RK_PD6 GPIO_ACTIVE_HIGH>;
		// pwdn-gpios = <&gpio3 RK_PD7 GPIO_ACTIVE_HIGH>;
                reset-gpios = <&gpio4 RK_PA0 GPIO_ACTIVE_LOW>;
                pwdn-gpios = <&gpio4 RK_PA1 GPIO_ACTIVE_LOW>;
                rockchip,grf = <&grf>;
                rockchip,camera-module-index = <0>;
                rockchip,camera-module-facing = "back";
                rockchip,camera-module-name = "RK-CMK-8M-2-v1";
                rockchip,camera-module-lens-name = "CK8401";
                lens-focus = <&dw9714>;
                flash-leds = <&flash_sgm3141>;
		port {
			gc8034_2_out: endpoint {
				remote-endpoint = <&dphy1_in>;		
				data-lanes = <1 2>;
			};			
		};
	};
*/
        ov8858: ov8858@36 {
                status = "disabled";
                compatible = "ovti,ov8858";
                reg = <0x36>;                     //36,10
                clocks = <&cru CLK_CAM0_OUT>;
                clock-names = "xvclk";
                power-domains = <&power RK3568_PD_VI>;
                pinctrl-names = "default";
                pinctrl-0 = <&cam_clkout0>;
                //pinctrl-1 = <&cam_split_1>;
                
                reset-gpios = <&gpio4 RK_PA0 GPIO_ACTIVE_HIGH>;
                pwdn-gpios = <&gpio4 RK_PA1 GPIO_ACTIVE_HIGH>;
                rockchip,camera-module-index = <1>;
                rockchip,camera-module-facing = "front";
                rockchip,camera-module-name = "HS5885-BNSM1018-V01";
                rockchip,camera-module-lens-name = "default";
                port {
                        ov8858_out: endpoint {
                                remote-endpoint = <&dphy1_in_ov8858>;		
                                data-lanes = <1 2>;
                        };			
                };
        };
};
&i2c2 {
        status = "okay";
        pinctrl-names = "default";
        pinctrl-0 = <&i2c2m1_xfer>;
        dw9714: dw9714@0c {
		compatible = "dongwoon,dw9714";
		status = "okay";
		reg = <0x0c>;
		rockchip,camera-module-index = <0>;
		rockchip,vcm-max-current = <100>;
		rockchip,vcm-start-current = <0>;
		rockchip,vcm-rated-current = <100>;
		rockchip,vcm-step-mode = <0xd>;
		rockchip,vcm-dlc-enable = <0>;
		rockchip,vcm-mclk = <0>;	
		rockchip,vcm-t-src = <0>;
		rockchip,camera-module-facing = "back"; //"fornt";
	};
        gc8034: gc8034@37 {
		status = "okay";
		compatible = "galaxycore,gc8034";
		reg = <0x37>;
                clocks = <&cru CLK_CAM1_OUT>;
                clock-names = "xvclk";
                power-domains = <&power RK3568_PD_VI>;
                pinctrl-names = "default";
                pinctrl-0 = <&cam_clkout1>;
		//pinctrl-1 = <&cam_split_2>;
		// power-gpios = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>;
		reset-gpios = <&gpio3 RK_PD6 GPIO_ACTIVE_LOW>;
		pwdn-gpios = <&gpio3 RK_PD7 GPIO_ACTIVE_LOW>;
                rockchip,grf = <&grf>;
                rockchip,camera-module-index = <0>;
                rockchip,camera-module-facing = "back";
                rockchip,camera-module-name = "RK-CMK-8M-2-v1";
                rockchip,camera-module-lens-name = "CK8401";
                lens-focus = <&dw9714>;
                flash-leds = <&flash_sgm3141>;
		port {
			gc8034_2_out: endpoint {
				remote-endpoint = <&dphy2_in>;		
				data-lanes = <1 2>;
			};			
		};
	};
};
&csi2_dphy0 {
	status = "disabled";
};
&csi2_dphy1 {
        status = "okay";
        /*
        * dphy1 only used for split mode,
        * can be used  concurrently  with dphy2
        * full mode and split mode are mutually exclusive
        */
        ports {
                #address-cells = <1>;
                #size-cells = <0>;
                port@0 {
                        reg = <0>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        dphy1_in_ov8858: endpoint@1 {
                                        reg = <1>;
                                        remote-endpoint = <&ov8858_out>;
                                        data-lanes = <1 2>;
                        };
                };
                port@1 {
                        reg = <1>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        dphy1_out: endpoint@1 {
                                        reg = <1>;
                                        remote-endpoint = <&isp0_in>;
                        };
                };
        };
};
&csi2_dphy2 {
        status = "okay";
        /*
        * dphy2 only used for split mode,
        * can be used  concurrently  with dphy1
        * full mode and split mode are mutually exclusive
        */
        ports {
                #address-cells = <1>;
                #size-cells = <0>;
                port@0 {
                        reg = <0>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        dphy2_in: endpoint@1 {
                                        reg = <1>;
                                        remote-endpoint = <&gc8034_2_out>;
                                        data-lanes = <1 2>;
                        };
                };
                port@1 {
                        reg = <1>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        dphy2_out: endpoint@1 {
                                        reg = <1>;
                                        remote-endpoint = <&mipi_csi2_input>;
                        };
                };
        };
};
&mipi_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 = <&dphy2_out>;
                                        data-lanes = <1 2>;
                        };
                };
                port@1 {
                        reg = <1>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        mipi_csi2_output: endpoint@0 {
                                        reg = <0>;
                                        remote-endpoint = <&cif_mipi_in>;
                                        data-lanes = <1 2>;
                        };
                };
        };
};
&rkcif_mipi_lvds {
        status = "okay";
        port {
                cif_mipi_in: endpoint {
                        remote-endpoint = <&mipi_csi2_output>;
                        data-lanes = <1 2>;
                };
        };
};
&rkcif_mipi_lvds_sditf {
        status = "okay";
        port {
                mipi_lvds_sditf: endpoint {
                        remote-endpoint = <&isp1_in>;
                        data-lanes = <1 2>;
                };
        };
};
&csi2_dphy_hw { 
	status = "okay";
}; 
&rkisp { 
	status = "okay"; 
};
&rkisp_mmu {
	status = "okay";
};
&rkisp_vir0 {
        status = "okay";
        port {
                #address-cells = <1>;
                #size-cells = <0>;
                isp0_in: endpoint@0 {
                        reg = <0>;
                        remote-endpoint = <&dphy1_out>;
                };
        };
};
&rkisp_vir1 {
        status = "okay";
        port {
                #address-cells = <1>;
                #size-cells = <0>;
                isp1_in: endpoint@0 {
                        reg = <0>;
                        remote-endpoint = <&mipi_lvds_sditf>;
                };
        };
};
&rkcif_mmu {
    status = "okay";
};
&rkcif {
    status = "okay";
};
&pinctrl {
        cam {
                camera_pwr: camera-pwr {
                        rockchip,pins =
                                /* camera power en */
                                <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
                };
        };
	camera_pins {
		cam_split_1: cam_split-1 {
			rockchip,pins = <4 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>,
                                        <4 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
		};
                cam_split_2: cam_split-2 {
			rockchip,pins = <3 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>,
                                        <3 RK_PD7 RK_FUNC_GPIO &pcfg_pull_up>;
		};
	};
        flash-led {
                flash_led_gpios: flash-led {
                        rockchip,pins =
                                /* flash led enable*/
                                <3 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>,
                                <3 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
                };
        };
};
S
		
		
		
	Posts made by Scroll
- 
    RE: RK3568 GC8034 相机预览画面异常绿屏posted in Rockchip App camera
