Received: by 2002:a05:6a10:a852:0:0:0:0 with SMTP id d18csp661971pxy; Wed, 5 May 2021 10:36:51 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzfLoTf4IZIyQ1PUWdicI0oPruBPyIiNaoiuVvBnV28/z1oMhzfF6tIJgo79ohb0lBhXBOg X-Received: by 2002:a17:902:bf46:b029:ee:b949:bd0 with SMTP id u6-20020a170902bf46b02900eeb9490bd0mr222320pls.14.1620236211512; Wed, 05 May 2021 10:36:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620236211; cv=none; d=google.com; s=arc-20160816; b=aNqzTMvC+WAOo6c8mz6BIWatphV1lbN6Qp3g5EePrHD0rfbEZd8d0yOCHTHTVtBBpV a07fpVDpHAvLaBxcNqp5ktcLn/RPbSxKP4ADwSGjqDsyvpJ6b5//lXD8zGlzArSCQtDx Jjc8mVWQnT+CpuBvwMDEl8E99e2znF915p5PpC3Cp9iajORQe+gHacUsf6SsJ3VSrbnE pnZdsOTXwnCz1jVMAC1UjvudjrP0fi5sYYGUnhMvQslOaLusFk1ftkHdDb0ceYtkGF1E PkVsxGdgeHN4+fMXjJlbqGvogUKeF5rFzvzGkwT6J4EN9CG+218QGl5wQH0xDazuOSmx ah6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=h2Rkiic1Qu5JUyXDgw7mY1fOZmJcCWfsiNziLqg7Wlo=; b=qZkQHAsmJ0QieHw6qjb58tKW0SrxtXnYkBiQOh2qWIF2uW88vJblLehISwPGZZBrrX ewemlGuU+gGLAS9m98xYQQ2vZXAR/8hu/U5jjUHrbzvR5jlj/CJlEXNVZoLUd4Bv0S6I /rJeW+I9DFINFzn3wQt3zNKcf4B9t8wuxC6aqyaVwpUxWIIHNKwLr/hU+EDSh3HzeVtb AiYd+5jIXLFCkUapWna2PS15ZgO1v8FbUUBlGKDKNb4AmYuAbUexRDnLTVRIV1TwaNGY tTbc6xb8bxpsZIu+36VomFy4J2vMCv6n1uFYJrSv8/yNAMSa8UejpEVvJPaYhinqyU/V As0A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=JYizrWyK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id i8si8034757pgj.60.2021.05.05.10.36.38; Wed, 05 May 2021 10:36:51 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=JYizrWyK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235164AbhEERdg (ORCPT + 99 others); Wed, 5 May 2021 13:33:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50514 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239516AbhEERbW (ORCPT ); Wed, 5 May 2021 13:31:22 -0400 Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com [IPv6:2a00:1450:4864:20::12c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9B148C04347A for ; Wed, 5 May 2021 09:57:34 -0700 (PDT) Received: by mail-lf1-x12c.google.com with SMTP id t11so3520796lfl.11 for ; Wed, 05 May 2021 09:57:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=h2Rkiic1Qu5JUyXDgw7mY1fOZmJcCWfsiNziLqg7Wlo=; b=JYizrWyK02sThSbFQwjDEqxWacSLOX+HiHOuavlPwv6otO/1VqE5O2XtC2jOK/aUOD /3IVSoq+eY1SVvZjM5I1nc6nROOaI6uju5rHaA6hQ4tgzq+BVC6z1oIx5qcpiKLNZaLy LkO94YggpCRpXgV/5/2WaF85cNFw2TEiPqnA+XoHN2aurBzp+c4HZv5ZA6P/D3/NaOnr cqT4fMLGNmfP1PDwovqz52zuKZwTsibd1WdiLBM1gf7uirktx0n8xksElqggqYEwQtue ITYEXXjU0I3TkbQ3yZ1tSaCbck4+4PqBxYucEMraROfPjbzh5H8Z6FuFxEZ0p/qRgWgf oh8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=h2Rkiic1Qu5JUyXDgw7mY1fOZmJcCWfsiNziLqg7Wlo=; b=TQdakclExROss0dzzO6uq6VxcKqgz5p2cJO1EZ994y0CekvXYDwAi71Zpw42JK/MGZ XEImkUo7GGI/lI5twtdIcgewrsgjydWpWoXwkiLppc4c7xEdYPJ12vv+ucfcInG8tjoA suf4bC2G1PWoLRhGewdfFaWvMVR4vU3CscIN+jx0qSD6CXuEHt6AyjhP8b2OkBV6qWFZ o9Hwc4kpWmyBDX1qhdfNYlGkOpt0lCN2+U54XPB6jgCPso7x1YJHa/R13QUyCh+3Ar5g 4foUZqCJAlnE2LDs280fKBpiv29H/9ePtlM6erIaZ3SgX9moYQ6tJ8EE/xMYk//zntsA 7vZw== X-Gm-Message-State: AOAM533Kn0KIJdZIt9PO+Bqf8xMfl4fca3oIfysyLT9KqMugczSae3+8 E+Xt84VJDnGwCRnQN7GmmjHXvRm1AW20ZyzVLOoZdg== X-Received: by 2002:a19:4082:: with SMTP id n124mr21510445lfa.154.1620233852801; Wed, 05 May 2021 09:57:32 -0700 (PDT) MIME-Version: 1.0 References: <20210414021201.2462114-1-lzye@google.com> In-Reply-To: <20210414021201.2462114-1-lzye@google.com> From: Chris Ye Date: Wed, 5 May 2021 09:57:21 -0700 Message-ID: Subject: Re: [PATCH] [v5] Input: Add "Select" button to Microsoft Xbox One controller. To: =?UTF-8?Q?=C5=81ukasz_Patron?= , Benjamin Valentin , Chris Ye , Lee Jones , =?UTF-8?Q?Olivier_Cr=C3=AAte?= , Sanjay Govind , Andrzej Pietrasiewicz , Bastien Nocera Cc: linux-input , lkml , trivial@kernel.org, kernel-team@android.com Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Bastien, Can you please take a look at the patch v5, which has restored the same tab formatting? Thanks! Regards, Chris On Tue, Apr 13, 2021 at 7:12 PM Chris Ye wrote: > > Add "Select" button input capability and input event mapping for > Microsoft Xbox One controller. From product site this is also referred as > "Share" button. > Fixed Microsoft Xbox One controller select button not working under USB > connection. > > Signed-off-by: Chris Ye > --- > drivers/input/joystick/xpad.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/input/joystick/xpad.c b/drivers/input/joystick/xpad.c > index 9f0d07dcbf06..cfbf1747b205 100644 > --- a/drivers/input/joystick/xpad.c > +++ b/drivers/input/joystick/xpad.c > @@ -79,6 +79,7 @@ > #define MAP_DPAD_TO_BUTTONS (1 << 0) > #define MAP_TRIGGERS_TO_BUTTONS (1 << 1) > #define MAP_STICKS_TO_NULL (1 << 2) > +#define MAP_SELECT_BUTTON (1 << 3) > #define DANCEPAD_MAP_CONFIG (MAP_DPAD_TO_BUTTONS | \ > MAP_TRIGGERS_TO_BUTTONS | MAP_STICKS_TO_NULL) > > @@ -130,6 +131,7 @@ static const struct xpad_device { > { 0x045e, 0x02e3, "Microsoft X-Box One Elite pad", 0, XTYPE_XBOXONE }, > { 0x045e, 0x02ea, "Microsoft X-Box One S pad", 0, XTYPE_XBOXONE }, > { 0x045e, 0x0719, "Xbox 360 Wireless Receiver", MAP_DPAD_TO_BUTTONS, XTYPE_XBOX360W }, > + { 0x045e, 0x0b12, "Microsoft Xbox One X pad", MAP_SELECT_BUTTON, XTYPE_XBOXONE }, > { 0x046d, 0xc21d, "Logitech Gamepad F310", 0, XTYPE_XBOX360 }, > { 0x046d, 0xc21e, "Logitech Gamepad F510", 0, XTYPE_XBOX360 }, > { 0x046d, 0xc21f, "Logitech Gamepad F710", 0, XTYPE_XBOX360 }, > @@ -862,6 +864,8 @@ static void xpadone_process_packet(struct usb_xpad *xpad, u16 cmd, unsigned char > /* menu/view buttons */ > input_report_key(dev, BTN_START, data[4] & 0x04); > input_report_key(dev, BTN_SELECT, data[4] & 0x08); > + if (xpad->mapping & MAP_SELECT_BUTTON) > + input_report_key(dev, KEY_RECORD, data[22] & 0x01); > > /* buttons A,B,X,Y */ > input_report_key(dev, BTN_A, data[4] & 0x10); > @@ -1672,6 +1676,8 @@ static int xpad_init_input(struct usb_xpad *xpad) > xpad->xtype == XTYPE_XBOXONE) { > for (i = 0; xpad360_btn[i] >= 0; i++) > input_set_capability(input_dev, EV_KEY, xpad360_btn[i]); > + if (xpad->mapping & MAP_SELECT_BUTTON) > + input_set_capability(input_dev, EV_KEY, KEY_RECORD); > } else { > for (i = 0; xpad_btn[i] >= 0; i++) > input_set_capability(input_dev, EV_KEY, xpad_btn[i]); > -- > 2.31.1.295.g9ea45b61b8-goog >