1. 30 Jan, 2024 1 commit
    • Brenton Simpson's avatar
      Input: xpad - add Lenovo Legion Go controllers · 80441f76
      Brenton Simpson authored
      The Lenovo Legion Go is a handheld gaming system, similar to a Steam Deck.
      It has a gamepad (including rear paddles), 3 gyroscopes, a trackpad,
      volume buttons, a power button, and 2 LED ring lights.
      
      The Legion Go firmware presents these controls as a USB hub with various
      devices attached.  In its default state, the gamepad is presented as an
      Xbox controller connected to this hub.  (By holding a combination of
      buttons, it can be changed to use the older DirectInput API.)
      
      This patch teaches the existing Xbox controller module `xpad` to bind to
      the controller in the Legion Go, which enables support for the:
      
      - directional pad,
      - analog sticks (including clicks),
      - X, Y, A, B,
      - start and select (or menu and capture),
      - shoulder buttons, and
      - rumble.
      
      The trackpad, touchscreen, volume controls, and power button are already
      supported via existing kernel modules.  Two of the face buttons, the
      gyroscopes, rear paddles, and LEDs are not.
      
      After this patch lands, the Legion Go will be mostly functional in Linux,
      out-of-the-box.  The various components of the USB hub can be synthesized
      into a single logical controller (including the additional buttons) in
      userspace with [Handheld Daemon](https://github.com/hhd-dev/hhd), which
      makes the Go fully functional.
      Signed-off-by: default avatarBrenton Simpson <appsforartists@google.com>
      Link: https://lore.kernel.org/r/20240118183546.418064-1-appsforartists@google.comSigned-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      80441f76
  2. 19 Jan, 2024 1 commit
  3. 16 Jan, 2024 1 commit
  4. 14 Jan, 2024 1 commit
  5. 10 Jan, 2024 2 commits
  6. 04 Jan, 2024 2 commits
  7. 01 Jan, 2024 4 commits
  8. 29 Dec, 2023 1 commit
  9. 24 Dec, 2023 3 commits
  10. 23 Dec, 2023 2 commits
  11. 15 Dec, 2023 3 commits
  12. 14 Dec, 2023 11 commits
  13. 13 Dec, 2023 7 commits
  14. 12 Dec, 2023 1 commit