On 17.03.2015 15:00, Javier Martinez Canillas wrote:
> From: Nick Dyer <[email protected]>
>
> Add support for the new T100 object which replaces the previous
> T9 multitouch touchscreen object in recent maXTouch devices.
> T100 provides improved reporting with selectable auxiliary
> information, and a type field for hover/stylus/glove reporting.
>
> The hovering finger support was based on Chung-Yih's work in
> the ChromiumOS downstream kernel:
>
> https://chromium-review.googlesource.com/#/c/219280/
>
> Signed-off-by: Nick Dyer <[email protected]>
> Acked-by: Yufeng Shen <[email protected]>
> [javier: Factor out T9 and T100 init functions and rework hover support]
> Signed-off-by: Javier Martinez Canillas <[email protected]>
> ---
> drivers/input/touchscreen/atmel_mxt_ts.c | 323 +++++++++++++++++++++++++++++--
> 1 file changed, 302 insertions(+), 21 deletions(-)
>
> diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c
> index 95ee92a91bd2..749371761669 100644
> --- a/drivers/input/touchscreen/atmel_mxt_ts.c
> +++ b/drivers/input/touchscreen/atmel_mxt_ts.c
...
> @@ -1612,9 +1856,8 @@ static int mxt_initialize_t9_input_device(struct mxt_data *data)
> input_dev->open = mxt_input_open;
> input_dev->close = mxt_input_close;
>
> - __set_bit(EV_ABS, input_dev->evbit);
> - __set_bit(EV_KEY, input_dev->evbit);
> - __set_bit(BTN_TOUCH, input_dev->keybit);
> + set_bit(EV_ABS, input_dev->evbit);
> + input_set_capability(input_dev, EV_KEY, BTN_TOUCH);
Having this patch in mainline as commit
b23157dc74272ac8ebffd1a566e3e822dbc3e65f [1] breaks our Atmel touch.
It seems that above
+ set_bit(EV_ABS, input_dev->evbit);
is missing in the version which went into mainline? Re-adding it makes
it work for us, again.
Opinions?
Best regards
Dirk
[1]
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/input/touchscreen/atmel_mxt_ts.c?id=b23157dc74272ac8ebffd1a566e3e822dbc3e65f
+ Corrected Javiers e-mail address.
On Thu, 2015-08-06 at 12:51 +0200, Dirk Behme wrote:
> On 17.03.2015 15:00, Javier Martinez Canillas wrote:
> >
> Having this patch in mainline as commit
> b23157dc74272ac8ebffd1a566e3e822dbc3e65f [1] breaks our Atmel touch.
>
> It seems that above
>
> + set_bit(EV_ABS, input_dev->evbit);
>
> is missing in the version which went into mainline? Re-adding it
> makes
> it work for us, again.
>
> Opinions?
In mainline the EV_ABS bit automatically gets set as soon as
input_set_abs_params get called.
If you're using this patch on an older kernel you should backport
2c9a9cfec04f2c6ed7b4e607cd53ca903b2c4642 as well.
--
Sjoerd Simons
Collabora Ltd.
Hello,
On 08/06/2015 01:11 PM, Sjoerd Simons wrote:
> + Corrected Javiers e-mail address.
> On Thu, 2015-08-06 at 12:51 +0200, Dirk Behme wrote:
>> On 17.03.2015 15:00, Javier Martinez Canillas wrote:
>>>
>> Having this patch in mainline as commit
>> b23157dc74272ac8ebffd1a566e3e822dbc3e65f [1] breaks our Atmel touch.
>>
>> It seems that above
>>
>> + set_bit(EV_ABS, input_dev->evbit);
>>
>> is missing in the version which went into mainline? Re-adding it
>> makes
>> it work for us, again.
>>
>> Opinions?
>
> In mainline the EV_ABS bit automatically gets set as soon as
> input_set_abs_params get called.
>
> If you're using this patch on an older kernel you should backport
> 2c9a9cfec04f2c6ed7b4e607cd53ca903b2c4642 as well.
>
That's correct. The reason why the original patch had that it's
because it was forward ported from an older kernel and I missed
that detail when doing the rebase.
Best regards,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America
On 06/08/15 12:19, Javier Martinez Canillas wrote:
>> In mainline the EV_ABS bit automatically gets set as soon as
>> input_set_abs_params get called.
>>
>> If you're using this patch on an older kernel you should backport
>> 2c9a9cfec04f2c6ed7b4e607cd53ca903b2c4642 as well.
>>
> That's correct. The reason why the original patch had that it's
> because it was forward ported from an older kernel and I missed
> that detail when doing the rebase.
>
Yes, I've spotted the same issue myself.
I do keep a list of API breaks that affect this driver here:
https://github.com/atmel-maxtouch/linux/wiki/Driver-Integration#branches
(there's the MT protocol A to B change as well, at about 2.6.39)