主题中讨论的其他器件:AM62P、、 ADS7846
工具与软件:
尊敬的 TI 专家:
我们的电路板使用 TI AM62P SOC 与 SDK10 (内核6.6)。
我们 在 MCU_spi0和 GPIO0_7中进行了 TSC2046触控、用于 PEN 中断
DTS 如下所示
&main_pmx0 { bootph-all; // Touchscreen PEN IRQ penirq_pins: pinmux_penirq_pins { pinctrl-single,pins = < AM62PX_IOPAD(0x001c, PIN_INPUT, 7) /* (N21) OSPI0_D4.GPIO0_7 TS2046_PENIRQ */ >; }; }; &mcu_pmx0{ // MCU_SPI0 mcu_spi0_pins_default: mcu-spi0-pins-default { pinctrl-single,pins = < AM62PX_MCU_IOPAD(0x0008, PIN_OUTPUT, 0) /* (C10) MCU_SPI0_CLK */ AM62PX_MCU_IOPAD(0x0000, PIN_OUTPUT, 0) /* (B10) MCU_SPI0_CS0 */ AM62PX_MCU_IOPAD(0x000c, PIN_OUTPUT, 0) /* (B11) MCU_SPI0_D0 */ AM62PX_MCU_IOPAD(0x0010, PIN_INPUT, 0) /* (D10) MCU_SPI0_D1 */ >; }; }; &mcu_spi0{ status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&mcu_spi0_pins_default>; #address-cells = <1>; #size-cells= <0>; ti,pindir-d0-out-d1-in = <1>; tsc2046@0{ reg = <0>; compatible = "ti,tsc2046"; spi-max-frequency = <1000000>; pinctrl-names = "default"; pinctrl-0 = <&penirq_pins>; interrupt-parent = <&main_gpio0>; interrupts = <7 IRQ_TYPE_NONE>; /* (N21) OSPI0_D4.GPIO0_7 TS2046_PENIRQ */ pendown-gpio = <&main_gpio0 7 GPIO_ACTIVE_HIGH>; ti,x-min = /bits/ 16 <0>; ti,x-max = /bits/ 16 <8000>; ti,y-min = /bits/ 16 <0>; ti,y-max = /bits/ 16 <4800>; ti,x-plate-ohms = /bits/ 16 <200>; /*ti,pressure-min = /bits/ 16 <50>;*/ ti,pressure-max = /bits/ 16 <4095>; ti,debounce-max = /bits/ 16 <10>; ti,debounce-tol = /bits/ 16 <5>; ti,debounce-rep = /bits/ 16 <1>; ti,penirq-recheck-delay-usecs = /bits/ 16 <2>; /*ti,swap-xy;*/ /*ti,settle-delay-usec = /bits/ 16 <150>;*/ ti,vref-delay-usecs = /bits/ 16 <2>; ti,vref-mv = /bits/ 16 <0>; ti,keep-vref-on; wakeup-source; }; };
目前、当我使用ts_calibrate
和时ts_test
、触摸输入没有响应。
我检查中断是否正常、但 dmesg 没有为 ti、tsc2046显示 spi_device_id
root@am62pxx-evm:~# dmesg | grep ads [ 0.819277] SPI driver ads7846 has no spi_device_id for ti,tsc2046 [ 0.825597] SPI driver ads7846 has no spi_device_id for ti,ads7843 [ 0.831912] SPI driver ads7846 has no spi_device_id for ti,ads7845 [ 0.838229] SPI driver ads7846 has no spi_device_id for ti,ads7873 [ 6.109755] ads7846 spi0.0: supply vcc not found, using dummy regulator [ 6.124741] ads7846 spi0.0: touchscreen, irq 303 root@am62pxx-evm:~# cat /proc/interrupts | grep 303 303: 255937 0 0 0 GPIO 7 Edge -davinci_gpio ads7846
您能帮助我检查 DTS 中配置错误的位置吗?