Hi Michael: Looks good, just a comment below, > Signed-off-by: Michael Gebetsroither <michael@xxxxxxxx> Reviewed-by: Wanlong Gao <gaowanlong@xxxxxxxxxxxxxx> > --- > drivers/input/touchscreen/Kconfig | 6 ++++ > drivers/input/touchscreen/usbtouchscreen.c | 36 ++++++++++++++++++++++++++++ > 2 files changed, 42 insertions(+), 0 deletions(-) > > diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig > index cabd9e5..9dfb340 100644 > --- a/drivers/input/touchscreen/Kconfig > +++ b/drivers/input/touchscreen/Kconfig > @@ -541,6 +541,7 @@ config TOUCHSCREEN_USB_COMPOSITE > - GoTop Super_Q2/GogoPen/PenPower tablets > - JASTEC USB Touch Controller/DigiTech DTR-02U > - Zytronic controllers > + - Elo TouchSystems 2700 IntelliTouch > > Have a look at <http://linux.chapter7.ch/touchkit/> for > a usage description and the required user-space stuff. > @@ -620,6 +621,11 @@ config TOUCHSCREEN_USB_JASTEC > bool "JASTEC/DigiTech DTR-02U USB touch controller device support" if EXPERT > depends on TOUCHSCREEN_USB_COMPOSITE > > +config TOUCHSCREEN_USB_ELO > + default y > + bool "Elo TouchSystems 2700 IntelliTouch controller device support" if EXPERT > + depends on TOUCHSCREEN_USB_COMPOSITE > + > config TOUCHSCREEN_USB_E2I > default y > bool "e2i Touchscreen controller (e.g. from Mimo 740)" > diff --git a/drivers/input/touchscreen/usbtouchscreen.c b/drivers/input/touchscreen/usbtouchscreen.c > index 73fd664..e2b63d9 100644 > --- a/drivers/input/touchscreen/usbtouchscreen.c > +++ b/drivers/input/touchscreen/usbtouchscreen.c > @@ -16,6 +16,7 @@ > * - JASTEC USB touch controller/DigiTech DTR-02U > * - Zytronic capacitive touchscreen > * - NEXIO/iNexio > + * - Elo TouchSystems 2700 IntelliTouch > * > * Copyright (C) 2004-2007 by Daniel Ritz <daniel.ritz@xxxxxx> > * Copyright (C) by Todd E. Johnson (mtouchusb.c) > @@ -138,6 +139,7 @@ enum { > DEVTYPE_ZYTRONIC, > DEVTYPE_TC45USB, > DEVTYPE_NEXIO, > + DEVTYPE_ELO, > }; > > #define USB_DEVICE_HID_CLASS(vend, prod) \ > @@ -239,6 +241,10 @@ static const struct usb_device_id usbtouch_devices[] = { > .driver_info = DEVTYPE_NEXIO}, > #endif > > +#ifdef CONFIG_TOUCHSCREEN_USB_ELO > + {USB_DEVICE(0x04e7, 0x0020), .driver_info = DEVTYPE_ELO}, > +#endif > + > {} > }; > > @@ -278,6 +284,24 @@ static int e2i_read_data(struct usbtouch_usb *dev, unsigned char *pkt) > > > /***************************************************************************** > + * ELO part > + */ > + > +#ifdef CONFIG_TOUCHSCREEN_USB_ELO > + > +static int elo_read_data(struct usbtouch_usb *dev, unsigned char *pkt) > +{ > + dev->x = ((pkt[3] << 8) | pkt[2]); > + dev->y = ((pkt[5] << 8) | pkt[4]); > + dev->touch = (pkt[6] > 0); > + dev->press = pkt[6]; > + return 1; > + > +} > +#endif > + > + > +/***************************************************************************** > * eGalax part > */ > > @@ -953,6 +977,18 @@ static void usbtouch_process_multi(struct usbtouch_usb *usbtouch, > #endif > > static struct usbtouch_device_info usbtouch_dev_info[] = { > +#ifdef CONFIG_TOUCHSCREEN_USB_ELO > + [DEVTYPE_ELO] = { > + .min_xc = 0x0, > + .max_xc = 0x0fff, > + .min_yc = 0x0, > + .max_yc = 0x0fff, > + .max_press = 0xff, > + .rept_size = 8, > + .read_data = elo_read_data, > + }, > +#endif Maybe you can move this *dev_info* to end to be consistent with the order of *enum*? Thanks -Wanlong Gao -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html