diff options
| author | Peter Hutterer <peter.hutterer@who-t.net> | 2013-06-30 15:27:24 +1000 |
|---|---|---|
| committer | Peter Hutterer <peter.hutterer@who-t.net> | 2013-06-30 15:27:24 +1000 |
| commit | fe30bf7d967380142256a0caa6cfdc05fed57c9c (patch) | |
| tree | 15d8dc5e5306f3f93f70f613f724d58bbf881e9e /libevdev/libevdev.c | |
| parent | ca4b63d2b58cc3b06bdec2b4f26c1bd87b7e7d25 (diff) | |
| download | libevdev-fe30bf7d967380142256a0caa6cfdc05fed57c9c.tar.gz | |
Drop code for kernel-enabling bits
We can't enable axes on devices at runtime in the kernel, not even
for uinput devices. So this API can't work anyway, remove it before
someone thinks it does work.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'libevdev/libevdev.c')
| -rw-r--r-- | libevdev/libevdev.c | 61 |
1 files changed, 1 insertions, 60 deletions
diff --git a/libevdev/libevdev.c b/libevdev/libevdev.c index c3db8a1..4a9ab0e 100644 --- a/libevdev/libevdev.c +++ b/libevdev/libevdev.c @@ -848,65 +848,6 @@ libevdev_disable_event_code(struct libevdev *dev, unsigned int type, unsigned in } int -libevdev_kernel_enable_event_type(struct libevdev *dev, unsigned int type) -{ - int rc; - - if (type > EV_MAX) - return -1; - - rc = ioctl(dev->fd, UI_SET_EVBIT, type); - if (rc != -1) - libevdev_enable_event_type(dev, type); - - return (rc != -1) ? 0 : -errno; -} - -int -libevdev_kernel_enable_event_code(struct libevdev *dev, unsigned int type, - unsigned int code, const void *data) -{ - int rc; - int uinput_bit; - int max; - const unsigned long *mask; - - rc = libevdev_kernel_enable_event_type(dev, type); - if (rc != 0) - return rc; - - max = type_to_mask_const(dev, type, &mask); - if (max == -1 || code > max) - return -EINVAL; - - switch(type) { - case EV_KEY: uinput_bit = UI_SET_KEYBIT; break; - case EV_REL: uinput_bit = UI_SET_RELBIT; break; - case EV_ABS: uinput_bit = UI_SET_ABSBIT; break; - case EV_MSC: uinput_bit = UI_SET_MSCBIT; break; - case EV_LED: uinput_bit = UI_SET_LEDBIT; break; - case EV_SND: uinput_bit = UI_SET_SNDBIT; break; - case EV_FF: uinput_bit = UI_SET_FFBIT; break; - case EV_SW: uinput_bit = UI_SET_SWBIT; break; - } - - rc = ioctl(dev->fd, uinput_bit, type); - if (rc == -1) - goto out; - - rc = libevdev_enable_event_type(dev, type); - if (rc == -1) - goto out; - - /* FIXME: can't back out of this if it fails */ - if (type == EV_ABS) - rc = libevdev_kernel_set_abs_value(dev, code, (const struct input_absinfo*)data); - -out: - return (rc != -1) ? 0 : -errno; -} - -int libevdev_kernel_set_abs_value(struct libevdev *dev, unsigned int code, const struct input_absinfo *abs) { int rc; @@ -914,7 +855,7 @@ libevdev_kernel_set_abs_value(struct libevdev *dev, unsigned int code, const str if (code > ABS_MAX) return -EINVAL; - rc = ioctl(dev->fd, EVIOCSABS(code), *abs); + rc = ioctl(dev->fd, EVIOCSABS(code), abs); if (rc < 0) rc = -errno; else |
