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

Commit c6d81bd7 authored by Heiko Stübner's avatar Heiko Stübner Committed by Dmitry Torokhov
Browse files

Input: add driver for Neonode zForce based touchscreens



This adds a driver for touchscreens using the zforce infrared
technology from Neonode connected via i2c to the host system.

It supports multitouch with up to two fingers and tracking of the
contacts in hardware.

Signed-off-by: default avatarHeiko Stuebner <heiko@sntech.de>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent e4a42f65
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -919,4 +919,17 @@ config TOUCHSCREEN_TPS6507X
	  To compile this driver as a module, choose M here: the
	  module will be called tps6507x_ts.

config TOUCHSCREEN_ZFORCE
	tristate "Neonode zForce infrared touchscreens"
	depends on I2C
	depends on GPIOLIB
	help
	  Say Y here if you have a touchscreen using the zforce
	  infraread technology from Neonode.

	  If unsure, say N.

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

endif
+1 −0
Original line number Diff line number Diff line
@@ -75,3 +75,4 @@ obj-$(CONFIG_TOUCHSCREEN_WM97XX_MAINSTONE) += mainstone-wm97xx.o
obj-$(CONFIG_TOUCHSCREEN_WM97XX_ZYLONITE)	+= zylonite-wm97xx.o
obj-$(CONFIG_TOUCHSCREEN_W90X900)	+= w90p910_ts.o
obj-$(CONFIG_TOUCHSCREEN_TPS6507X)	+= tps6507x-ts.o
obj-$(CONFIG_TOUCHSCREEN_ZFORCE)	+= zforce_ts.o
+836 −0

File added.

Preview size limit exceeded, changes collapsed.

+26 −0
Original line number Diff line number Diff line
/* drivers/input/touchscreen/zforce.c
 *
 * Copyright (C) 2012-2013 MundoReader S.L.
 *
 * This software is licensed under the terms of the GNU General Public
 * License version 2, as published by the Free Software Foundation, and
 * may be copied, distributed, and modified under those terms.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 */

#ifndef _LINUX_INPUT_ZFORCE_TS_H
#define _LINUX_INPUT_ZFORCE_TS_H

struct zforce_ts_platdata {
	int gpio_int;
	int gpio_rst;

	unsigned int x_max;
	unsigned int y_max;
};

#endif /* _LINUX_INPUT_ZFORCE_TS_H */