Re: Goodix Drive issue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Henry,

On 19-Mar-25 4:49 PM, Henry Isaac wrote:
> Hello,
> 
> Sorry about that, I'll be sure to select reply all next time.
> 
> For some reason I am still getting nothing on the sudo i2cdetect unless I am doing something wrong, I have attached the command line results as a .txt
> 
> I will add, I am unsure if this makes a difference but the touchscreen supports, and the tablet comes with a battery powered stylus, I am unsure if this feature of the touchscreen could cause any issues?

Well that is weird. I'm not quite sure what is going on here...

Do you know which driver the touchscreen uses under
Windows ? Maybe the manufacturer provides a separate
driver packages for the touchscreen for Windows ?

Also I presume that the LCD panel of the tablet was
on during all these tests ?

Sometimes the touchscreen gets turned on/off together
with the LCD panel ...

Regards,

Hans



> On 19/03/2025 13:25, Hans de Goede wrote:
>> Hi Henry,
>>
>> Note I've added linux-input@xxxxxxxxxxxxxxx back to the Cc,
>> please use reply-to-all to keep it in the Cc.
>>
>> On 18-Mar-25 11:26 PM, Henry Isaac wrote:
>>> Hello Hans
>>>
>>> Sorry for the delay, had an issue with Endevour so I reinstalled but this time just used the normal Arch ISO (Sorry if his complicates things) I followed all the steps again and the new ones to be safe.
>>>
>>> At the i2c_hid part of the file it just says address unavailable, I hope this helps!
>> Since the new dmesg was not send to the list, here are the 2 relevant
>> new messages after enabling i2c_hid.dyndbg:
>>
>> [    5.553115] drivers/hid/i2c-hid/i2c-hid-core.c: HID probe called for i2c 0x5d
>> [    5.553819] i2c_hid_acpi i2c-GXTP7386:00: nothing at this address: -121
>>
>> Henry, this means that either the touchscreen is not at that address,
>> or it is but it is not powered on.
>>
>> The ACPI tables describe 5 possible touchscreens, there is
>> a possibility that somehow the wrong one is selected by the BIOS.
>>
>> First lets try to see if there is a touchscreen at a different
>> i2c-address.
>>
>> All ACPI touchscreen descriptions use the same i2c controller,
>> so first of all lets find out which i2c-bus Linux has assigned
>> to that controller, please run:
>>
>> ls -l /sys/bus/i2c/devices/i2c-GXTP7386:00
>>
>> Here is the output of that run on the touchscreen of a laptop:
>>
>> lrwxrwxrwx. 1 root root 0 Mar 19 11:24 /sys/bus/i2c/devices/i2c-ELAN901C:00 -> ../../../devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-1/i2c-ELAN901C:00
>>
>> notice the "/i2c-1/" in the output, this indicates that the touchscreen
>> on that laptop is on bus 1. Now install i2c-tools (not sure what
>> the Arch pkg name is) and run e.g.:
>>
>> sudo modprobe i2c_dev
>> sudo i2cdetect -y -r 1
>>
>> replacing "1" with the bus-number you found.
>>
>> Here is example output from the same laptop:
>>
>>       0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
>> 00:                         -- -- -- -- -- -- -- --
>> 10: 10 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 70: -- -- -- -- -- -- -- --
>>
>> This shows a single device on this bus at address 0x10.
>>
>> Maybe you will see a device here at address 0x10, 0x14,
>> 0x38, 0x40 or 0x5d .
>>
>> If you see a device at one of these addresses please
>> copy and paste the output in your next email and
>> then we will see from there.
>>
>> OTOH if you don't see a device at any of these addresses
>> lets try to see if we can power the touchscreen up by setting
>> its GPIO. According to the ACPI info GPIO-controller
>> GPO0 pin 0x3a (pin 58) is used for the touchscreen enable.
>>
>> First lets make sure that gpiochip0 matches GPO0,
>> install libgpiod-utils (Fedora pkg name) and run:
>>
>> sudo gpiodetect
>>
>> On your geminilake tablet I expect that to output
>> something like this:
>>
>> gpiochip0 [INT3453:00] (80 lines)
>> gpiochip1 [INT3453:01] (80 lines)
>> gpiochip2 [INT3453:02] (20 lines)
>> gpiochip3 [INT3453:03] (35 lines)
>>
>> The important thing here is that gpiochip0 is INT3453:00,
>> that may be different if there is some other GPIO chip
>> which got registered earlier.
>>
>> Assuming that gpiochip0 is INT3453:00 lets try to turn
>> the touchpad on:
>>
>> sudo gpioset -c gpiochip0 58=1
>>
>> (and then press Ctrl+C because gpioset keeps running
>> to hold ownership over the GPIO)
>>
>> and then re-run the i2cdetect:
>>
>> sudo i2cdetect -y -r 1
>>
>> again replacing "1" with the bus-number you found.
>>
>> Hopefully a device will show up now, if it does
>> please copy and paste the output in your next email.
>>
>> If there still is no device, then maybe the enable signal
>> is inverted, try running:
>>
>> sudo gpioset -c gpiochip0 58=0
>> (and then press Ctrl+C again)
>>
>> and re-run the i2cdetect:
>>
>> sudo i2cdetect -y -r 1
>>
>> Note if you do get a device found after running gpioset,
>> please also let me know if you got the device to show
>> up with 58=1 or with 58=0
>>
>> Regards,
>>
>> Hans
>>
>>





[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux