Re: Elantech touchpad not working on mainline kernels

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

 



On Wed, Jul 21, 2021 at 10:42 PM Dmitry Torokhov
<dmitry.torokhov@xxxxxxxxx> wrote:
>
> On Wed, Jul 21, 2021 at 12:53 PM Hans Schultz <hans.schultz@xxxxxxxxxxx> wrote:
> >
> > On Wed, 2021-07-21 at 21:31 +0200, Hans Schultz wrote:
> > > Hi Dmitry,
> > >
> > > On Wed, 2021-07-21 at 12:14 -0700, Dmitry Torokhov wrote:
> > > > On Wed, Jul 21, 2021 at 11:09 AM Hans Schultz <
> > > > hans.schultz@xxxxxxxxxxx> wrote:
> > > > >
> > > > > On Wed, 2021-07-21 at 10:48 -0700, Dmitry Torokhov wrote:
> > > > > > Hi Hans,
> > > > > >
> > > > > > On Sun, May 30, 2021 at 2:12 AM Hans Schultz <
> > > > > > hans.schultz@xxxxxxxxxxx> wrote:
> > > > > > >
> > > > > > > Hello,
> > > > > > > I have a problem getting my Elantech touchpad to work with
> > > > > > > the
> > > > > > > mainline
> > > > > > > kernels, and I need some assistance with the code to resolve
> > > > > > > the
> > > > > > > problem.
> > > > > > > The kernels that have tried are 5.9.11 and 5.11.11.
> > > > > > >
> > > > > > > With boot parameters i8042.notimeout i8042.nomux, the
> > > > > > > touchpad is
> > > > > > > detected but does not work. There is absolutely no response
> > > > > > > from
> > > > > > > it
> > > > > > > with any hid modules loaded.
> > > > > > >
> > > > > > > It is reported and seen working on a Lubuntu distro (bionic
> > > > > > > kernel)
> > > > > > > when inserting the i2c_hid module. The insertion of the
> > > > > > > i2c_hid
> > > > > > > module
> > > > > > > pulls in the hid_multitouch module when it works, no boot
> > > > > > > parameters
> > > > > > > necessary.
> > > > > > > In the case where it does not work, insering the i2c_hid
> > > > > > > module
> > > > > > > does
> > > > > > > not pull in the hid_multitouch module.
> > > > > > >
> > > > > > > I have the bionic kernel code, but I have not as of yet been
> > > > > > > able
> > > > > > > to
> > > > > > > detect what makes it work in contrast to the kernel.org
> > > > > > > kernels.
> > > > > > >
> > > > > > > This I think should lead to a kernel patch.
> > > > > >
> > > > > > There is not much to go on with. What is the hardware, your
> > > > > > kernel
> > > > > > .config, dmesg from unsuccessful boot? If you have logs from
> > > > > > the
> > > > > > working kernel that would help too.
> > > > > >
> > > > > > Thanks.
> > > > > >
> > > > >
> > > > > The best info I have on the hardware is from Xorg log with the
> > > > > working
> > > > > Lubuntu kernel:
> > > > > [ 130.980] (II) Loading
> > > > > /usr/lib/xorg/modules/input/synaptics_drv.so
> > > > > [ 130.982] (II) Module synaptics: vendor="X.Org Foundation"
> > > > > [ 130.982] (II) Using input driver 'synaptics' for '0X45 0X4C
> > > > > 0X41
> > > > > 0:00
> > > > > 04F3:308C Touchpad'
> > > > >
> > > > > I might be able to get the kernel messages when inserting the
> > > > > working
> > > > > module, but I think it will not tell much more.
> > > >
> > > > OK, if you say so. Then the only suggestion I have is to verify
> > > > that
> > > > your kernel config enables all necessary options for your hardware.
> > > > I'd double check if you have Designware I2C controller enabled,
> > > > ACPI
> > > > LPSS, etc.
> > > >
> > > > > To me it is clearly a code issue as the working kernel pulls in
> > > > > hid_multitouch when inserting i2c_hid, while the non-working does
> > > > > not.
> > > > >
> > > > > All kernels I have tried up to now from kernel.org do not work.
> > > > > The
> > > > > latest being 5.13.4.
> > > >
> > > > Thanks.
> > > >
> > >
> > > I have a thread with all the dmesg info for both the working and non-
> > > working cases here :
> > > https://gitlab.freedesktop.org/libinput/libinput/-/issues/544
> > >
> > > Benjamin has also asked for the acpidump info, which is there. (funny
> > > as the responses to my problem come at the same time after a long
> > > time.
> > > :-) )
> > >
> > > I will check my .config...
> > >
> > > Thanks,
> > > Hans
> >
> > Here are my I2C kernel settings. I only added what I could see as with
> > Intel hw, so no Designware!
>
> However if you consult the dmesg from the working kernel you will observe:
>
> [   79.964148] input: 0X45 0X4C 0X41 0:00 04F3:308C Mouse as
> /devices/pci0000:00/0000:00:15.3/i2c_designware.1/i2c-8/i2c-0X45 0X4C
> 0X41 0:00/0018:04F3:308C.0002/input/input24
> [   79.964222] input: 0X45 0X4C 0X41 0:00 04F3:308C Touchpad as
> /devices/pci0000:00/0000:00:15.3/i2c_designware.1/i2c-8/i2c-0X45 0X4C
> 0X41 0:00/0018:04F3:308C.0002/input/input26
>
> so it clearly uses designware-compatible IP block even though it is an
> Intel system.

FWIW, I think Intel platform *always* rely on designware for the I2C
adapter implementation. So if you haven't enabled that driver there is
no chance for you to have a working touchpad.

Cheers,
Benjamin

>
> Can you try grabbing config from the working kernel and use it if you
> want to compile your own? There are a lot of hardware dependencies in
> modern systems that may not be immediately obvious.
>
> Thanks.
>
> --
> Dmitry



[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