aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/atkbdc
diff options
context:
space:
mode:
authorJean-Sébastien Pédron <dumbbell@FreeBSD.org>2018-01-20 11:21:22 +0000
committerJean-Sébastien Pédron <dumbbell@FreeBSD.org>2018-01-20 11:21:22 +0000
commitb9b766ae4708627ab5f62377c30ec070b6dd103d (patch)
tree1d30b9566f9aadbdfb9bf8b098b72e3529bb2874 /sys/dev/atkbdc
parent9402bd96df8000c2ac5d9c239ff746919af0dd66 (diff)
downloadsrc-b9b766ae4708627ab5f62377c30ec070b6dd103d.tar.gz
src-b9b766ae4708627ab5f62377c30ec070b6dd103d.zip
psm: Don't try to detect trackpoint packets if the Elantech device has none
This fixes a panic when `EVDEV_SUPPORT` is enabled: if a trackpoint packet was detected but there was no trackpoint, we still tried to emit an evdev event even though the associated relative evdev device (`evdev_r`) was not initialized. PR: 225339 MFC after: 1 week
Notes
Notes: svn path=/head/; revision=328191
Diffstat (limited to 'sys/dev/atkbdc')
-rw-r--r--sys/dev/atkbdc/psm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/atkbdc/psm.c b/sys/dev/atkbdc/psm.c
index 8037ea5513f1..c81442d05a3a 100644
--- a/sys/dev/atkbdc/psm.c
+++ b/sys/dev/atkbdc/psm.c
@@ -4187,7 +4187,7 @@ proc_elantech(struct psm_softc *sc, packetbuf_t *pb, mousestatus_t *ms,
/* Determine packet format and do a sanity check for out of sync packets. */
if (ELANTECH_PKT_IS_DEBOUNCE(pb, sc->elanhw.hwversion))
pkt = ELANTECH_PKT_NOP;
- else if (ELANTECH_PKT_IS_TRACKPOINT(pb))
+ else if (sc->elanhw.hastrackpoint && ELANTECH_PKT_IS_TRACKPOINT(pb))
pkt = ELANTECH_PKT_TRACKPOINT;
else
switch (sc->elanhw.hwversion) {