All of lore.kernel.org
 help / color / mirror / Atom feed
From: Cameron Gutman <aicommander@gmail.com>
To: dmitry.torokhov@gmail.com, rojtberg@gmail.com
Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org,
	Cameron Gutman <aicommander@gmail.com>
Subject: [PATCH 2/5] Input: xpad - add init packet for Hori and Titanfall 2 pads
Date: Sat,  4 Feb 2017 16:29:59 -0800	[thread overview]
Message-ID: <20170205003002.28160-3-aicommander@gmail.com> (raw)
In-Reply-To: <20170205003002.28160-1-aicommander@gmail.com>

Without sending this packet, the Titanfall 2 pad (0x0e6f:0x0165)
continuously attempts to handshake with the PC and never sends
any input reports.

The Hori gamepad (0x0f0d:0x0067) analog sticks don't work if
this isn't sent, though other buttons do work without it.

Signed-off-by: Cameron Gutman <aicommander@gmail.com>
---
 drivers/input/joystick/xpad.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/input/joystick/xpad.c b/drivers/input/joystick/xpad.c
index 6f07b5b..3f19f32b 100644
--- a/drivers/input/joystick/xpad.c
+++ b/drivers/input/joystick/xpad.c
@@ -346,6 +346,14 @@ struct xpad_output_packet {
 /* Sequence numbers will be added before the packets are sent */
 static const struct xpad_output_packet xone_init_pkt[] = {
 	/*
+	 * This packet is required for the Titanfall 2 Xbox One pads
+	 * (0x0e6f:0x0165) to finish initialization and for Hori pads
+	 * (0x0f0d:0x0067) to make the analog sticks work.
+	 */
+	{{0x01, 0x20, 0x00, 0x09, 0x00, 0x04, 0x20, 0x3a,
+	  0x00, 0x00, 0x00, 0x80, 0x00}, 13, true},
+
+	/*
 	 * This packet is required for all Xbox One pads with 2015
 	 * or later firmware installed (or present from the factory).
 	 */
-- 
2.9.3

  parent reply	other threads:[~2017-02-05  0:29 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-05  0:29 [PATCH 0/5] Correctly support some quirky Xbox One pads Cameron Gutman
2017-02-05  0:29 ` [PATCH 1/5] Input: xpad - use a packet array to start " Cameron Gutman
2017-02-05  0:29 ` Cameron Gutman [this message]
2017-02-05  0:30 ` [PATCH 3/5] Input: xpad - send rumble on Xbox One init to fix PowerA pads Cameron Gutman
2017-02-06 22:13   ` Dmitry Torokhov
2017-02-05  0:30 ` [PATCH 4/5] Input: xpad - restore LED state after device resume Cameron Gutman
2017-02-05  1:17   ` kbuild test robot
2017-02-05  1:17     ` kbuild test robot
2017-02-05  1:47     ` Cameron Gutman
2017-02-06 22:05   ` Dmitry Torokhov
2017-02-06 22:57     ` Cameron Gutman
2017-02-05  0:30 ` [PATCH 5/5] Input: xpad - fix stuck mode button on Xbox One S pad Cameron Gutman
2017-02-06 22:03   ` Dmitry Torokhov

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=20170205003002.28160-3-aicommander@gmail.com \
    --to=aicommander@gmail.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rojtberg@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.