Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 03 Jan 2021 12:32:19 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 252236] atp(4): Need EVDEV support for modern input stack
Message-ID:  <bug-252236-227-plVMBlC4xZ@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-252236-227@https.bugs.freebsd.org/bugzilla/>
References:  <bug-252236-227@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D252236

--- Comment #2 from Vladimir Kondratyev <wulf@freebsd.org> ---
(In reply to Greg V from comment #1)
> atp needs a patch similar to https://cgit.freebsd.org/src/commit/?id=3D54=
d2dfc4b24db110c8a4b75e2f02a2360fd9fc8c

Unfortunately, patch should be more complex.

According to Linux and OpenBSD sources Apple's touchpad protocol does not
contain touch tracking information so we have to solve so-called 'Euclidean
bipartite matching problem'.

After some searching in the internet I found 3 realization of such a solver:
1. Kuhn (hungarian) algorithm from libmtdev:
https://github.com/rydberg/mtdev/blob/master/src/match.c#L33
2. Lagrange relaxation method from Linux kernel:
https://github.com/torvalds/linux/blob/master/drivers/input/input-mt.c#L315
3. Dinitz-Kronrod algorithm from OpenBSD:
https://github.com/openbsd/src/blob/master/sys/dev/wscons/wsmouse.c#L1233

One of them have to be imported in to evdev as prerequisite for atp driver.
IMO OpenBSD code suits us better.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-252236-227-plVMBlC4xZ>