| #
ecccc9d9
|
| 01-Dec-2025 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Allow setting of character device ownership and access mode
by device driver. That is required as game pad and joystick events have to be accessible by ordinary users.
MFC after: 1 month
|
| #
8b04f07e
|
| 07-Mar-2025 |
Joshua Rogers <Joshua@Joshua.Hu> |
sysmouse(4): Add wsp(4)-style T-Axis reporting.
Neither the ums(4) nor psm(4) reporting can be used by the wsp(4) driver, as they rely on static-length movements, while wsp(4) may need to scroll in
sysmouse(4): Add wsp(4)-style T-Axis reporting.
Neither the ums(4) nor psm(4) reporting can be used by the wsp(4) driver, as they rely on static-length movements, while wsp(4) may need to scroll in large amounts per evdev event push.
This style uses a false button-5 press as an indicator that the z-axis movement is a horizontal scroll, otherwise a vertical scroll.
Signed-off-by: Joshua Rogers <Joshua@Joshua.Hu>
show more ...
|
| #
95ee2897
|
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
| #
4a0db5e2
|
| 17-Nov-2022 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Extend EVIOCGRAB ioctl scope to cover sysmouse interface
of psm(4), ums(4) and sysmouse(4) drivers. EVIOCGRAB ioctl execution on /dev/input/event# device node gains exclusive access to this d
evdev: Extend EVIOCGRAB ioctl scope to cover sysmouse interface
of psm(4), ums(4) and sysmouse(4) drivers. EVIOCGRAB ioctl execution on /dev/input/event# device node gains exclusive access to this device to caller. It is used mostly for development purposes and remote control software. See e.g. https://reviews.freebsd.org/D30020 which is the reason of creation of this change.
MFC after: 2 weeks Tested by: corvink Differential revision: https://reviews.freebsd.org/D30542
show more ...
|
| #
efd8749f
|
| 02-Oct-2021 |
Gordon Bergling <gbe@FreeBSD.org> |
evdev: Fix a typo in a commit
- s/prefered/preferred/
MFC after: 3 days
|
| #
35bc295b
|
| 02-Sep-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Do not export multitouch functions which are unused outside evdev
|
| #
f76051c7
|
| 24-Aug-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Add implicit mode for touch tracking.
In implicit mode assignment of slot number and tracking id is performed automatically on each synchronization requested by device driver.
This is done w
evdev: Add implicit mode for touch tracking.
In implicit mode assignment of slot number and tracking id is performed automatically on each synchronization requested by device driver.
This is done with creation of intermediate buffer for multitouch events. This buffer holds untracked events until synchronization is requested by device driver. It is needed as touch assigment requires knowledges of all touch positions pushed in current and previous reports.
MFC after: 2 weeks
show more ...
|
| #
4c0a134e
|
| 24-Aug-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Import support for touch-tracking.
Touch tracking is a process of assignment of unique trackingID to each initiated contact on the surface. Keeping the trackingIDs persistent across multitou
evdev: Import support for touch-tracking.
Touch tracking is a process of assignment of unique trackingID to each initiated contact on the surface. Keeping the trackingIDs persistent across multitouch reports requires solving of so called Euclidian Bipartite Matching problem.
This commit imports EBM-solver implementation based on Dinitz-Kronrod algorithm to find minimum cost matching between contacts listed in two consecutive reports.
Obtained from: OpenBSD MFC after: 2 weeks
show more ...
|
| #
66bd52f5
|
| 24-Aug-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Make MT tracking IDs monotonically increasing sequence.
MFC after: 2 weeks
|
| #
05936028
|
| 24-Aug-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Give short aliases to items of evdev_mt_slot array
with using of unioned anonymous structure.
Access to the same data by using different members of union generally works despite it is not su
evdev: Give short aliases to items of evdev_mt_slot array
with using of unioned anonymous structure.
Access to the same data by using different members of union generally works despite it is not supported by C specs.
Also add helper function to report entire slot state.
MFC after: 2 weeks
show more ...
|
| #
98a7606b
|
| 24-Aug-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Multitouch code style changes.
1. Move touch count reporting helpers to utils. They are not multitouch. 2. Use evdev_mt prefix for private multitouch support routines. 3. Use int instead of i
evdev: Multitouch code style changes.
1. Move touch count reporting helpers to utils. They are not multitouch. 2. Use evdev_mt prefix for private multitouch support routines. 3. Use int instead of int32_t where fixed size is not required. 4. Export some internal functions.
This change should be no-op.
MFC after: 2 weeks
show more ...
|
| #
d276eae6
|
| 21-Apr-2020 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Make open(2) and close(3) handlers sleepable.
At the beginning of evdev there was a LOR between hardware driver's and evdev client list locks as they were taken in different order at driver's
evdev: Make open(2) and close(3) handlers sleepable.
At the beginning of evdev there was a LOR between hardware driver's and evdev client list locks as they were taken in different order at driver's interrupt and evdev open()/close() handlers.
The LOR was fixed with introduction of evdev_register_mtx() function which allowed to use a hardware driver's lock as evdev client list lock. While this works good with PS/2 and USB, this does not work with I2C. Unlike PS/2 and USB, I2C open()/close() handlers do unbound sleeps while waiting for I2C bus to release and while performing IO. This change uses epoch(9) for traversing evdev client list in interrupt handler to avoid the LOR thus making possible to convert evdev client list lock to sleepable sx.
While here add brief locking protocol description.
Reviewed by: markj Differential revision: https://reviews.freebsd.org/D27865
show more ...
|
| #
5af73ad5
|
| 30-Nov-2020 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Remove useless "initial value" parameter from evdev_support_abs()
It can not be used for setting of state of multitouch events. If necessary, use evdev_push_event() instead of it.
|
| #
3611ec60
|
| 18-Aug-2018 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r337646 through r338014.
|
| #
ecccc9d9
|
| 01-Dec-2025 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Allow setting of character device ownership and access mode
by device driver. That is required as game pad and joystick events have to be accessible by ordinary users.
MFC after: 1 month
|
| #
8b04f07e
|
| 07-Mar-2025 |
Joshua Rogers <Joshua@Joshua.Hu> |
sysmouse(4): Add wsp(4)-style T-Axis reporting.
Neither the ums(4) nor psm(4) reporting can be used by the wsp(4) driver, as they rely on static-length movements, while wsp(4) may need to scroll in
sysmouse(4): Add wsp(4)-style T-Axis reporting.
Neither the ums(4) nor psm(4) reporting can be used by the wsp(4) driver, as they rely on static-length movements, while wsp(4) may need to scroll in large amounts per evdev event push.
This style uses a false button-5 press as an indicator that the z-axis movement is a horizontal scroll, otherwise a vertical scroll.
Signed-off-by: Joshua Rogers <Joshua@Joshua.Hu>
show more ...
|
| #
95ee2897
|
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
| #
4a0db5e2
|
| 17-Nov-2022 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Extend EVIOCGRAB ioctl scope to cover sysmouse interface
of psm(4), ums(4) and sysmouse(4) drivers. EVIOCGRAB ioctl execution on /dev/input/event# device node gains exclusive access to this d
evdev: Extend EVIOCGRAB ioctl scope to cover sysmouse interface
of psm(4), ums(4) and sysmouse(4) drivers. EVIOCGRAB ioctl execution on /dev/input/event# device node gains exclusive access to this device to caller. It is used mostly for development purposes and remote control software. See e.g. https://reviews.freebsd.org/D30020 which is the reason of creation of this change.
MFC after: 2 weeks Tested by: corvink Differential revision: https://reviews.freebsd.org/D30542
show more ...
|
| #
efd8749f
|
| 02-Oct-2021 |
Gordon Bergling <gbe@FreeBSD.org> |
evdev: Fix a typo in a commit
- s/prefered/preferred/
MFC after: 3 days
|
| #
35bc295b
|
| 02-Sep-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Do not export multitouch functions which are unused outside evdev
|
| #
f76051c7
|
| 24-Aug-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Add implicit mode for touch tracking.
In implicit mode assignment of slot number and tracking id is performed automatically on each synchronization requested by device driver.
This is done w
evdev: Add implicit mode for touch tracking.
In implicit mode assignment of slot number and tracking id is performed automatically on each synchronization requested by device driver.
This is done with creation of intermediate buffer for multitouch events. This buffer holds untracked events until synchronization is requested by device driver. It is needed as touch assigment requires knowledges of all touch positions pushed in current and previous reports.
MFC after: 2 weeks
show more ...
|
| #
4c0a134e
|
| 24-Aug-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Import support for touch-tracking.
Touch tracking is a process of assignment of unique trackingID to each initiated contact on the surface. Keeping the trackingIDs persistent across multitou
evdev: Import support for touch-tracking.
Touch tracking is a process of assignment of unique trackingID to each initiated contact on the surface. Keeping the trackingIDs persistent across multitouch reports requires solving of so called Euclidian Bipartite Matching problem.
This commit imports EBM-solver implementation based on Dinitz-Kronrod algorithm to find minimum cost matching between contacts listed in two consecutive reports.
Obtained from: OpenBSD MFC after: 2 weeks
show more ...
|
| #
66bd52f5
|
| 24-Aug-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Make MT tracking IDs monotonically increasing sequence.
MFC after: 2 weeks
|
| #
05936028
|
| 24-Aug-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Give short aliases to items of evdev_mt_slot array
with using of unioned anonymous structure.
Access to the same data by using different members of union generally works despite it is not su
evdev: Give short aliases to items of evdev_mt_slot array
with using of unioned anonymous structure.
Access to the same data by using different members of union generally works despite it is not supported by C specs.
Also add helper function to report entire slot state.
MFC after: 2 weeks
show more ...
|
| #
98a7606b
|
| 24-Aug-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
evdev: Multitouch code style changes.
1. Move touch count reporting helpers to utils. They are not multitouch. 2. Use evdev_mt prefix for private multitouch support routines. 3. Use int instead of i
evdev: Multitouch code style changes.
1. Move touch count reporting helpers to utils. They are not multitouch. 2. Use evdev_mt prefix for private multitouch support routines. 3. Use int instead of int32_t where fixed size is not required. 4. Export some internal functions.
This change should be no-op.
MFC after: 2 weeks
show more ...
|