Skip to content

[IMX219] Failed to probe IMX219 camera module on RK1808 board #350

@sunghyun-nam

Description

@sunghyun-nam

Hi,
I'm trying to enable and use the IMX219 camera module on a Rockchip RK1808 board, but I'm encountering problems during the driver probe stage.

📌 Setup

  • Board: RK1808 (custom device tree)
  • Kernel: 4.4.194
  • Camera: Raspberry Pi Camera Module V2 (IMX219)
  • Interface: MIPI CSI
  • Device Tree: added imx219@10 node with required power, GPIO, clock, and data-lanes

✅ What I've done

  1. Created and enabled the imx219@10 node in DTS:
    • Set status = "okay"
    • Configured GPIOs (enable-gpios, pwdn-gpios), clocks, regulators, and port
  2. Recompiled DTB with make dtbs and deployed it to the target board
  3. Compared with working OV5647 DTS node (which probes successfully)

❌ Problem

IMX219 fails to probe, and the dmesg output shows:
[ 0.687709] imx219 1-0010: no default pinctrl state [ 0.694726] imx219 1-0010: Error -5 setting default controls [ 0.694780] imx219: probe of 1-0010 failed with error -5

Additionally, I get the following error:
rockchip-mipi-dphy-rx: No link between dphy and sensor rkisp1: update sensor info failed -19

Partial section of the currently used DTS file:
I commented out the ov5647 section and uncommented the imx219 section in the previously used DTS file:
`
/*ov5647: ov5647@36 {
status = "okay";
compatible = "ovti,ov5647";
reg = <0x36>;
clocks = <&cru SCLK_CIF_OUT>;
clock-names = "xclk";

	avdd-supply = <&vcc2v8_dvp>;
	dovdd-supply = <&vcc1v8_dvp>;
	dvdd-supply = <&vdd1v5_dvp>;
	pwdn-gpios = <&gpio0 RK_PC3 GPIO_ACTIVE_LOW>;
	pinctrl-names = "default";

	rockchip,camera-module-index = <0>;
	rockchip,camera-module-facing = "back";
	rockchip,camera-module-name = "TongJu";
	rockchip,camera-module-lens-name = "CHT842-MD";

    port {
        ucam_out: endpoint {
            remote-endpoint = <&mipi_in_ucam>;
			//link-frequencies = /bits/ 64 <1250000000>;
			//link-frequencies = /bits/ 64 <800000000>;
            data-lanes = <1 2>;
        };  
    };  
};
*/
imx219: imx219@10 {
	status = "okay";
	compatible = "sony,imx219";
	reg = <0x10>;
	clocks = <&cru SCLK_CIF_OUT>;
	clock-names = "xvclk";

	avdd-supply = <&vcc2v8_dvp>;
	dovdd-supply = <&vcc1v8_dvp>;
	dvdd-supply = <&vdd1v5_dvp>;
	enable-gpios = <&gpio0 RK_PC3 GPIO_ACTIVE_HIGH>;
	pwdn-gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_LOW>;
	pinctrl-names = "default";
	//pinctrl-0 = <&cif_clkout_m0>;

	rockchip,camera-module-index = <0>;
	rockchip,camera-module-facing = "back";
	rockchip,camera-module-name = "TongJu";
	rockchip,camera-module-lens-name = "CHT842-MD";
	
	port {
		ucam_out: endpoint {
			remote-endpoint = <&mipi_in_ucam>;
			//link-frequencies = /bits/ 64 <200000000>;
			data-lanes = <1 2>;
		};
	};
};`

❓ What I'm trying to find out

  • Are there any additional steps required to fully enable the IMX219 sensor (e.g., DTS modifications, driver patches, or specific configuration settings)?
  • Does the Raspberry Pi V2 IMX219 module have known compatibility issues with RK1808 or Rockchip ISP?

Any guidance or working examples would be greatly appreciated.

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions