On Tue, Aug 27, 2019 at 03:27:19PM +0900, Jiada Wang wrote:
> From: Karl Tsou <[email protected]>

This description is a little brief.

> 
> Signed-off-by: Nick Dyer <[email protected]>
> (cherry picked from ndyer/linux/for-upstream commit 
> cb98986f8342107bf4a536aed4160b20839e97c1)
> Signed-off-by: George G. Davis <[email protected]>
> Signed-off-by: Jiada Wang <[email protected]>
> ---
>  drivers/input/touchscreen/atmel_mxt_ts.c | 40 ++++++++++++++++++++++++
>  1 file changed, 40 insertions(+)
> 
> diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c 
> b/drivers/input/touchscreen/atmel_mxt_ts.c
> index 4e237209cb34..26861252c088 100644
> --- a/drivers/input/touchscreen/atmel_mxt_ts.c
> +++ b/drivers/input/touchscreen/atmel_mxt_ts.c
> @@ -71,6 +71,8 @@
>  #define MXT_SPT_MESSAGECOUNT_T44     44
>  #define MXT_SPT_CTECONFIG_T46                46
>  #define MXT_SPT_DYNAMICCONFIGURATIONCONTAINER_T71 71
> +#define MXT_PROCI_SYMBOLGESTUREPROCESSOR     92
> +#define MXT_PROCI_TOUCHSEQUENCELOGGER        93
>  #define MXT_TOUCH_MULTITOUCHSCREEN_T100 100
>  #define MXT_PROCI_ACTIVESTYLUS_T107  107
>  
> @@ -349,6 +351,10 @@ struct mxt_data {
>       u8 T42_reportid_max;
>       u16 T44_address;
>       u8 T48_reportid;
> +     u16 T92_address;
> +     u8 T92_reportid;
> +     u16 T93_address;
> +     u8 T93_reportid;
>       u8 T100_reportid_min;
>       u8 T100_reportid_max;
>       u16 T107_address;
> @@ -1113,6 +1119,24 @@ static int mxt_proc_t48_messages(struct mxt_data 
> *data, u8 *msg)
>       return 0;
>  }
>  
> +static void mxt_proc_t92_messages(struct mxt_data *data, u8 *msg)
> +{
> +     struct device *dev = &data->client->dev;
> +     u8 status = msg[1];
> +
> +     dev_info(dev, "T92 long stroke LSTR=%d %d\n",
> +              (status & 0x80) ? 1 : 0,
> +              status & 0x0F);

Shouldn't this be dev_dbg().


> +}
> +
> +static void mxt_proc_t93_messages(struct mxt_data *data, u8 *msg)
> +{
> +     struct device *dev = &data->client->dev;
> +     u8 status = msg[1];
> +
> +     dev_info(dev, "T93 report double tap %d\n", status);

Ditto.


Daniel.

> +}
> +
>  static int mxt_proc_message(struct mxt_data *data, u8 *message)
>  {
>       u8 report_id = message[0];
> @@ -1145,6 +1169,10 @@ static int mxt_proc_message(struct mxt_data *data, u8 
> *message)
>       } else if (report_id >= data->T15_reportid_min
>                  && report_id <= data->T15_reportid_max) {
>               mxt_proc_t15_messages(data, message);
> +     } else if (report_id == data->T92_reportid) {
> +             mxt_proc_t92_messages(data, message);
> +     } else if (report_id == data->T93_reportid) {
> +             mxt_proc_t93_messages(data, message);
>       } else {
>               mxt_dump_message(data, message);
>       }
> @@ -1814,6 +1842,10 @@ static void mxt_free_object_table(struct mxt_data 
> *data)
>       data->T42_reportid_max = 0;
>       data->T44_address = 0;
>       data->T48_reportid = 0;
> +     data->T92_reportid = 0;
> +     data->T92_address = 0;
> +     data->T93_reportid = 0;
> +     data->T93_address = 0;
>       data->T100_reportid_min = 0;
>       data->T100_reportid_max = 0;
>       data->max_reportid = 0;
> @@ -1906,6 +1938,14 @@ static int mxt_parse_object_table(struct mxt_data 
> *data,
>               case MXT_PROCG_NOISESUPPRESSION_T48:
>                       data->T48_reportid = min_id;
>                       break;
> +             case MXT_PROCI_SYMBOLGESTUREPROCESSOR:
> +                     data->T92_reportid = min_id;
> +                     data->T92_address = object->start_address;
> +                     break;
> +             case MXT_PROCI_TOUCHSEQUENCELOGGER:
> +                     data->T93_reportid = min_id;
> +                     data->T93_address = object->start_address;
> +                     break;
>               case MXT_TOUCH_MULTITOUCHSCREEN_T100:
>                       data->multitouch = MXT_TOUCH_MULTITOUCHSCREEN_T100;
>                       data->T100_reportid_min = min_id;
> -- 
> 2.19.2
> 

Reply via email to