[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <002a01d68a48$ad112a30$07337e90$@emc.com.tw>
Date: Mon, 14 Sep 2020 11:39:39 +0800
From: "Johnny.Chuang" <johnny.chuang@....com.tw>
To: "'Harry Cutts'" <hcutts@...omium.org>,
"'Johnny Chuang'" <johnny.chuang.emc@...il.com>
Cc: "'Dmitry Torokhov'" <dmitry.torokhov@...il.com>,
"'Benjamin Tissoires'" <benjamin.tissoires@...hat.com>,
"'Peter Hutterer'" <peter.hutterer@...-t.net>,
"'lkml'" <linux-kernel@...r.kernel.org>,
"'linux-input'" <linux-input@...r.kernel.org>,
"'James Chen'" <james.chen@....com.tw>,
"'Jennifer Tsai'" <jennifer.tsai@....com.tw>,
"'Paul Liang'" <paul.liang@....com.tw>,
"'Jeff Chuang'" <jeff.chuang@....com.tw>
Subject: RE: [PATCH v3] Input: elants_i2c - Report resolution of ABS_MT_TOUCH_MAJOR by FW information.
> On Thu, 27 Aug 2020 at 19:20, Johnny Chuang
> <johnny.chuang.emc@...il.com> wrote:
> >
> > This patch adds a new behavior to report touch major resolution based
> > on information provided by firmware.
> >
> > In initial process, driver acquires touch information from touch ic.
> > It contains one byte about the resolution value of ABS_MT_TOUCH_MAJOR.
> > Touch driver will report touch major resolution by this information.
> >
> > Signed-off-by: Johnny Chuang <johnny.chuang.emc@...il.com>
>
> Thanks Johnny!
>
> Reviewed-by: Harry Cutts <hcutts@...omium.org>
>
> Harry Cutts
> Chrome OS Touch/Input team
>
Hi Sirs,
Can you help to review this patch?
> > ---
> > Changes in v2:
> > - register a real resolution value from firmware,
> > instead of hardcoding resolution value as 1 by flag.
> > Changes in v3:
> > - modify git log message from flag to real value.
> > - modify driver comment from flag to real value.
> > ---
> > drivers/input/touchscreen/elants_i2c.c | 6 ++++++
> > 1 file changed, 6 insertions(+)
> >
> > diff --git a/drivers/input/touchscreen/elants_i2c.c
> > b/drivers/input/touchscreen/elants_i2c.c
> > index b0bd5bb..661a3ee 100644
> > --- a/drivers/input/touchscreen/elants_i2c.c
> > +++ b/drivers/input/touchscreen/elants_i2c.c
> > @@ -151,6 +151,7 @@ struct elants_data {
> >
> > bool wake_irq_enabled;
> > bool keep_power_in_suspend;
> > + u8 report_major_resolution;
> >
> > /* Must be last to be used for DMA operations */
> > u8 buf[MAX_PACKET_SIZE] ____cacheline_aligned; @@ -459,6
> > +460,9 @@ static int elants_i2c_query_ts_info(struct elants_data *ts)
> > rows = resp[2] + resp[6] + resp[10];
> > cols = resp[3] + resp[7] + resp[11];
> >
> > + /* get report resolution value of ABS_MT_TOUCH_MAJOR */
> > + ts->report_major_resolution = resp[16];
> > +
> > /* Process mm_to_pixel information */
> > error = elants_i2c_execute_command(client,
> > get_osr_cmd,
> > sizeof(get_osr_cmd), @@ -1325,6 +1329,8 @@ static int
> elants_i2c_probe(struct i2c_client *client,
> > 0, MT_TOOL_PALM, 0, 0);
> > input_abs_set_res(ts->input, ABS_MT_POSITION_X, ts->x_res);
> > input_abs_set_res(ts->input, ABS_MT_POSITION_Y, ts->y_res);
> > + if (ts->report_major_resolution > 0)
> > + input_abs_set_res(ts->input, ABS_MT_TOUCH_MAJOR,
> > + ts->report_major_resolution);
> >
> > touchscreen_parse_properties(ts->input, true, &ts->prop);
> >
> > --
> > 2.7.4
> >
Powered by blists - more mailing lists