Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1653890 > unrolled thread

[PATCH v4 0/2] STM FingerTip S touchscreen support for TM2 board

Started byAndi Shyti <andi.shyti@samsung.com>
First post2017-05-31 09:00 +0200
Last post2017-05-31 09:10 +0200
Articles 2 — 1 participant

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH v4 0/2] STM FingerTip S touchscreen support for TM2 board Andi Shyti <andi.shyti@samsung.com> - 2017-05-31 09:00 +0200
    [PATCH v4 1/2] Input: add STMicroelectronics FingerTip touchscreen  driver Andi Shyti <andi.shyti@samsung.com> - 2017-05-31 09:10 +0200

#1653890 — [PATCH v4 0/2] STM FingerTip S touchscreen support for TM2 board

FromAndi Shyti <andi.shyti@samsung.com>
Date2017-05-31 09:00 +0200
Subject[PATCH v4 0/2] STM FingerTip S touchscreen support for TM2 board
Message-ID<tN5LQ-1k9-13@gated-at.bofh.it>
Hi,

this patchset provides support for the ST-Microelectronics
FingerTip S touchscreen device.

It's tested on top of mainline kernel on TM2 and TM2e boards.

Thanks,
Andi

Changelog V3-V4
===============
V3: https://marc.info/?l=linux-kernel&m=149062016401170&w=2
After an offline discussion, I applied some changes suggested by
Dmitry.

 - some cosmetic changes
 - interrupt gets disabled explicitly instead of using
   IRQ_NOAUTOEN
 - cleaner management of the input reports
 - the parsing of the event has been split into two major switch
   chunks, this might cause some event id overlapping, but the
   probability is quite rare

Changelog V2-V3
===============
V2: https://marc.info/?l=linux-kernel&m=148669314305915&w=2

 - fixed multi touch broken protocol reported by Chanwoo;
 - disabled irqs at the registration by setting the IRQ_NOAUTOEN
   flag, as suggested by Andrzej;
 - changed the interrupt handling policy: in the V1 and V2 the
   events were read one by one (8 each), this was increasing the
   overhead. Now all the events are read in a single operation,
   but because the stack is deep 32 events (256bytes, 32*8), it's
   impossible to use the smbus protocol. The i2c_transfer()
   functions is used instead;
 - random code changes;
 - patch 3 in the V1 and V2 patchset has been omitted because
   Krzysztof already merged it.

Changelog V1-V2
===============
V1: https://marc.info/?l=linux-kernel&m=148466204431327&w=2

 - fixed Javier's, Krzysztof's and Dmitry's reviews
 - added Javier's review tag on patch 1 and 3
 - the main difference of the driver from v2 is that the driver
   generates only one input interface instead of two (one for the
   touchscreen and one for the touchkeys). The job of filtering
   the events is demanded to userspace applications that are
   accessing the device. This is done by making an ioctl call:

	ioctl(fd, EVIOCSMASK, &mask);

   where 'mask' is an 'input_mask' structure that contains the type
   variable of the EV_* that needs to be filtered out.

Andi Shyti (2):
  Input: add STMicroelectronics FingerTip touchscreen driver
  Input: add support for the STMicroelectronics FingerTip touchscreen

 .../bindings/input/touchscreen/st,stmfts.txt       |  43 ++
 drivers/input/touchscreen/Kconfig                  |  11 +
 drivers/input/touchscreen/Makefile                 |   1 +
 drivers/input/touchscreen/stmfts.c                 | 823 +++++++++++++++++++++
 4 files changed, 878 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/st,stmfts.txt
 create mode 100644 drivers/input/touchscreen/stmfts.c

-- 
2.11.0

[toc] | [next] | [standalone]


#1653894 — [PATCH v4 1/2] Input: add STMicroelectronics FingerTip touchscreen driver

FromAndi Shyti <andi.shyti@samsung.com>
Date2017-05-31 09:10 +0200
Subject[PATCH v4 1/2] Input: add STMicroelectronics FingerTip touchscreen driver
Message-ID<tN5Vw-1DA-21@gated-at.bofh.it>
In reply to#1653890
Add binding for the STMicroelectronics FingerTip (stmfts)
touchscreen driver.

Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
Acked-by: Rob Herring <robh@kernel.org>
---
 .../bindings/input/touchscreen/st,stmfts.txt       | 43 ++++++++++++++++++++++
 1 file changed, 43 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/st,stmfts.txt

diff --git a/Documentation/devicetree/bindings/input/touchscreen/st,stmfts.txt b/Documentation/devicetree/bindings/input/touchscreen/st,stmfts.txt
new file mode 100644
index 000000000000..9683595cd0f5
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/touchscreen/st,stmfts.txt
@@ -0,0 +1,43 @@
+* ST-Microelectronics FingerTip touchscreen controller
+
+The ST-Microelectronics FingerTip device provides a basic touchscreen
+functionality. Along with it the user can enable the touchkey which can work as
+a basic HOME and BACK key for phones.
+
+The driver supports also hovering as an absolute single touch event with x, y, z
+coordinates.
+
+Required properties:
+- compatible		: must be "st,stmfts"
+- reg			: I2C slave address, (e.g. 0x49)
+- interrupt-parent	: the phandle to the interrupt controller which provides
+			  the interrupt
+- interrupts		: interrupt specification
+- avdd-supply		: analogic power supply
+- vdd-supply		: power supply
+- touchscreen-size-x	: see touchscreen.txt
+- touchscreen-size-y	: see touchscreen.txt
+
+Optional properties:
+- touch-key-connected	: specifies whether the touchkey feature is connected
+- ledvdd-supply		: power supply to the touch key leds
+
+Example:
+
+i2c@00000000 {
+
+	/* ... */
+
+	touchscreen@49 {
+		compatible = "st,stmfts";
+		reg = <0x49>;
+		interrupt-parent = <&gpa1>;
+		interrupts = <1 IRQ_TYPE_NONE>;
+		touchscreen-size-x = <1599>;
+		touchscreen-size-y = <2559>;
+		touch-key-connected;
+		avdd-supply = <&ldo30_reg>;
+		vdd-supply = <&ldo31_reg>;
+		ledvdd-supply = <&ldo33_reg>;
+	};
+};
-- 
2.11.0

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web