请问,我在spi0上挂载了一个电阻触摸屏芯片tsc2046,设备树配置如下:
/**********spi**********/
&spi0 {
status = "okay";
pinctrl-names = "default";
num-cs = <1>;
pinctrl-0 = <&spi0_csn1_pins &spi0_clk_pins>;
spi_touch_controller@0 {
compatible = "ti,ads7846","ti,tsc2046";
status = "okay";
reg = <0>;
spi-max-frequency = <1000000>;
interrupt-parent = <&gpio0>;
interrupts = <4 0>;
pendown-gpio = <&gpio0 4 0>;
ti,x-min = /bits/ 16 <0>;
ti,x-max = /bits/ 16 <1024>;
ti,y-min = /bits/ 16 <0>;
ti,y-max = /bits/ 16 <1024>;
ti,x-plate-ohms = /bits/ 16 <500>;
ti,y-plate-ohms = /bits/ 16 <400>;
ti,settle-delay-usec = /bits/ 16 <150>;
linux,wakeup;
};
};
启动时,SPI总线上有信号,能够正确初始化芯片并创建input设备,但cs管脚spi0_csn1_pins一直为高电平。是哪里出了问题?需要从何处排查?
SPI 触摸屏配置,CS管脚无作用
您好, 如果一定需要spi0_csn1_pins作为片选引脚可以考虑使用 cs-gpios = <&gpioX RK_PXX GPIO_ACTIVE_LOW>来添加片选,
num-cs = <1> 可能默认情况下会用 spi0_csn0_pins,pinctrl中没有声明导致实际没有作用,具体还需要结合源码和日志分析
num-cs = <1> 可能默认情况下会用 spi0_csn0_pins,pinctrl中没有声明导致实际没有作用,具体还需要结合源码和日志分析