Skip to content

Commit 41a6f0e

Browse files
author
Jiri Kosina
committed
Merge branch 'for-6.17/intel-thc' into for-linus
- support for Wake-on-touch in intel-thc (Even Xu) - support for "Input max input size control" and "Input interrupt delay" I2C features in order to improve compatibility of THC devices with legacy HIDI2C touch devices (Even Xu)
2 parents bfb0195 + 7852beb commit 41a6f0e

File tree

12 files changed

+572
-121
lines changed

12 files changed

+572
-121
lines changed

Documentation/hid/intel-thc-hid.rst

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,34 @@ Control register.
188188
Reset line is controlled by BIOS (or EFI) through ACPI _RST method, driver needs to call this
189189
device ACPI _RST method to reset touch IC during initialization.
190190

191+
2.3 Max input size control
192+
--------------------------
193+
194+
This is a new feature introduced in Panther Lake platform, THC hardware allows driver to set
195+
a max input size for RxDMA. After this max size gets set and enabled, for every input report
196+
packet reading, THC hardware sequencer will first read incoming input packet size, then compare
197+
input packet size with the given max size:
198+
199+
- if input packet size <= max size, THC continues using input packet size to finish the reading
200+
- if input packet size > max size, there is potential input data crash risk during
201+
transferring, THC will use max size instead of input packet size for reading
202+
203+
This feature is used to avoid data corruption which will cause RxDMA buffer overrun issue for
204+
I2C bus, and enhance whole system stability.
205+
206+
2.4 Interrupt delay
207+
-------------------
208+
209+
Because of MCU performance limitation, some touch devices cannot de-assert interrupt pin
210+
immediately after input data is transferred, which cause an interrupt toggle delay. But THC
211+
always detects next interrupt immediately after last input interrupt is handled. In this
212+
case, the delayed interrupt de-assertion will be recognized as a new interrupt signal by THC,
213+
and causes THC to start an input report reading spuriously.
214+
215+
In order to avoid this situation, THC introduced interrupt delay new feature in Panther Lake
216+
platform, where THC allows driver to set an interrupt delay. After this feature is enabled,
217+
THC will delay this given time for next interrupt detection.
218+
191219
3. High level concept
192220
=====================
193221

drivers/hid/intel-thc-hid/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
obj-$(CONFIG_INTEL_THC_HID) += intel-thc.o
99
intel-thc-objs += intel-thc/intel-thc-dev.o
1010
intel-thc-objs += intel-thc/intel-thc-dma.o
11+
intel-thc-objs += intel-thc/intel-thc-wot.o
1112

1213
obj-$(CONFIG_INTEL_QUICKSPI) += intel-quickspi.o
1314
intel-quickspi-objs += intel-quickspi/pci-quickspi.o

0 commit comments

Comments
 (0)