All of lore.kernel.org
 help / color / mirror / Atom feed
From: Felipe Balbi <balbi@kernel.org>
To: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Cc: Dmitry Antipov <daantipov@gmail.com>,
	Jiri Kosina <jikos@kernel.org>,
	"open list:HID CORE LAYER" <linux-input@vger.kernel.org>,
	jeff.glaum@microsoft.com, Dmitry Antipov <dmanti@microsoft.com>
Subject: Re: [PATCH] HID: Support Microsoft Surface Duo SPI-based touch controller driver as a module.
Date: Fri, 13 Aug 2021 08:09:02 +0300	[thread overview]
Message-ID: <87eeayj5b3.fsf@kernel.org> (raw)
In-Reply-To: <CAO-hwJ+36wji=nWKxW-GFBj=o3yovr__3s+03SDdPHq1jO4WwQ@mail.gmail.com>


Hi,

Benjamin Tissoires <benjamin.tissoires@redhat.com> writes:
>> > On Thu, Aug 12, 2021 at 2:13 AM Dmitry Antipov <daantipov@gmail.com> wrote:
>> >>
>> >> Surface Duo uses a touch digitizer that communicates to the main SoC via SPI
>> >> and presents itself as a HID device. This patch contains the changes needed
>> >> for the driver to work as a module: HID Core affordances for SPI devices,
>> >> addition of the new Device IDs, and a new quirk in hid-microsoft. The driver
>> >> itself is being prepared for a submission in the near future.
>> >>
>> >> Signed-off-by: Dmitry Antipov dmanti@microsoft.com
>> >
>> > Though I really appreciate seeing a microsoft.com submission, the
>> > commit description makes me wonder if we should not postpone the
>> > inclusion of this patch with the "submission in the near future".
>> >
>> > AFAIK, HID is not SPI aware. So basically, we are introducing dead
>> > code in the upstream kernel if we take this patch.
>>
>> Right, unfortunately spec isn't public yet (albeit having products
>> shipped using it and a driver available in a public tree somewhere I
>> couldn't find).
>>
>> I _do_ have one question though:
>>
>> Is there a way to tell hid core that $this device wants hidraw? If we
>
> Depending on what you want and can do I can think of several solutions:
> - add a quirk for this device (either at boot time, either in
> hid-quirks.c) There must be one that tells to only bind to hidraw
> - provide an out of the tree driver that declares the BUS:VID:PID, and
> start the HID device with HIDRAW only.

sounds good

>> remove the hid-microsoft changes, hid-generic will pick the device as
>> expected, but this really needs hidraw. Any hints?
>
> I am fine with the hid-microsoft changes, I just want them in a
> separate commit. But I don't see why we would take only the first one
> without the SPI transport and the hid-microsoft code...
>
> Basically: not sure why you need hidraw for it.

Yeah, the touch controller is "peculiar". It sends to the host raw
frames which needs to be processed by a userspace application. We don't
get coordinates, pressure, etc. We get raw values from the touch
digitizer; these are passed to a daemon which runs your usual filters
(palm rejection, denoising, yada yada yada) and produces the actual
touch inputs. Those are, in turn, given to uinput.

-- 
balbi

  parent reply	other threads:[~2021-08-13  5:13 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-12  0:12 [PATCH] HID: Support Microsoft Surface Duo SPI-based touch controller driver as a module Dmitry Antipov
2021-08-12  5:04 ` Felipe Balbi
2021-08-12 16:47 ` Benjamin Tissoires
2021-08-12 17:13   ` Felipe Balbi
2021-08-12 17:23     ` Benjamin Tissoires
2021-08-12 21:01       ` Dmitry Antipov
2021-08-13  5:09       ` Felipe Balbi [this message]
2021-08-13  8:11         ` Benjamin Tissoires
2021-08-13  8:55           ` Felipe Balbi
2021-08-13 10:04             ` Benjamin Tissoires
2021-08-15  6:18               ` Felipe Balbi
2021-08-13  7:53 ` Benjamin Tissoires

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87eeayj5b3.fsf@kernel.org \
    --to=balbi@kernel.org \
    --cc=benjamin.tissoires@redhat.com \
    --cc=daantipov@gmail.com \
    --cc=dmanti@microsoft.com \
    --cc=jeff.glaum@microsoft.com \
    --cc=jikos@kernel.org \
    --cc=linux-input@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.