Input: polldev - immediately poll device upon opening
To allow open/ioctl(EVIOCGABS)/close use pattern for polled devices read the device in context of open() call instead of offloading the first read to a workqueue. This will ensure that once call to open() returns device would have cached reasonably recent axis values that can be retrieved via appropriate ioctl. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
This commit is contained in:
parent
11205bb63e
commit
5e3e4eb1bf
|
@ -49,8 +49,10 @@ static int input_open_polled_device(struct input_dev *input)
|
||||||
dev->open(dev);
|
dev->open(dev);
|
||||||
|
|
||||||
/* Only start polling if polling is enabled */
|
/* Only start polling if polling is enabled */
|
||||||
if (dev->poll_interval > 0)
|
if (dev->poll_interval > 0) {
|
||||||
queue_delayed_work(system_freezable_wq, &dev->work, 0);
|
dev->poll(dev);
|
||||||
|
input_polldev_queue_work(dev);
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue