aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/evdev
diff options
context:
space:
mode:
authorVladimir Kondratyev <wulf@FreeBSD.org>2017-11-01 22:33:44 +0000
committerVladimir Kondratyev <wulf@FreeBSD.org>2017-11-01 22:33:44 +0000
commitc6e809423fde2f5ce02b9fef5910c34e434e7c36 (patch)
tree55d0a623f23f796934eab0427d8c0cc250b36466 /sys/dev/evdev
parentd52d8bce16a0e2f35a50fe57f4a4f29821f1dbba (diff)
downloadsrc-c6e809423fde2f5ce02b9fef5910c34e434e7c36.tar.gz
src-c6e809423fde2f5ce02b9fef5910c34e434e7c36.zip
evdev: Disable value normalization and state filtering for SND events.
Some events can take sound pitch as a value so can not be represented as binary on/off events. Tracking for on/off state is left in place as it is a part of the evdev API. Reviewed by: gonzo Approved by: gonzo (mentor) MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D12676
Notes
Notes: svn path=/head/; revision=325298
Diffstat (limited to 'sys/dev/evdev')
-rw-r--r--sys/dev/evdev/evdev.c2
-rw-r--r--sys/dev/evdev/evdev.h2
2 files changed, 1 insertions, 3 deletions
diff --git a/sys/dev/evdev/evdev.c b/sys/dev/evdev/evdev.c
index f00c76383864..56c814ecccdc 100644
--- a/sys/dev/evdev/evdev.c
+++ b/sys/dev/evdev/evdev.c
@@ -634,8 +634,6 @@ evdev_sparse_event(struct evdev_dev *evdev, uint16_t type, uint16_t code,
break;
case EV_SND:
- if (bit_test(evdev->ev_snd_states, code) == value)
- return (EV_SKIP_EVENT);
bit_change(evdev->ev_snd_states, code, value);
break;
diff --git a/sys/dev/evdev/evdev.h b/sys/dev/evdev/evdev.h
index 946913c4dd8b..31f0c2c3ccf9 100644
--- a/sys/dev/evdev/evdev.h
+++ b/sys/dev/evdev/evdev.h
@@ -197,7 +197,7 @@ static __inline int
evdev_push_snd(struct evdev_dev *evdev, uint16_t code, int32_t value)
{
- return (evdev_push_event(evdev, EV_SND, code, value != 0));
+ return (evdev_push_event(evdev, EV_SND, code, value));
}
static __inline int