summaryrefslogtreecommitdiff
path: root/sys/dev/evdev
diff options
context:
space:
mode:
authorVladimir Kondratyev <wulf@FreeBSD.org>2020-11-30 15:10:41 +0000
committerVladimir Kondratyev <wulf@FreeBSD.org>2021-01-07 23:18:41 +0000
commit5af73ad51b8c2e640608af0b7a1982be5c204b96 (patch)
tree2439534a1f9746b72f715a65f70a707c285d2442 /sys/dev/evdev
parent95e1f0d6847060f9c7d90b6b7655b64029929efd (diff)
Diffstat (limited to 'sys/dev/evdev')
-rw-r--r--sys/dev/evdev/evdev.c7
-rw-r--r--sys/dev/evdev/evdev.h2
-rw-r--r--sys/dev/evdev/evdev_mt.c1
-rw-r--r--sys/dev/evdev/uinput.c7
4 files changed, 7 insertions, 10 deletions
diff --git a/sys/dev/evdev/evdev.c b/sys/dev/evdev/evdev.c
index 33db241da27d..8d520e3ac09e 100644
--- a/sys/dev/evdev/evdev.c
+++ b/sys/dev/evdev/evdev.c
@@ -477,16 +477,15 @@ evdev_support_rel(struct evdev_dev *evdev, uint16_t code)
}
inline void
-evdev_support_abs(struct evdev_dev *evdev, uint16_t code, int32_t value,
- int32_t minimum, int32_t maximum, int32_t fuzz, int32_t flat,
- int32_t resolution)
+evdev_support_abs(struct evdev_dev *evdev, uint16_t code, int32_t minimum,
+ int32_t maximum, int32_t fuzz, int32_t flat, int32_t resolution)
{
struct input_absinfo absinfo;
KASSERT(code < ABS_CNT, ("invalid evdev abs property"));
absinfo = (struct input_absinfo) {
- .value = value,
+ .value = 0,
.minimum = minimum,
.maximum = maximum,
.fuzz = fuzz,
diff --git a/sys/dev/evdev/evdev.h b/sys/dev/evdev/evdev.h
index b897a465b338..f584e52fc8e4 100644
--- a/sys/dev/evdev/evdev.h
+++ b/sys/dev/evdev/evdev.h
@@ -117,7 +117,7 @@ void evdev_support_event(struct evdev_dev *, uint16_t);
void evdev_support_key(struct evdev_dev *, uint16_t);
void evdev_support_rel(struct evdev_dev *, uint16_t);
void evdev_support_abs(struct evdev_dev *, uint16_t, int32_t, int32_t, int32_t,
- int32_t, int32_t, int32_t);
+ int32_t, int32_t);
void evdev_support_msc(struct evdev_dev *, uint16_t);
void evdev_support_led(struct evdev_dev *, uint16_t);
void evdev_support_snd(struct evdev_dev *, uint16_t);
diff --git a/sys/dev/evdev/evdev_mt.c b/sys/dev/evdev/evdev_mt.c
index fc19e497c691..1f9c9756db02 100644
--- a/sys/dev/evdev/evdev_mt.c
+++ b/sys/dev/evdev/evdev_mt.c
@@ -185,7 +185,6 @@ evdev_support_mt_compat(struct evdev_dev *evdev)
for (i = 0; i < nitems(evdev_mtstmap); i++)
if (bit_test(evdev->ev_abs_flags, evdev_mtstmap[i][0]))
evdev_support_abs(evdev, evdev_mtstmap[i][1],
- evdev->ev_absinfo[evdev_mtstmap[i][0]].value,
evdev->ev_absinfo[evdev_mtstmap[i][0]].minimum,
evdev->ev_absinfo[evdev_mtstmap[i][0]].maximum,
evdev->ev_absinfo[evdev_mtstmap[i][0]].fuzz,
diff --git a/sys/dev/evdev/uinput.c b/sys/dev/evdev/uinput.c
index 3edf14284a1f..ceecee652ac3 100644
--- a/sys/dev/evdev/uinput.c
+++ b/sys/dev/evdev/uinput.c
@@ -525,10 +525,9 @@ uinput_ioctl_sub(struct uinput_cdev_state *state, u_long cmd, caddr_t data)
if (uabs->code > ABS_MAX)
return (EINVAL);
- evdev_support_abs(state->ucs_evdev, uabs->code,
- uabs->absinfo.value, uabs->absinfo.minimum,
- uabs->absinfo.maximum, uabs->absinfo.fuzz,
- uabs->absinfo.flat, uabs->absinfo.resolution);
+ evdev_set_abs_bit(state->ucs_evdev, uabs->code);
+ evdev_set_absinfo(state->ucs_evdev, uabs->code,
+ &uabs->absinfo);
return (0);
case UI_SET_EVBIT: