[PATCH libinput 1/2] udev: fix ALPS firmware detection

Peter Hutterer peter.hutterer at who-t.net
Tue Feb 9 21:36:26 UTC 2016


On Tue, Feb 09, 2016 at 11:49:33AM +0100, Emilio Pozuelo Monfort wrote:
> On 09/02/16 03:12, Peter Hutterer wrote:
> > The firmware version is in id.version, not id.model which is always
> > PSMOUSE_ALPS for ALPS devices.
> > 
> > The various fw versions are listed in <kernel>/drivers/input/mouse/alps.h and
> > are all hex numbers. Version 8 is actually 0x800, change the match
> > accordingly.
> > 
> > Expected side-effect: earlier versions of ALPS touchpads now lose their
> > (erroneous) size assignment.
> > 
> > Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
> > ---
> >  udev/90-libinput-model-quirks.hwdb | 4 ++--
> >  udev/libinput-model-quirks.c       | 4 ++--
> >  2 files changed, 4 insertions(+), 4 deletions(-)
> > 
> > diff --git a/udev/90-libinput-model-quirks.hwdb b/udev/90-libinput-model-quirks.hwdb
> > index f23a7f9..6225da1 100644
> > --- a/udev/90-libinput-model-quirks.hwdb
> > +++ b/udev/90-libinput-model-quirks.hwdb
> > @@ -22,8 +22,8 @@ libinput:name:*AlpsPS/2 ALPS DualPoint TouchPad:dmi:*
> >  libinput:name:*AlpsPS/2 ALPS GlidePoint:dmi:*
> >   LIBINPUT_MODEL_ALPS_TOUCHPAD=1
> >  
> > -libinput:name:*AlpsPS/2 ALPS DualPoint TouchPad:fwversion:8
> > -libinput:name:*AlpsPS/2 ALPS GlidePoint:fwversion:8
> > +libinput:name:*AlpsPS/2 ALPS DualPoint TouchPad:fwversion:800
> > +libinput:name:*AlpsPS/2 ALPS GlidePoint:fwversion:800
> >   LIBINPUT_ATTR_SIZE_HINT=100x55
> >  
> >  ##########################################
> > diff --git a/udev/libinput-model-quirks.c b/udev/libinput-model-quirks.c
> > index 67115fa..c8baae7 100644
> > --- a/udev/libinput-model-quirks.c
> > +++ b/udev/libinput-model-quirks.c
> > @@ -63,9 +63,9 @@ handle_touchpad_alps(struct udev_device *device)
> >  	if (sscanf(product, "%x/%x/%x/%x", &bus, &vid, &pid, &version) != 4)
> >  		return;
> >  
> > -	/* ALPS' firmware version is the PID */
> > +	/* ALPS' firmware version is the version */
> >  	if (pid)
> 
> Shouldn't that check for the version now?

yep, good catch, thanks. Fixed locally.

Cheers,
   Peter

> 
> > -		printf("LIBINPUT_MODEL_FIRMWARE_VERSION=%d\n", pid);
> > +		printf("LIBINPUT_MODEL_FIRMWARE_VERSION=%x\n", version);
> >  }
> >  
> >  static void
> > 
> 


More information about the wayland-devel mailing list