Received: by 10.223.185.116 with SMTP id b49csp2985039wrg; Sun, 25 Feb 2018 10:54:04 -0800 (PST) X-Google-Smtp-Source: AH8x2249ZyxOy4KX+F8BYtCj1c9k6g9Zz8dZGQu0X1IGzNWMyey+zJG8G3UfKp33u+FdPGmoNYkV X-Received: by 2002:a17:902:b192:: with SMTP id s18-v6mr8145488plr.243.1519584844570; Sun, 25 Feb 2018 10:54:04 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519584844; cv=none; d=google.com; s=arc-20160816; b=DqJN9MO0NIrvP2F8w0e+DHQ/xUxpdpLhS9yh3m98gxGCDtqahXHMbvzi/edjfMzgL6 ZXs+3VkekZfYHjMgBPPUNl99+3LMkaxqHaStNDXuYxed1mg43hyTIj7iHJnx1+/pgv6e KSHSW7tO3igMZIwanh4Qehs/MdvIfKTz+yul2dZMQ0NY+XX0wvh+z74iqQ9ip7ZDZf7K GnXbtPOgXfxdqdPjCFryalkRuKZdrdNAEA7Qimb85VqTF3ESXDNjq9GKXCu9/26lmP72 zEho05omaa6n69rsMIXQp5l/m34Psa29DpQ/koPOgmCbHMAux6tEKHBO938dkd6aDiGG g8og== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=bVJmdgLeTWo5Oe+eXKtfZWgONMAhigyp5OzhgDLSN0I=; b=R+QYH07tCRJXmWLhU5pK9Zv++xzKAHP3m804E6HBQlI4zMV2sq4GPrVghOrmHc37hm 9ZG4g4+gd071yCko4NY0jce46+v55Q1FL1Tx5FewfO/TeNcvrAO+yGDEShLkeHTrCm/u E16woopYbPjEQzLrLI6GMSfjt06TfmLi6bVk0G4Mjmt5+93vUaH2jGAyF3h3kKLcaREL nwKPhYT9kpq3uUQUltYKv+nBighOpsBas8z16yBf2PL29kUZidl/UkgYgeLY/MCMjyYV CHvExYyAdK6aoGTs9Ql+sOIyULie65yTpF+Ahh3lxm/J1Xyl4rYLHlXGD9Pfs4Yi+vY7 0yvg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=s8+4zFYl; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 34-v6si1759498plm.543.2018.02.25.10.53.50; Sun, 25 Feb 2018 10:54:04 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=s8+4zFYl; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751876AbeBYSxH (ORCPT + 99 others); Sun, 25 Feb 2018 13:53:07 -0500 Received: from mail-wm0-f66.google.com ([74.125.82.66]:55154 "EHLO mail-wm0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751699AbeBYSxE (ORCPT ); Sun, 25 Feb 2018 13:53:04 -0500 Received: by mail-wm0-f66.google.com with SMTP id z81so13486248wmb.4; Sun, 25 Feb 2018 10:53:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=bVJmdgLeTWo5Oe+eXKtfZWgONMAhigyp5OzhgDLSN0I=; b=s8+4zFYlme3L5KqpqbqXfdTx4WS60mXp7Ju5Ji1i7U4W7YP59KQr35CE+/VaRG0DDY Ax2Dbr5NkmsVIVVLnFdUc7hdMiVPoozptDUJhVb2ECxpLcFz2oxcYIOhLIsa/M85ktzw NfP0mUY9jIli0sQaoTPxiYxOPL2/CwO+qhlj00T6hxIASdbspuZYmbJcLP5kjeMXaRxd lpQhmYzd+mh7VephC3ulH4bdZartjJgWB6RCf2ltDYrt/xSlOXy5mWhPxmo2uBt+bWiG AuOdNxfFP2lzLw19vDwJ2Yjpp6GvxN9bQpkCi2yY8subhsqzdKpzu/r9YxdVw40tSbB2 HfQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=bVJmdgLeTWo5Oe+eXKtfZWgONMAhigyp5OzhgDLSN0I=; b=fNELuFWgzCLbeDx4UWAqxbnUmrdhn+HNN1iwEPIYwPJudSimAsUmU7V+WCJyBHQdza AT2/adT9avfWAIenhC9fLR0x+Z/HcmczwErTYtoH55PPC404nRzCwVJJpnj8DNWo0S3o SWAED6iJwAAu6ORKbvLcJI1GBZaJmvlBX5xzv/C72VvuI9vEp3qPAdcPo0enDdVelpDE T0d9Nk0HhUR7iAQ3iDmDHfpZdMfC34U+6dAGUXb5ELhEMDrxcD+ioP8qHCA1YWK04fUb biT6LUAl8yrqec+KUokvzBsldfP4snIBV3q4MxQqyPF5sO/LMTeltzmdsYaGWv1uP9XP aHaA== X-Gm-Message-State: APf1xPDeiwtufgfblpcXMJZi22hODJu73d01wx0CMAezylx1TpWkjI5Z rwK1YXhHojw2mljsdYPOc10= X-Received: by 10.28.238.77 with SMTP id m74mr6729675wmh.79.1519584783553; Sun, 25 Feb 2018 10:53:03 -0800 (PST) Received: from localhost.localdomain ([2a01:c50e:5126:7a00:50d8:4f2:c65c:e8e9]) by smtp.gmail.com with ESMTPSA id 72sm6332850wmh.44.2018.02.25.10.53.02 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 25 Feb 2018 10:53:02 -0800 (PST) From: Rodrigo Rivas Costa To: Jiri Kosina , Benjamin Tissoires , "Pierre-Loup A. Griffais" , Cameron Gutman , =?UTF-8?q?Cl=C3=A9ment=20VUCHENER?= , linux-kernel@vger.kernel.org, linux-input@vger.kernel.org Cc: Rodrigo Rivas Costa Subject: [PATCH v3 0/3] new driver for Valve Steam Controller Date: Sun, 25 Feb 2018 19:52:47 +0100 Message-Id: <20180225185250.10759-1-rodrigorivascosta@gmail.com> X-Mailer: git-send-email 2.16.2 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patchset implements a driver for Valve Steam Controller, based on a reverse analysis by myself. This is reroll v3, codenamed "lazy lizard". Changes from v2: * Use RCU to do the dynamic connec/disconnect of wireless devices. Please, to anybody that knows their way around RCU, review. * Remove entries in hid-quirks.c as they are no longer needed. This allows this module to be blacklisted without side effects. * Do not bypass the virtual keyboard/mouse HID devices to avoid breaking existing use cases (lizard mode). A user-space tool to do that is linked. * Fully separated axes for joystick and left-pad. As it happens, there are people with too many fingers. * Add fuzz values for left/right pad axes, they are a little wiggly. Notable changes from patchset v1: * Remove references to USB. Now the interesting interfaces are selected by looking for the ones with feature reports. * Feature reports buffers are allocated with hid_alloc_report_buf(). * Feature report length is checked, to avoid overflows in case of corrupt/malicius USB devices. * Resolution added to the ABS axes. * A lot of minor cleanups. Rodrigo Rivas Costa (3): HID: add driver for Valve Steam Controller HID: steam: add serial number information. HID: steam: add battery device. drivers/hid/Kconfig | 8 + drivers/hid/Makefile | 1 + drivers/hid/hid-ids.h | 4 + drivers/hid/hid-steam.c | 777 ++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 790 insertions(+) create mode 100644 drivers/hid/hid-steam.c -- 2.16.2