[Bug 255461] multimedia/webcamd: update xpad driver

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Apr 28 13:35:09 UTC 2021


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=255461

            Bug ID: 255461
           Summary: multimedia/webcamd: update xpad driver
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: hselasky at FreeBSD.org
          Reporter: divVerent at gmail.com
             Flags: maintainer-feedback?(hselasky at FreeBSD.org)
          Assignee: hselasky at FreeBSD.org
 Attachment #224498 text/plain
         mime type:

Created attachment 224498
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=224498&action=edit
Minimal patch (but see description)

I have a game pad (the current PowerA Xbox One one) that is not supported by
the version of xpad.c included with webcamd.

The Linux commit that fixed things for me is this one:

https://github.com/torvalds/linux/commit/9bbd77d5bbc9aff8cb74d805c31751f5f0691ba8

A minimal fix for my concrete gamepad (USB 20d6:2802) is simply adding an
XPAD_XBOXONE_VENDOR(0x20d6) line into xpad.c (attached).

Would prefer a full sync with current Linux xpad.c, of course, see
https://github.com/torvalds/linux/blob/master/drivers/input/joystick/xpad.c -
ideally just with a newer Linux kernel base. From looking at a diff of Linux'
current xpad.c and the xpad.c from 5.10-rc6, which this port uses, it seems
like the only changes were some minor refactoring (probably a kernel API
change) and lots of added devices.

Tested with a game that uses the ebiten game library and a patched go-gl/glfw
(requires https://github.com/go-gl/glfw/pull/318). Likely gonna work with SDL
and RetroArch too, haven't tested though.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ports-bugs mailing list