Re: Elantech Touchpad Woes - Support for Elantech touchpads over i2c/SMBus still possibly missing

From: Greg V <greg_at_unrelenting.technology>
Date: Sat, 02 Jun 2018 13:26:03 +0300
On Sat, Jun 2, 2018 at 3:14 AM, Albert <dsifriend_at_gmail.com> wrote:
> Hi all,
> 
> 
> I'd like to start out by saying that I'm a newcomer to FreeBSD, but 
> I've been running Linux for years now and I'm still having a few 
> issues transitioning. Despite that. I've been having a blast setting 
> things up for myself, and I'm hopeful I can get this resolved soon 
> enough.
> 
> I'm trying to get FreeBSD running on my laptop, an "Acer Chromebook 
> 14" (EDGAR), and although I've managed to overcome most of the 
> problems I've faced along the way (needing to upgrade to a UEFI, 
> misnamed wireless modules, video drivers not working on RELEASE nor 
> STABLE), I just can't seem to get the touchpad on this thing to work.
> 
> For reference, EDGAR is an Intel Celeron N3160 SoC. Pretty much the 
> only thing in it that isn't Intel are the case, the keyboard, the 
> webcam and the touchpad. On Linux, the touchpad appears in _/proc_ as
> [...]
> and it can be seen from _lsmod_ as *elan_i2c*. The source for the 
> corresponding driver can be found here: Google ChromeOS Git. 
> <https://chromium.googlesource.com/chromiumos/third_party/kernel-next/+/chromeos-elan-3.14/drivers/input/mouse/elan_i2c_core.c>
> 
> Now on FreeBSD, it's as though it didn't even exist. Without applying 
> any of the changes I've tried to get it working, here's the (verbose) 
> output to _dmesg_ on FreeBSD: (vdmesg-nochanges 
> <https://gist.github.com/dsifriend/7d3635937f0d16ced7ef572cdb6ba02d#file-vdmesg-nochanges-txt>). 
> With the knowledge I have so far, this is to be expected, as it seems 
> FreeBSD requires the *ig4* module to work with *i2c* devices. Loading 
> it at boot does seem to make the buses visible, but the touchpad 
> still doesn't appear (or not properly, I don't know all these codes): 
> (vdmesg-ig4 
> <https://gist.github.com/dsifriend/7d3635937f0d16ced7ef572cdb6ba02d#file-vdmesg-ig4-txt>). 
> The obvious solution is to enable support for elantech devices with 
> _hw.psm.elantech_support_, but nada: (vdmesg-elantech 
> <https://gist.github.com/dsifriend/7d3635937f0d16ced7ef572cdb6ba02d#file-vdmesg-elantech-txt>). 
> The only difference is _sysctl_ shows that option is enabled. Aside 
> from that, it seems I'm not the only one who's had this sort of issue 
> before, so support has been worked on and is claimed to be working. 
> Loading the recommended cyapa and chromebook_platform modules at boot 
> does not fix this issue: (vdmesg-chromebook 
> <https://gist.github.com/dsifriend/7d3635937f0d16ced7ef572cdb6ba02d#file-vdmesg-chromebook-txt>). 
> The reason appears, at least to me, to be that the cyapa driver isn't 
> a proper elan driver. These are /different/ devices.
> 
> I'm determined to get this working /somehow/, so any help would be 
> appreciated. It feels like there's a solution here somewhere and I'm 
> either too dumb to find it or it's just not there quite yet. If it's 
> the latter, I'm willing to put some work into porting the right 
> driver with a little guidance. (I have plenty of experience with C 
> but none of this driver stuff.)

Hi! hw.psm.elantech_support is not the solution. hw.psm... psm means 
PS/2 Mouse. This is for PS/2 Elantech touchpads.

cyapa is indeed not the right driver either. The "cy" is for Cypress. 
That's the touchpad found in e.g. the Acer C720.

So there's no support for your touchpad right now.

OpenBSD has HID over i2c support: https://man.openbsd.org/imt -- you 
could try porting that...

Also, should be possible to add i2c support to webcamd I guess, that 
would get the Linux driver running in userspace.
Received on Sat Jun 02 2018 - 08:26:17 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:16 UTC