linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Roger Pueyo <linux-input@rogerpueyo.com>
To: linux-input@vger.kernel.org
Subject: [patch] TC4UM driver for linux-input
Date: Thu, 10 Jun 2010 11:33:16 +0200	[thread overview]
Message-ID: <AANLkTinBJz0IBgpV7n3M3CZVccLBfVs67d0zCfohUDP4@mail.gmail.com> (raw)
In-Reply-To: <20100603075720.GQ26052@ibawizard.net>

[-- Attachment #1: Type: text/plain, Size: 580 bytes --]

Hi,

These patches are for the ET&T TC4UM usb touchscreen. They are by Petr
Štetiar. They are the same as his previously written TC5UH, just
changing the hardware ID.

I've tested them against kernel 2.6.34 with X.org 1.7 and work
flawlessly with evdev driver.

Let me know any suggestions, please.

Roger

---------- Forwarded message ----------
From: Petr Štetiar <@>
Date: 2010/6/3
Subject: Re: TC4UM driver for linux-input
To: Roger Pueyo <@>
Cc: Petr Štetiar <@>


Please can you test attached patches? Does they work for you? Thank you.

-- ynezz

[-- Attachment #2: 0001-Input-usbtouchscreen-add-support-for-ET-T-TC4UM-t.patch --]
[-- Type: text/x-diff, Size: 3280 bytes --]

From 373b01f6f11d23812510026b47464e5cd4cb5593 Mon Sep 17 00:00:00 2001
From: =?utf-8?q?Petr=20=C5=A0tetiar?= <ynezz@true.cz>
Date: Thu, 3 Jun 2010 09:48:00 +0200
Subject: [PATCH] Input: usbtouchscreen - add support for ET&T TC4UM touchscreen controller
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit

This patch adds support for the ET&T TC4UM 4-wire USB touchscreen controller
and tries to reuse code for TC5UH controller in kernel already. Data interface
is same.

Tested-by: Roger Pueyo Centelles <rogerpueyo@rogerpueyo.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
---
 drivers/input/touchscreen/Kconfig          |    4 ++--
 drivers/input/touchscreen/usbtouchscreen.c |   21 ++++++++++++---------
 2 files changed, 14 insertions(+), 11 deletions(-)

diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
index 6703c6b..4250718 100644
--- a/drivers/input/touchscreen/Kconfig
+++ b/drivers/input/touchscreen/Kconfig
@@ -540,9 +540,9 @@ config TOUCHSCREEN_USB_ZYTRONIC
 	bool "Zytronic controller" if EMBEDDED
 	depends on TOUCHSCREEN_USB_COMPOSITE
 
-config TOUCHSCREEN_USB_ETT_TC5UH
+config TOUCHSCREEN_USB_ETT_TC45USB
 	default y
-	bool "ET&T TC5UH touchscreen controler support" if EMBEDDED
+	bool "ET&T USB series TC4UM/TC5UH touchscreen controler support" if EMBEDDED
 	depends on TOUCHSCREEN_USB_COMPOSITE
 
 config TOUCHSCREEN_USB_NEXIO
diff --git a/drivers/input/touchscreen/usbtouchscreen.c b/drivers/input/touchscreen/usbtouchscreen.c
index 567d572..3244542 100644
--- a/drivers/input/touchscreen/usbtouchscreen.c
+++ b/drivers/input/touchscreen/usbtouchscreen.c
@@ -135,7 +135,7 @@ enum {
 	DEVTYPE_JASTEC,
 	DEVTYPE_E2I,
 	DEVTYPE_ZYTRONIC,
-	DEVTYPE_TC5UH,
+	DEVTYPE_TC45USB,
 	DEVTYPE_NEXIO,
 };
 
@@ -222,8 +222,11 @@ static const struct usb_device_id usbtouch_devices[] = {
 	{USB_DEVICE(0x14c8, 0x0003), .driver_info = DEVTYPE_ZYTRONIC},
 #endif
 
-#ifdef CONFIG_TOUCHSCREEN_USB_ETT_TC5UH
-	{USB_DEVICE(0x0664, 0x0309), .driver_info = DEVTYPE_TC5UH},
+#ifdef CONFIG_TOUCHSCREEN_USB_ETT_TC45USB
+	/* TC5UH */
+	{USB_DEVICE(0x0664, 0x0309), .driver_info = DEVTYPE_TC45USB},
+	/* TC4UM */
+	{USB_DEVICE(0x0664, 0x0306), .driver_info = DEVTYPE_TC45USB},
 #endif
 
 #ifdef CONFIG_TOUCHSCREEN_USB_NEXIO
@@ -574,10 +577,10 @@ static int irtouch_read_data(struct usbtouch_usb *dev, unsigned char *pkt)
 #endif
 
 /*****************************************************************************
- * ET&T TC5UH part
+ * ET&T TC5UH/TC4UM part
  */
-#ifdef CONFIG_TOUCHSCREEN_USB_ETT_TC5UH
-static int tc5uh_read_data(struct usbtouch_usb *dev, unsigned char *pkt)
+#ifdef CONFIG_TOUCHSCREEN_USB_ETT_TC45USB
+static int tc45usb_read_data(struct usbtouch_usb *dev, unsigned char *pkt)
 {
 	dev->x = ((pkt[2] & 0x0F) << 8) | pkt[1];
 	dev->y = ((pkt[4] & 0x0F) << 8) | pkt[3];
@@ -1104,14 +1107,14 @@ static struct usbtouch_device_info usbtouch_dev_info[] = {
 	},
 #endif
 
-#ifdef CONFIG_TOUCHSCREEN_USB_ETT_TC5UH
-	[DEVTYPE_TC5UH] = {
+#ifdef CONFIG_TOUCHSCREEN_USB_ETT_TC45USB
+	[DEVTYPE_TC45USB] = {
 		.min_xc		= 0x0,
 		.max_xc		= 0x0fff,
 		.min_yc		= 0x0,
 		.max_yc		= 0x0fff,
 		.rept_size	= 5,
-		.read_data	= tc5uh_read_data,
+		.read_data	= tc45usb_read_data,
 	},
 #endif
 
-- 
1.5.6.5


[-- Attachment #3: 0002-HID-blacklist-ET-T-TC4UH-touchscreen-controller.patch --]
[-- Type: text/x-diff, Size: 1549 bytes --]

From 6fcc9687b8edbd7df70bc4868e8a849eddd3b4fe Mon Sep 17 00:00:00 2001
From: =?utf-8?q?Petr=20=C5=A0tetiar?= <ynezz@true.cz>
Date: Thu, 3 Jun 2010 09:53:49 +0200
Subject: [PATCH] HID: blacklist ET&T TC4UH touchscreen controller
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit


Signed-off-by: Petr Štetiar <ynezz@true.cz>
---
 drivers/hid/hid-core.c |    1 +
 drivers/hid/hid-ids.h  |    1 +
 2 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
index aa0f7dc..a35f8be 100644
--- a/drivers/hid/hid-core.c
+++ b/drivers/hid/hid-core.c
@@ -1568,6 +1568,7 @@ static const struct hid_device_id hid_ignore_list[] = {
 	{ HID_USB_DEVICE(USB_VENDOR_ID_DELORME, USB_DEVICE_ID_DELORME_EM_LT20) },
 	{ HID_USB_DEVICE(USB_VENDOR_ID_ESSENTIAL_REALITY, USB_DEVICE_ID_ESSENTIAL_REALITY_P5) },
 	{ HID_USB_DEVICE(USB_VENDOR_ID_ETT, USB_DEVICE_ID_TC5UH) },
+	{ HID_USB_DEVICE(USB_VENDOR_ID_ETT, USB_DEVICE_ID_TC4UM) },
 	{ HID_USB_DEVICE(USB_VENDOR_ID_GENERAL_TOUCH, 0x0001) },
 	{ HID_USB_DEVICE(USB_VENDOR_ID_GENERAL_TOUCH, 0x0002) },
 	{ HID_USB_DEVICE(USB_VENDOR_ID_GENERAL_TOUCH, 0x0003) },
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index 6af77ed..fad4cb0 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -197,6 +197,7 @@
 
 #define USB_VENDOR_ID_ETT		0x0664
 #define USB_DEVICE_ID_TC5UH		0x0309
+#define USB_DEVICE_ID_TC4UM		0x0306
 
 #define USB_VENDOR_ID_EZKEY 		0x0518
 #define USB_DEVICE_ID_BTC_8193		0x0002
-- 
1.5.6.5


       reply	other threads:[~2010-06-10 10:39 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <AANLkTimmEtxuQ00jlLPMJkiS7htBV53wMpuWzW_RPs51@mail.gmail.com>
     [not found] ` <20100603072424.GP26052@ibawizard.net>
     [not found]   ` <20100603075720.GQ26052@ibawizard.net>
2010-06-10  9:33     ` Roger Pueyo [this message]
2010-06-11  7:40     ` [PATCH 1/2] Input: usbtouchscreen - add support for ET&T TC4UM touchscreen controller Petr Štetiar
2010-06-11  7:40       ` [PATCH 2/2] HID: blacklist ET&T TC4UH " Petr Štetiar
2010-06-11  7:55         ` Jiri Kosina
2010-06-28  9:19       ` [PATCH 1/2] Input: usbtouchscreen - add support for ET&T TC4UM " Petr Štetiar
2010-06-28 16:46         ` Dmitry Torokhov
2010-06-30  7:16           ` usbtouchscreen - runtime PM patches testing [Was: [PATCH 1/2] Input: usbtouchscreen - add support for ET&T TC4UM touchscreen controller] Petr Štetiar
2010-06-30  7:48             ` Dmitry Torokhov
2010-06-30 13:04             ` Oliver Neukum
2010-07-14 10:43               ` Petr Štetiar
2010-07-14 12:23                 ` Oliver Neukum
2010-07-15  6:39                   ` Petr Štetiar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=AANLkTinBJz0IBgpV7n3M3CZVccLBfVs67d0zCfohUDP4@mail.gmail.com \
    --to=linux-input@rogerpueyo.com \
    --cc=linux-input@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).