|
|
Log in / Subscribe / Register

HID: asus: add support for ROG Ally handhelds

From:  Denis Benato <denis.benato-AT-linux.dev>
To:  linux-kernel-AT-vger.kernel.org
Subject:  [PATCH 00/12] HID: asus: add support for ROG Ally handhelds
Date:  Thu, 13 Aug 2026 14:47:24 +0000
Message-ID:  <20260813144736.2477941-1-denis.benato@linux.dev>
Cc:  linux-input-AT-vger.kernel.org, "Benjamin Tissoires" <bentiss-AT-kernel.org>, "Jiri Kosina" <jikos-AT-kernel.org>, "Luke D . Jones" <luke-AT-ljones.dev>, "Mateusz Schwartz" <matthew.schwartz-AT-linux.dev>, "Denis Benato" <benato.denis96-AT-gmail.com>, "Jonathan LoBue" <jlobue10-AT-gmail.com>, "Khamunetri Clark" <khamunetriclark-AT-gmail.com>, "Derek J. Clark" <derekjohn.clark-AT-gmail.com>, Denis Benato <denis.benato-AT-linux.dev>
Archive-link:  Article

Hi all,

This patch series adds support for ROG Ally handhelds in the HID driver for ASUS devices.

The changes include reinitialization of the device after exiting a sleep state,
gamepad configuration, vibration strength configuration, joysticks and triggers
range configuration, anti-deadzone configuration, response curve support,
force feedback support, gamepad mode support, turbo buttons support,
and button remapping support.

This driver is based on the original Luke's work, which was a great starting point
and I have reworked it to be upstreamable, while keeping the original functionality
intact and extending hid-asus to avoid regressions in functionality such as the
backlight control.

The ally support has been a surprisingly long task, spanning multiple years and
being used in Steam OS and well as other distributions for quite a while,
and I am happy to finally be submitting it.

At this time LEDs are not part of the patch series as I have work in progress to
unify LEDs handling across all ASUS devices, and I will submit that in a separate
patch series when the userspace interface will be ready to express capabilities
of these devices, but that will take some more time.

This driver is the culmination of a lot of work, from many different people,
and I want to thank Luke for his original work, as well as the many people that have
helped me test and provide feedback on the driver: Khamunetri, Jonathan, Derek,
Matthew and others that have helped during these years.

Best regards,
Denis Benato

Denis Benato (12):
  HID: asus: reinitialize the device after exiting a sleep state
  HID: asus: add support for ROG Ally handhelds
  HID: asus: add gamepad configuration
  HID: asus: add vibration strength configuration
  HID: asus: add joysticks inner and outer range configuration
  HID: asus: add triggers inner and outer range configuration
  HID: asus: add joysticks anti-deadzone configuration
  HID: asus: add support for response curve
  HID: asus: add support to force feedback
  HID: asus: add support for gamepad mode
  HID: asus: add support for turbo buttons
  HID: asus: add support for btn remapping

 drivers/hid/hid-asus.c | 4171 ++++++++++++++++++++++++++++++++++++++--
 1 file changed, 4011 insertions(+), 160 deletions(-)

-- 
2.47.3




Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds