linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v1] dt-bindings: touchscreen: add touchscreen-read-duration-us and touchscreen-settling-time-us properties
@ 2020-11-12 11:20 Oleksij Rempel
  2020-11-21 12:56 ` Rob Herring
  0 siblings, 1 reply; 2+ messages in thread
From: Oleksij Rempel @ 2020-11-12 11:20 UTC (permalink / raw)
  To: Dmitry Torokhov, Rob Herring
  Cc: Oleksij Rempel, kernel, linux-kernel, linux-input, David Jander,
	Benjamin Gaignard, Krzysztof Kozlowski, Mark Brown,
	Jonathan Cameron, devicetree

According to the TI application bulletin [1] we deal with two generic
mechanisms which would affect the precision of provided input events:

|TOUCH SCREEN SETTLING TIME
|
|When the touch  panel is pressed or touched, there are
|two mechanisms that will affect the voltage level at the contact point of
|the touch panel. These two mechanisms will cause the voltage across the
|touch panel to “ring” (oscillate), and then slowly settle (decay)
|down to a stable DC value.
|
|The two mechanisms are:
| 1) Mechanical bouncing caused by vibration of the top layer sheet  of
|    the touch  panel  when  the  panel  is  pressed.
|
| 2) Electrical  ringing  due  to  parasitic  capacitance  between the top
|    and bottom layer sheets of the touch panel and at the  input  of  ADS7843
|    that  causes  the  voltage  to  “ring”(oscillate).

Since both of this mechanisms are board specific and reflect the
mechanical, and electrical properties of end product, it is better to
provide a generic properties to address them.

The touchscreen-read-duration-us property should address 1. mechanism.
This effect can be triggered by device specific design. The duration ma be
dependent on the use case of the end device. For example a touch where
writing is required may have other timing requirements as the device
where only "buttons" should be pressed.

The touchscreen-settling-time-us property should address 2. mechanism
where the size and construction of touch screen plates affect the parasitic
capacitance and time needed between enabling power supply for the
plates, and actual usable voltage level to detect the position of touch event.

[1] https://www.ti.com/lit/an/sbaa036/sbaa036.pdf

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
---
 .../bindings/input/touchscreen/touchscreen.yaml          | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/Documentation/devicetree/bindings/input/touchscreen/touchscreen.yaml b/Documentation/devicetree/bindings/input/touchscreen/touchscreen.yaml
index a771a15f053f..8ba845f68d5c 100644
--- a/Documentation/devicetree/bindings/input/touchscreen/touchscreen.yaml
+++ b/Documentation/devicetree/bindings/input/touchscreen/touchscreen.yaml
@@ -55,6 +55,15 @@ properties:
       values dependent on the controller)
     $ref: /schemas/types.yaml#/definitions/uint32
 
+  touchscreen-read-duration-us:
+    description: Averaged time to sample each read to detect waves within
+      specified duration (valid values dependent on the controller)
+
+  touchscreen-settling-time-us:
+    description: Time it takes for the touchscreen ADC to produce valid samples
+      again after switching between axes (valid values dependent on the
+      controller)
+
   touchscreen-inverted-x:
     description: X axis is inverted
     type: boolean
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v1] dt-bindings: touchscreen: add touchscreen-read-duration-us and touchscreen-settling-time-us properties
  2020-11-12 11:20 [PATCH v1] dt-bindings: touchscreen: add touchscreen-read-duration-us and touchscreen-settling-time-us properties Oleksij Rempel
@ 2020-11-21 12:56 ` Rob Herring
  0 siblings, 0 replies; 2+ messages in thread
From: Rob Herring @ 2020-11-21 12:56 UTC (permalink / raw)
  To: Oleksij Rempel
  Cc: devicetree, Rob Herring, Jonathan Cameron, Mark Brown,
	Krzysztof Kozlowski, linux-kernel, kernel, linux-input,
	Dmitry Torokhov, Benjamin Gaignard, David Jander

On Thu, 12 Nov 2020 12:20:48 +0100, Oleksij Rempel wrote:
> According to the TI application bulletin [1] we deal with two generic
> mechanisms which would affect the precision of provided input events:
> 
> |TOUCH SCREEN SETTLING TIME
> |
> |When the touch  panel is pressed or touched, there are
> |two mechanisms that will affect the voltage level at the contact point of
> |the touch panel. These two mechanisms will cause the voltage across the
> |touch panel to “ring” (oscillate), and then slowly settle (decay)
> |down to a stable DC value.
> |
> |The two mechanisms are:
> | 1) Mechanical bouncing caused by vibration of the top layer sheet  of
> |    the touch  panel  when  the  panel  is  pressed.
> |
> | 2) Electrical  ringing  due  to  parasitic  capacitance  between the top
> |    and bottom layer sheets of the touch panel and at the  input  of  ADS7843
> |    that  causes  the  voltage  to  “ring”(oscillate).
> 
> Since both of this mechanisms are board specific and reflect the
> mechanical, and electrical properties of end product, it is better to
> provide a generic properties to address them.
> 
> The touchscreen-read-duration-us property should address 1. mechanism.
> This effect can be triggered by device specific design. The duration ma be
> dependent on the use case of the end device. For example a touch where
> writing is required may have other timing requirements as the device
> where only "buttons" should be pressed.
> 
> The touchscreen-settling-time-us property should address 2. mechanism
> where the size and construction of touch screen plates affect the parasitic
> capacitance and time needed between enabling power supply for the
> plates, and actual usable voltage level to detect the position of touch event.
> 
> [1] https://www.ti.com/lit/an/sbaa036/sbaa036.pdf
> 
> Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
> ---
>  .../bindings/input/touchscreen/touchscreen.yaml          | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-11-21 12:56 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-12 11:20 [PATCH v1] dt-bindings: touchscreen: add touchscreen-read-duration-us and touchscreen-settling-time-us properties Oleksij Rempel
2020-11-21 12:56 ` Rob Herring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).