Search code examples
linuxtouchlinux-device-driveri2c

How can I get an i2c touch device work on linux?


I am using a touch screen which has gt9271. It is connected via i2c.

Whats wrong

It just dont show up in /dev/input. There is only a event0, which is the keyboard according to what dmesg shows. Document says it should show up as event1, but it did not.

Envirounment

It is a STM32MP157 board runnning Debian Stretch based linux, from the manufacture.
uname -a shows Linux PanGuBoard 4.19.43 #1 SMP PREEMPT Thu Aug 22 17:02:06 UTC 2019 armv7l GNU/Linux

What did I check

I saw its driver in linux kernel 4.19 source.
I decompiled my dtb file and confirmed it is configured.
I also checked dmesg and found nothing about gt9271 in it.

Since it is a STM32MP157 board, I tried the system based on stlinux which is also from the manufacture.
The /dev/input/event1 shows up and works fine. dmesg shows its discovery too.

Any advice what I should do or did I miss something important?


Solution

  • Finally I recompiled linux kernel and its modules with the code given by manufacture, and the problem solved. It turns out that they give me the wrong kernel image which has neither goodix driver compiled nor module support.