All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Ogorchock <djogorchock@gmail.com>
To: "Colenbrander, Roderick" <Roderick.Colenbrander@sony.com>
Cc: "Pierre-Loup A. Griffais" <pgriffais@valvesoftware.com>,
	Bastien Nocera <hadess@hadess.net>,
	Roderick Colenbrander <thunderbird2k@gmail.com>,
	linux-input <linux-input@vger.kernel.org>,
	Billy Laws <blaws05@gmail.com>,
	Benjamin Tissoires <benjamin.tissoires@redhat.com>,
	Jiri Kosina <jikos@kernel.org>,
	Siarhei Vishniakou <svv@google.com>,
	"s.jegen@gmail.com" <s.jegen@gmail.com>,
	Carl Mueller <carmueller@gmail.com>
Subject: Re: [PATCH v11 00/11] HID: nintendo
Date: Tue, 4 Aug 2020 00:59:06 -0500	[thread overview]
Message-ID: <CAEVj2tmHmVqXWtH5uq1zUcuZ01ECaGwRaUbW1eLfQ2kgYnFV0A@mail.gmail.com> (raw)
In-Reply-To: <BY5PR13MB382682A947A8FB72720AA718984F0@BY5PR13MB3826.namprd13.prod.outlook.com>

Thanks for the input Roderick.

> In hid-sony we are not doing anything like hid-steam is doing (no virtual extra hidraw device).
>
> I just don't know how I feel about mixing of evdev and hidraw. It just means userspace drivers are doing things behind the back of the real driver (unless you add a virtual hidraw driver like hid-steam). For Sony devices I'm not a big fan as our devices are very complex. Our devices tend to use a single output report (same report id) for rumble, audio and other types of data. When we will expose audio properly, a user space application doing hidraw will mess up audio streams and other behavior (e.g. power settings are also in the same hid report).
>
> I don't know a good way yet. Has the usage of EVIOCGRAB been explored? If I recall it was intended to claim exclusive access to a device at least for input. It is a way of avoiding of some of the issues for simpler devices.
>

I've had some success using EVIOCGRAB in joycond:
https://github.com/DanielOgorchock/joycond/blob/3969af9dcdc2b8199716ec08220df5d9ef7cfc6a/include/phys_ctlr.h#L46
It takes sole-control of the individual joy-con evdevs so it can
re-expose them as a combined uinput device without having the original
devices usable by other applications.

I forgot to note that using the joy-cons (wirelessly or using the
charging grip) with steam seems to work fine. I think steam is just
using the evdev in that case. That leads me to suspect steam would
work fine with the pro controller evdev itself if the matching rules
it uses internally are altered to check the evdev's version number as
well (which hid-nintendo alters for distinction).

I guess the downside to using hid-nintendo as-is with steam is lack of
gyro/accel support compared to steam's hidraw driver. Maybe it's best
for me to finish up the gyro patch before getting this driver merged
in that case. Several people have been successfully using the
in-progress patch with the dolphin emulator. I need to clean things up
with it though based on some of Roderick's previous feedback.

Thanks,
Daniel

      reply	other threads:[~2020-08-04  5:59 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-17  3:29 [PATCH v11 00/11] HID: nintendo Daniel J. Ogorchock
2020-03-17  3:29 ` [PATCH v11 01/11] HID: nintendo: add nintendo switch controller driver Daniel J. Ogorchock
2020-03-17  3:29 ` [PATCH v11 02/11] HID: nintendo: add player led support Daniel J. Ogorchock
2020-03-17  3:29 ` [PATCH v11 03/11] HID: nintendo: add power supply support Daniel J. Ogorchock
2020-03-17  3:29 ` [PATCH v11 04/11] HID: nintendo: add home led support Daniel J. Ogorchock
2020-03-17  3:29 ` [PATCH v11 05/11] HID: nintendo: add rumble support Daniel J. Ogorchock
2020-04-25 13:01   ` Bastien Nocera
2020-03-17  3:29 ` [PATCH v11 06/11] HID: nintendo: improve subcommand reliability Daniel J. Ogorchock
2020-03-17  3:29 ` [PATCH v11 07/11] HID: nintendo: send subcommands after receiving input report Daniel J. Ogorchock
2020-03-17  3:29 ` [PATCH v11 08/11] HID: nintendo: reduce device removal subcommand errors Daniel J. Ogorchock
2020-03-17  3:29 ` [PATCH v11 09/11] HID: nintendo: patch hw version for userspace HID mappings Daniel J. Ogorchock
2020-03-17  3:29 ` [PATCH v11 10/11] HID: nintendo: set controller uniq to MAC Daniel J. Ogorchock
2020-03-17  3:29 ` [PATCH v11 11/11] HID: nintendo: add support for charging grip Daniel J. Ogorchock
2020-04-01 16:27 ` [PATCH v11 00/11] HID: nintendo Benjamin Tissoires
2020-04-03 13:16   ` Jiri Kosina
2020-04-25 13:01 ` Bastien Nocera
2020-04-26 20:42   ` Roderick Colenbrander
2020-04-26 21:14     ` Bastien Nocera
2020-04-26 22:31       ` Roderick Colenbrander
2020-04-27  8:56         ` Bastien Nocera
2020-05-22 19:11           ` Daniel Ogorchock
2020-07-22 18:54             ` Pierre-Loup A. Griffais
2020-07-22 19:22               ` Daniel Ogorchock
2020-07-22 19:47                 ` Bastien Nocera
2020-07-22 20:03                   ` Daniel Ogorchock
2020-08-01 19:59                 ` Colenbrander, Roderick
2020-08-04  5:59                   ` Daniel Ogorchock [this message]

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=CAEVj2tmHmVqXWtH5uq1zUcuZ01ECaGwRaUbW1eLfQ2kgYnFV0A@mail.gmail.com \
    --to=djogorchock@gmail.com \
    --cc=Roderick.Colenbrander@sony.com \
    --cc=benjamin.tissoires@redhat.com \
    --cc=blaws05@gmail.com \
    --cc=carmueller@gmail.com \
    --cc=hadess@hadess.net \
    --cc=jikos@kernel.org \
    --cc=linux-input@vger.kernel.org \
    --cc=pgriffais@valvesoftware.com \
    --cc=s.jegen@gmail.com \
    --cc=svv@google.com \
    --cc=thunderbird2k@gmail.com \
    /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.