summaryrefslogtreecommitdiff
path: root/Documentation/hid
diff options
context:
space:
mode:
authorEven Xu <even.xu@intel.com>2025-05-14 09:19:41 +0300
committerJiri Kosina <jkosina@suse.com>2025-06-10 22:15:59 +0300
commit22da60f0304b6bfd2c7cba8ee88086f344ef5206 (patch)
tree6c5d1f11763a78d18a0bec272b33f4c305b9c268 /Documentation/hid
parent45e92a093099eaf71ff2915a5f6ab5c04c8385e6 (diff)
downloadlinux-22da60f0304b6bfd2c7cba8ee88086f344ef5206.tar.xz
HID: Intel-thc-hid: Intel-thc: Introduce interrupt delay control
This patch adds support for a new feature, named "Interrupt Delay", allowing driver to set a specific delay time for next interrupt detection. It gives driver a capability to control THC waiting time for the next interrupt, to reduce the likelihood of spurious readings. APIs added: - thc_i2c_set_rx_int_delay(): Set I2C Rx input interrupt delay value - thc_i2c_rx_int_delay_enable(): Enable or disable I2C Rx interrupt delay As this interrupt delay feature is only applicable to RxDMA and must remain disabled during SWDMA operations, it also involves a change in SWDMA code to record the max input size control feature state before SWDMA and restore the state after SWDMA. Signed-off-by: Even Xu <even.xu@intel.com> Tested-by: Chong Han <chong.han@intel.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Jiri Kosina <jkosina@suse.com>
Diffstat (limited to 'Documentation/hid')
-rw-r--r--Documentation/hid/intel-thc-hid.rst13
1 files changed, 13 insertions, 0 deletions
diff --git a/Documentation/hid/intel-thc-hid.rst b/Documentation/hid/intel-thc-hid.rst
index 15b04fa215c7..23d5110cb871 100644
--- a/Documentation/hid/intel-thc-hid.rst
+++ b/Documentation/hid/intel-thc-hid.rst
@@ -202,6 +202,19 @@ input packet size with the given max size:
This feature is used to avoid data corruption which will cause RxDMA buffer overrun issue for
I2C bus, and enhance whole system stability.
+2.4 Interrupt delay
+-------------------
+
+Because of MCU performance limitation, some touch devices cannot de-assert interrupt pin
+immediately after input data is transferred, which cause an interrupt toggle delay. But THC
+always detects next interrupt immediately after last input interrupt is handled. In this
+case, the delayed interrupt de-assertion will be recognized as a new interrupt signal by THC,
+and causes THC to start an input report reading spuriously.
+
+In order to avoid this situation, THC introduced interrupt delay new feature in Panther Lake
+platform, where THC allows driver to set an interrupt delay. After this feature is enabled,
+THC will delay this given time for next interrupt detection.
+
3. High level concept
=====================