On Fri, Jan 22, 2021 at 10:08:36PM -0700, Thomas Frohwein wrote: > CVSROOT: /cvs > Module name: src > Changes by: t...@cvs.openbsd.org 2021/01/22 22:08:36 > > Modified files: > etc : MAKEDEV.common > etc/etc.alpha : MAKEDEV.md > etc/etc.amd64 : MAKEDEV.md > etc/etc.arm64 : MAKEDEV.md > etc/etc.armv7 : MAKEDEV.md > etc/etc.hppa : MAKEDEV.md > etc/etc.i386 : MAKEDEV.md > etc/etc.landisk: MAKEDEV.md > etc/etc.loongson: MAKEDEV.md > etc/etc.macppc : MAKEDEV.md > etc/etc.octeon : MAKEDEV.md > etc/etc.powerpc64: MAKEDEV.md > etc/etc.sgi : MAKEDEV.md > etc/etc.sparc64: MAKEDEV.md > share/man/man4 : Makefile uhidev.4 usb.4 > sys/arch/alpha/alpha: conf.c > sys/arch/alpha/conf: GENERIC > sys/arch/amd64/amd64: conf.c > sys/arch/amd64/conf: GENERIC > sys/arch/arm/arm: conf.c > sys/arch/arm64/arm64: conf.c > sys/arch/arm64/conf: GENERIC > sys/arch/armv7/conf: GENERIC > sys/arch/hppa/conf: GENERIC > sys/arch/hppa/hppa: conf.c > sys/arch/i386/conf: GENERIC > sys/arch/i386/i386: conf.c > sys/arch/landisk/conf: GENERIC > sys/arch/landisk/landisk: conf.c > sys/arch/loongson/conf: GENERIC > sys/arch/loongson/loongson: conf.c > sys/arch/macppc/conf: GENERIC > sys/arch/macppc/macppc: conf.c > sys/arch/octeon/conf: GENERIC > sys/arch/octeon/octeon: conf.c > sys/arch/powerpc64/conf: GENERIC > sys/arch/powerpc64/powerpc64: conf.c > sys/arch/sgi/conf: GENERIC-IP27 GENERIC-IP30 GENERIC-IP32 > sys/arch/sgi/sgi: conf.c > sys/arch/sparc64/conf: GENERIC > sys/arch/sparc64/sparc64: conf.c > sys/dev/usb : files.usb uhid.c uhid.h > sys/sys : conf.h > Added files: > share/man/man4 : ujoy.4 > sys/dev/usb : ujoy.c > > Log message: > introduce ujoy(4), a restricted subset of uhid(4) for gamecontrollers. > This includes ujoy_hid_is_collection() to work around limitations of > hid_is_collection() until this can be combined without fallout. > > input, testing with 8bitdo controller, and ok brynet@ > PS4 controller testing, fix for hid_is_collection, and ok mglocker@ >
The commit message was a little too terse. Here what else is of note: - Creates /dev/ujoy/* device nodes with read permissions. - Besides the restrictions for these devices, this also separates this device class from other uhid devices, reducing applications poking at all uhid devices that they don't have any business interacting with. - Main consumers are devel/sdl{,2} ports. sdl2 is updated simultaneously to use new device nodes; needs >= sdl2-2.0.14p0 to work with. A patch for sdl1 is offered on ports@. - brynet@'s controller is a "NEXT SNES controller", not 8bitdo.