Jetson Nano CSI相机驱动调试注意

本文介绍Jetson Nano通过CSI接口连接外部Sensor驱动调试注意事项。

1.I2C配置

Jetson Nano默认I2C采用的是CAM_I2C,但有时候硬件设计时采用的是其他I2C,如:

i2c0 = "/i2c@7000c000";
i2c1 = "/i2c@7000c400";
i2c2 = "/i2c@7000c500";
i2c3 = "/i2c@7000c700";
i2c4 = "/i2c@7000d000";
i2c5 = "/i2c@7000d100";
i2c6 = "/host1x/i2c@546c0000";

这里要注意在配置设备树时I2C的路径是不一样的,CAM_I2C采用的是编号为6的I2C,那么它的路径就是:/host1x/,而其他路径都是在根目录下,编写设备树时尤其注意。

如采用CAM_I2C设备树配置:

/ {
    host1x {
		i2c@546c0000 {
			rbpcv2_ov9734_a@10 {
				reset-gpios = <&gpio CAM1_PWDN GPIO_ACTIVE_HIGH>;
			};
		};
	};

    gpio@6000d000 {
		camera-control-output-low {
			gpio-hog;
			output-low;
			gpios = < CAM1_PWDN 0 >;
			label = "cam1-pwdn";
		};
	};
};

而采用I2C1时设备树配置:

/ {
	i2c@7000c400 {
		rbpcv2_os08a10_a@36 {
			clocks = <&tegra_car TEGRA210_CLK_CLK_OUT_3>;
			clock-names = "clk_out_3";
			clock-frequency = <24000000>;
			mclk = "clk_out_3";

			reset-gpios = <&gpio CAM1_PWDN GPIO_ACTIVE_HIGH>;
		};
	};

	gpio@6000d000 {
		camera-control-output-low {
			gpio-hog;
			output-high;
			gpios = < CAM1_PWDN 0 >;
			label = "cam1-pwdn";
		};
	};
};

可以明显看出路径的不同。

同时注意:proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/rbpcv2_ov9734_a@10";这个地方也需作相应的修改。

2.MCLK配置

如果Sensor没有外接晶振,想使用Jetson Nano的MCLK输出作为时钟源,可在相应的块中,加入如下配置:

i2c@7000c400 {
	rbpcv2_ov9734_a@36 {
		clocks = <&tegra_car TEGRA210_CLK_CLK_OUT_3>;
		clock-names = "clk_out_3";
		clock-frequency = <24000000>;
		mclk = "clk_out_3";

		reset-gpios = <&gpio CAM1_PWDN GPIO_ACTIVE_HIGH>;
	};
};

这里可以看出,MCLK采用的是clk_out_3进行输出的,这里设置的是24MHz输出,添加完此配置,MCLK0,MCLK1都是有输出的(相机启动时才有)。

3.port-index

port-index:0-5

分别对应CSI_A,B,C,D,E,F

如采用CSI_C,则port-index=2,DTS中相关配置:

tegra_sinterface = "serial_c";

port-index = <2>;

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值