From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-dy1-f170.google.com (mail-dy1-f170.google.com [74.125.82.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A895731690A for ; Sun, 12 Apr 2026 21:34:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.170 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776029689; cv=none; b=r/YlZHH2G9p3JQ2e5Y+OM6iyrV0WeFk3wQo05KPOhfdGpSZDMK9PzXS65boKGrhDhMtuXQBNQFg1YhyS/IVpYwZQdslnPcqXKb+3zkdHbvSU6p15Wo50mbTK/IaLjWfYvF585yCr/LpA+ih1bpm1gY7PvGZfSoZ4rLRJ/pTxNl8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776029689; c=relaxed/simple; bh=AQrTEGW6sfD5ciR2bScsYfxiVHmSFMd8GRvYzOJarhM=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=g6rAoKZR4leF2xdDvVDHjPxbm+txTAfY7yMj+mr02JCCnbeBZBZgXBXi6qHpmFQTuuhEekUEJDcWUQ2tHKwYiQBQfHd/CkABX+BWbtwGuXOsElZl2kXcDe3drPBwVnM4ybnzUxfpB0YusN0IAYlwUndlkZdBtqPUuHdDlOEPdJs= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=BAui7PPy; arc=none smtp.client-ip=74.125.82.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="BAui7PPy" Received: by mail-dy1-f170.google.com with SMTP id 5a478bee46e88-2b6b0500e06so6769394eec.1 for ; Sun, 12 Apr 2026 14:34:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776029688; x=1776634488; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=Z0vO1HvyTYpK+q2M2tlyUiDamAY+vmW0ihlj4iawHpg=; b=BAui7PPymn+xKSelNqqeOQe3YP8M4+EfsB078JhTVddvpSk5MinrSf6dNVijj5I/fv /Rlg7Ql/YEiwBaRZchhT15vF5oHvI0RUUkH7mKvsjLzFg2ARUVztAZZ0Eqv3dBYByFRU IHI6DdTSC7FKmSnf/OXjfhs5THFnLkRgBdcHz2PVy8jkFLzHAZ5t2tfUwtDS/hzMg9cy h01lout5Lw3yTQJOk9E5Qrfp41E6O/1f4tDmUj5wKV0bubNxdtz9tHPpb6em/FqXd9G2 F4W+cPUmOetA7MDlSjs/1KCZgCqXqk5tWWDwedFDh2Vh6GJKIObaa3Hha5thYIEunbh3 RnZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776029688; x=1776634488; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Z0vO1HvyTYpK+q2M2tlyUiDamAY+vmW0ihlj4iawHpg=; b=svhCkykhEjUPTQ2LOuqUywReZ8lf82fAlEaU+fcxmgTB+uebsEq0m5SPAJQWtjmKiz qAewRlJ9A9cMil0ZIxViBYvTyQKq59I6KwJN2YIN62viFWJVvq3mKORDyt8/Yd0z9VmP 0rstCTXu/SPBBB7ghrc5lgGn/mExc5yaDiYWUc2FvH+c+BzOYgisCwO0IrVgiRod15Dj A8eX+mvnb8iqIUUOQYBy2S/dgxzmy2ORNU2WoVMVxZRrC9f2Piy6Yd/nNOJMsBbk7PuG TBMZAJj6E11cmtqIDmloOaxHz0DUmHAeLfCDkGYjANb6kXIg9CCvORNoU72Z+WvUxztk fYpA== X-Forwarded-Encrypted: i=1; AJvYcCUOMhBDH6Th4XLtHjw8D9CKX+6VVVKWqaMkda5ihQHDFt66ZZCIZNmm9hzG4gwiG6SP0saJzLbifomONik=@vger.kernel.org X-Gm-Message-State: AOJu0YyeC/JW1ij+4LeovaqOoWZJF9q+VQgr/psKXuwT8TAIyVkoRVUS lcw/3V6LVb4iIYLtR4E50VQWx0ZmAQ+J2f0KeoRrOxQE3f8kBiyVirny X-Gm-Gg: AeBDiev+6IJdkQLkAqnnQjoYSzKWgVKXQ5Z3gLE+3T7NMkdck8517yswUeOkJp7eZcR QQ6b+vWUsbX8OacNpD//PbcOwJeyggv8tBHtyeSmSk7GjC6R3Mg0KOowwU390TTz7W84L2kY+JF lVRHZZOqn8+1gYqKjlS01vy5UvZB14rGGJdwtKYNAo4kR4GHmx7a00cOYZJnWpOs0NQgxfk/YBA Oq49dGRNysYra1r+m4ge2qvVYBp1Ci7GP1VRricosrnkChHZCd96SgbPi2Wv01L5YKnLDPuYklA FTQTWO7yEIXD9h4nyX/w9LogHWI4fdlqd2lpZviYdsGGsbg5HnzMuqY4oVy1ib8pyfj4OxGM+9b bElpMz3H8EdHfvEH9ragrangaOuNifYfSSnXJDJspUxvLpbdHRX1+vFYQAIlshmvkZjuE1YKTU3 Eb6Sd0aQW4zyyibEiwy7V+1fxYcKg6JoMVu+4XtkFNdPdwBQ08vHYkwt9DTy64RnZno8ojl8Ejd QxZ X-Received: by 2002:a05:7022:790:b0:12a:b932:81d3 with SMTP id a92af1059eb24-12c34eeb76fmr5593844c88.26.1776029687711; Sun, 12 Apr 2026 14:34:47 -0700 (PDT) Received: from lappy (108-228-232-20.lightspeed.sndgca.sbcglobal.net. [108.228.232.20]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-12c345b5b9dsm10631736c88.7.2026.04.12.14.34.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 12 Apr 2026 14:34:47 -0700 (PDT) From: "Derek J. Clark" To: Jiri Kosina , Benjamin Tissoires Cc: "Pierre-Loup A . Griffais" , Lambert Fan , Zhouwang Huang , "Derek J . Clark" , linux-input@vger.kernel.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 0/5] Add OneXPlayer Configuration HID Driver Date: Sun, 12 Apr 2026 21:34:39 +0000 Message-ID: <20260412213444.2231505-1-derekjohn.clark@gmail.com> X-Mailer: git-send-email 2.53.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Adds an HID driver for OneXPlayer HID configuration devices. There are currently 2 generations of OneXPlayer HID protocol. The first (OneXPlayer F1 series) only provides an RGB control interface over HID. The Second (X1 mini series, G1 series, AOKZOE A1X) also includes a hardware level button mapping interface, vibration intensity settings, and the ability to switch output between xinput and a debug mode that can be used to debug the button mapping. Some devices (G1 Series, APEX) use a hybrid of Gen1 RGB control and Gen 2 controller settings. To ensure there is no conflicts when the driver is loaded, we skip creating the RGB interface for Gen 2 devices if there is a DMI match. I'll also add a note that Gen 1 devices also have an interface for setting the key map and debug mode, but that is done entirely over a serial TTY device so it is not able to be added to this driver. There are also some "Gen 0" devices (OneXPlayer 2 Series) also use it, but the TTY interface also handles the RGB control so no support is provided by this driver for those interfaces. Signed-off-by: Derel J. Clark Derek J. Clark (5): HID: hid-oxp: Add OneXPlayer configuration driver HID: hid-oxp: Add Second Generation RGB Control HID: hid-oxp: Add Second Generation Gamepad Mode Switch HID: hid-oxp: Add Button Mapping Interface HID: hid-oxp: Add Vibration Intensity Attributes MAINTAINERS | 6 + drivers/hid/Kconfig | 13 + drivers/hid/Makefile | 1 + drivers/hid/hid-ids.h | 6 + drivers/hid/hid-oxp.c | 1575 +++++++++++++++++++++++++++++++++++++++++ 5 files changed, 1601 insertions(+) create mode 100644 drivers/hid/hid-oxp.c -- 2.53.0