Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 78bcac7b authored by Andi Shyti's avatar Andi Shyti Committed by Dmitry Torokhov
Browse files

Input: add support for the STMicroelectronics FingerTip touchscreen



The stmfts (ST-Microelectronics FingerTip S) touchscreen device is a
capacitive multi-touch controller mainly for mobile use.  It's connected
through i2c bus at the address 0x49 and it interfaces with userspace
through input event interface.

At the current state it provides a touchscreen multitouch functionality up
to 10 fingers. Each finger is enumerated with a distinctive id (from 0 to
9).

If enabled the device can support single "touch" hovering, by providing
three coordinates, x, y and distance.

It is possible to select the touchkey functionality which provides a basic
two keys interface for "home" and "back" menu, typical in mobile phones.

Signed-off-by: default avatarAndi Shyti <andi.shyti@samsung.com>
Reviewed-by: default avatarJavier Martinez Canillas <javier@osg.samsung.com>
Acked-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent 131b3de7
Loading
Loading
Loading
Loading
+43 −0
Original line number Diff line number Diff line
* 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>;
	};
};
+11 −0
Original line number Diff line number Diff line
@@ -1114,6 +1114,17 @@ config TOUCHSCREEN_ST1232
	  To compile this driver as a module, choose M here: the
	  module will be called st1232_ts.

config TOUCHSCREEN_STMFTS
	tristate "STMicroelectronics STMFTS touchscreen"
	depends on I2C
	depends on LEDS_CLASS
	help
	  Say Y here if you want support for STMicroelectronics
	  STMFTS touchscreen.

	  To compile this driver as a module, choose M here: the
	  module will be called stmfts.

config TOUCHSCREEN_STMPE
	tristate "STMicroelectronics STMPE touchscreens"
	depends on MFD_STMPE
+1 −0
Original line number Diff line number Diff line
@@ -67,6 +67,7 @@ obj-$(CONFIG_TOUCHSCREEN_S3C2410) += s3c2410_ts.o
obj-$(CONFIG_TOUCHSCREEN_SILEAD)	+= silead.o
obj-$(CONFIG_TOUCHSCREEN_SIS_I2C)	+= sis_i2c.o
obj-$(CONFIG_TOUCHSCREEN_ST1232)	+= st1232.o
obj-$(CONFIG_TOUCHSCREEN_STMFTS)	+= stmfts.o
obj-$(CONFIG_TOUCHSCREEN_STMPE)		+= stmpe-ts.o
obj-$(CONFIG_TOUCHSCREEN_SUN4I)		+= sun4i-ts.o
obj-$(CONFIG_TOUCHSCREEN_SUR40)		+= sur40.o
+822 −0

File added.

Preview size limit exceeded, changes collapsed.