以MT6789平台上调试VI530X TOF测距芯片,分享下调试经验。
VI5300模组规格书中可以看到测距时序,需要avdd外部供电,XSHUT使能脚拉高。Irq中断脚工作状态拉低,两外还有i2c的SCL, SDA脚。
1.GPIO配置:xshut,irq和AVDD供电。
2.添加vi530x驱动
kernel-5.15/drivers/misc/mediatek/lens/tof/vi530x/
3.加载vi530x.ko模块配置
kernel-5.15/arch/arm64/configs/mgk_64_k515_defconfig
CONFIG_MTK_V4L2_LENS=m
+++CONFIG_MTK_VI530X=m
4.dts设备树添加vi530x
kernel-5.15/arch/arm64/boot/dts/mediatek/k6835v1_64.dts
&i2c0 {
clock-frequency = <400000>;
status = "okay";
+++ vi530x@6c {
+++ compatible = "evisionics,vi530x";
+++ reg = <0x6c>;
+++ status = "okay";
+++ vi530x,avdd-gpio = <&pio 8 1>;
+++ vi530x,irq-gpio = <&pio 39 0x2800>;
+++ vi530x,xshut-gpio = <&pio 40 1>;
+++ };
};