Re: [PATCH 6/6] Input: elantech - add v3 hardware support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Daniel,

On Thu, 18 Aug 2011 10:57:57 +0800, Daniel Kurtz <djkurtz@xxxxxxxxxxxx> wrote:
> On Thu, Aug 18, 2011 at 9:57 AM, JJ Ding <jj_ding@xxxxxxxxxx> wrote:
> > v3 hardware's packet format is almost identical to v2 (one/three finger touch),
> > except when sensing two finger touch, the hardware sends 12 bytes of data.
> >
> > Signed-off-by: JJ Ding <jj_ding@xxxxxxxxxx>
> > ---
> >  Documentation/input/elantech.txt |  104 ++++++++++++++++--
> >  drivers/input/mouse/elantech.c   |  218 ++++++++++++++++++++++++++++++++++---
> >  drivers/input/mouse/elantech.h   |   11 ++
> >  3 files changed, 303 insertions(+), 30 deletions(-)
> >
> > +/*
> > + * firmware tells us there's noise.
> > + */
> > +static inline int debounce(unsigned int x, unsigned int y)
> > +{
> > +       return (x == 0xfff) && (y == 0xfff);
> 
> Perhaps you could document this behavior in the elantech.txt.
OK, I will do that.

> >
> > diff --git a/drivers/input/mouse/elantech.h b/drivers/input/mouse/elantech.h
> > index 4b7447e..4f01fc6 100644
> > --- a/drivers/input/mouse/elantech.h
> > +++ b/drivers/input/mouse/elantech.h
> > @@ -16,6 +16,7 @@
> >  /*
> >  * Command values for Synaptics style queries
> >  */
> > +#define ETP_FW_ID_QUERY                        0x00
> 
> One tab too many?
> 
> >  #define ETP_FW_VERSION_QUERY           0x01
> >  #define ETP_CAPABILITIES_QUERY         0x02
> >
> > @@ -24,6 +25,7 @@
> >  */
> >  #define ETP_REGISTER_READ              0x10
> >  #define ETP_REGISTER_WRITE             0x11
> > +#define ETP_REGISTER_READWRITE         0x00
> >
> >  /*
> >  * Hardware version 2 custom PS/2 command value
> > @@ -93,6 +95,13 @@
> >  #define ETP_2FT_YMIN                   (  0 + ETP_2FT_FUZZ)
> >  #define ETP_2FT_YMAX                   (192 - ETP_2FT_FUZZ)
> >
> > +/*
> > + * v3 hardware has 2 kinds of packet types.
> > + */
> > +#define PACKET_UNKNOWN                 0x01
> > +#define PACKET_V3_HEAD                 0x02
> > +#define PACKET_V3_TAIL                 0x03
> > +
> >  struct elantech_data {
> >        unsigned char reg_10;
> >        unsigned char reg_11;
> > @@ -113,6 +122,8 @@ struct elantech_data {
> >        unsigned int single_finger_reports;
> >        unsigned int y_max;
> >        unsigned int y_2ft_max;
> > +       unsigned int prev_x;
> > +       unsigned int prev_y;
> >        unsigned char parity[256];
> >  };
> >
> > --
> > 1.7.4.1
> >
> >
--
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


[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux