首先需要查看,在硬件中gt911触摸IC连接到哪个i2c总线上,由于我连接的是i2c2的,因此在设备树上要在i2c2节点里面,写上gt911设备
&i2c2 {
status = "okay";
pinctrl-0 = <&i2c2m1_xfer>;
gt911@5d {
pinctrl-names = "default";
pinctrl-0 = <>911_int_pin
>911_rst_pin>;
compatible = "goodix,gt911";
reg = <0x5d>;
interrupt-parent = <&gpio0>;
interrupts = <RK_PC7 0>;
irq-gpios = <&gpio0 RK_PC7 0>;
reset-gpios = <&gpio2 RK_PD0 GPIO_ACTIVE_HIGH>;
};
};
然后需要在内核菜单中勾选gt911的驱动选项
然后保存退出,驱动就可以正常使用
总结:主要一个是需要将中断的IO写正确,并且初始化正确,之前出现一个问题,IO没有正确初始化,导致无法触摸,其他的只要设备地址正确,触摸范围正确,基本就不会有问题。