touchpad: init a default hysteresis for ALPS rushmore touchpads

https://bugs.freedesktop.org/show_bug.cgi?id=90590

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
Peter Hutterer 2016-02-09 10:43:45 +10:00
parent 1f304763b4
commit 07420eec05
5 changed files with 9 additions and 2 deletions

View file

@ -1994,7 +1994,8 @@ tp_init_hysteresis(struct tp_dispatch *tp)
res_x = tp->device->abs.absinfo_x->resolution;
res_y = tp->device->abs.absinfo_y->resolution;
if (tp->device->model_flags & EVDEV_MODEL_CYAPA) {
if (tp->device->model_flags &
(EVDEV_MODEL_CYAPA|EVDEV_MODEL_ALPS_RUSHMORE)) {
tp->hysteresis_margin.x = res_x/2;
tp->hysteresis_margin.y = res_y/2;
} else {

View file

@ -1679,6 +1679,7 @@ evdev_read_model_flags(struct evdev_device *device)
{ "LIBINPUT_MODEL_APPLE_INTERNAL_KEYBOARD", EVDEV_MODEL_APPLE_INTERNAL_KEYBOARD },
{ "LIBINPUT_MODEL_CYBORG_RAT", EVDEV_MODEL_CYBORG_RAT },
{ "LIBINPUT_MODEL_CYAPA", EVDEV_MODEL_CYAPA },
{ "LIBINPUT_MODEL_ALPS_RUSHMORE", EVDEV_MODEL_ALPS_RUSHMORE },
{ NULL, EVDEV_MODEL_DEFAULT },
};
const struct model_map *m = model_map;

View file

@ -112,6 +112,7 @@ enum evdev_device_model {
EVDEV_MODEL_APPLE_INTERNAL_KEYBOARD = (1 << 13),
EVDEV_MODEL_CYBORG_RAT = (1 << 14),
EVDEV_MODEL_CYAPA = (1 << 15),
EVDEV_MODEL_ALPS_RUSHMORE = (1 << 16),
};
struct mt_slot {

View file

@ -26,6 +26,10 @@ libinput:name:*AlpsPS/2 ALPS DualPoint TouchPad:fwversion:800
libinput:name:*AlpsPS/2 ALPS GlidePoint:fwversion:800
LIBINPUT_ATTR_SIZE_HINT=100x55
libinput:name:*AlpsPS/2 ALPS DualPoint TouchPad:fwversion:310
libinput:name:*AlpsPS/2 ALPS GlidePoint:fwversion:310
LIBINPUT_MODEL_ALPS_RUSHMORE=1
##########################################
# Apple
##########################################

View file

@ -64,7 +64,7 @@ handle_touchpad_alps(struct udev_device *device)
return;
/* ALPS' firmware version is the version */
if (pid)
if (version)
printf("LIBINPUT_MODEL_FIRMWARE_VERSION=%x\n", version);
}