From a493e814663ddcb6353673e366bf61285b1695b5 Mon Sep 17 00:00:00 2001 From: Henrik Rydberg Date: Sun, 11 Apr 2010 15:24:28 +0200 Subject: Additional device information Add information about the device name and device identifier from the EVIO protocol. Signed-off-by: Henrik Rydberg --- src/capabilities.c | 9 +++++++++ src/capabilities.h | 2 ++ 2 files changed, 11 insertions(+) diff --git a/src/capabilities.c b/src/capabilities.c index 620ab60..804b626 100644 --- a/src/capabilities.c +++ b/src/capabilities.c @@ -56,6 +56,12 @@ int read_capabilities(struct Capabilities *cap, int fd) memset(cap, 0, sizeof(struct Capabilities)); + SYSCALL(rc = ioctl(fd, EVIOCGID, &cap->devid)); + if (rc < 0) + return rc; + SYSCALL(rc = ioctl(fd, EVIOCGNAME(sizeof(cap->devname)), cap->devname)); + if (rc < 0) + return rc; SYSCALL(rc = ioctl(fd, EVIOCGBIT(EV_SYN, sizeof(evbits)), evbits)); if (rc < 0) return rc; @@ -115,6 +121,9 @@ void output_capabilities(const struct Capabilities *cap) ADDCAP(line, cap, orientation); ADDCAP(line, cap, position_x); ADDCAP(line, cap, position_y); + xf86Msg(X_INFO, "multitouch: devname: %s\n", cap->devname); + xf86Msg(X_INFO, "multitouch: devid: %x %x %x\n", + cap->devid.vendor, cap->devid.product, cap->devid.version); xf86Msg(X_INFO, "multitouch: caps:%s\n", line); if (cap->has_touch_major) xf86Msg(X_INFO, "multitouch: touch: %d %d\n", diff --git a/src/capabilities.h b/src/capabilities.h index 591eed6..68835c6 100644 --- a/src/capabilities.h +++ b/src/capabilities.h @@ -25,6 +25,8 @@ #include "common.h" struct Capabilities { + struct input_id devid; + char devname[32]; int has_left, has_middle; int has_right, has_mtdata; int has_touch_major, has_touch_minor; -- cgit v1.2.3