Skip to content

input: zinitix: multitouch broken by e941dc1 #390

@timon37

Description

@timon37

On my samsung a3 2015 multitouch doesn't work e.g. making pinch zoom-out in maps impossible (in pure maps this is a pretty serious blocker).

I've debuged it to be a regression caused by commit e941dc1

In my case finger_mask is most definitely not a mask, it's a finger_count.
Which is basically irrelevant for the driver, as the fingers could be reported further down in the list (e.g. if you press one finger, then another, then release the first, the remaining finger remains in slot 1).
Additionally I've never seen SUB_BIT_UP set. Only EXIST, DOWN, MOVE.
Of which only EXIST matters, basically if it's set in a slot then it should be reported.
Which is exactly how the driver worked before that commit.

I can of course provide a minimal patch that only changes the relevant bits.
But I suspect that this will regress the issue Linus Walleij linus.walleij@linaro.org ran into.

So at the moment the main questions are:

  1. who else can test/verify (preferably we'd gather as many different devices as possible)
  2. what's the difference between the devices, e.g. chip revision, firmware version, etc
  3. whether there are any better workarounds for whatever issue Linus had. Given the severity of his issue I imagine he didn't even consider multitouch.

Mine's reported as:

[ 2242.801735] input: Zinitix Capacitive TouchScreen as /devices/platform/soc@0/78b9000.i2c/i2c-6/6-0020/input/input9
[ 2242.875593] zinitix_init_touch:251: Zinitix-TS 6-0020: chip revision 0001 firmware version 0004 regdata version 0009

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions