5 Commits

Author SHA1 Message Date
Steve Pfetsch
774a6bf86a input: touch_offload: interface updates
- Added rotation field info and "pen" type to TouchOffloadCoord
- Added capabilities for rotation reporting (from the driver to
touch_offload), auto-reporting (touch is reported continuously even when
no finger is touching the screen)
- Added new context channels that enable drivers to provide
supplementary information to the touch_offload consumer. Two new context
channels are introduced for general driver status and for stylus status.

Bug: 203791009
Signed-off-by: Steve Pfetsch <spfetsch@google.com>
Change-Id: I7a32a249b3d31637b25c3c54b0604ac031b3f5ac
2022-01-15 00:28:15 +00:00
Steve Pfetsch
75788b2a60 input: touchscreen: touch_offload: improve touch_offload interface
Added channel_header to each channel and number of channels to each
frame to simplify the transfer of frames. Added coordinate fields for
pressure and major/minor size.

Bug: 167758661
Bug: 168076476
Signed-off-by: Steve Pfetsch <spfetsch@google.com>
Change-Id: Ibd1e0eb3d3c6e539090b638ef3b0461eb00ee80c
2020-09-28 19:19:54 +00:00
Steve Pfetsch
53d9e76ff2 input: touchscreen: touch_offload: register char dev node
Dynamically select major device number and register the touch_offload
device at /dev/touch_offload when the driver is initialized.

Bug: 139955910
Signed-off-by: Steve Pfetsch <spfetsch@google.com>
Change-Id: I5cb01b236fc0733d698898697c83ac117b975501
2020-07-10 21:59:56 +00:00
Steve Pfetsch
11acb0b46c input: touchscreen: change struct attribute in touch_offload.h
The packed attribute on some data structures in touch_offload.h must be
placed after the definition to prevent clean_header.py from omitting the
struct.

Bug: 139955910
Signed-off-by: Steve Pfetsch <spfetsch@google.com>
Change-Id: I2a62b3c259b0872e6f078688bcdc903709e7e0a0
2020-07-10 21:59:37 +00:00
Steve Pfetsch
523826e6b3 input: touchscreen: touch_offload driver
The touch_offload driver augments traditional touchscreen drivers with
the ability to capture and export heatmap and coordinate touch data for
processing in user space. The driver's client can query the touch data
available, configure which content is captured, read queued data as it
is captured, and report detected touch events back to the driver.

Bug: 139955910
Signed-off-by: Steve Pfetsch <spfetsch@google.com>
Change-Id: Ifa2f003f281bfdf6f289ee3b15cd1ee47220f0ec
2020-07-10 21:58:42 +00:00