Package Details: steamos-xpad-dkms 20160806-1

Git Clone URL: https://aur.archlinux.org/steamos-xpad-dkms.git (read-only)
Package Base: steamos-xpad-dkms
Description: xpad kernel module included with Valve's SteamOS
Upstream URL: https://github.com/ValveSoftware/steamos_kernel
Keywords: controller gamepad steam xpad
Licenses: GPL2
Conflicts: steamos-xpad
Submitter: popsUlfr
Maintainer: dustball
Last Packager: dustball
Votes: 48
Popularity: 2.791893
First Submitted: 2014-01-23 19:51
Last Updated: 2016-08-06 20:31

Latest Comments

zerophase commented on 2016-10-07 18:19

Does anyone know if the XBox One Elite controller works with this driver? I believe it connects by way of bluetooth. Just checking before buying since Newegg doesn't accept returns for the controller.

zerophase commented on 2016-10-01 18:15

@ThecaTTony Yeah, I fixed the issue. I just had to go in and turn on the xpad kernel module.

PbZeppelin commented on 2016-08-06 20:26

The upstream file has changed on August 4th, and as such now has a different sha512 hash. The new hash that sha512sum spits out is:

fc8ad5dbc7789ee7ffb94fc132e92f0db9472bdea6de2844473d41e508ee1effbc77ea861ec6c03524f1a903443f24ddc45f57e84c0197e03f017e47050f67c5


The PKGBUILD will have to be updated to accomodate for the change.


Link to the upstream GitHub file:

https://github.com/ValveSoftware/steamos_kernel/tree/brewmaster-4.1/drivers/input/joystick

fallenpixel commented on 2016-08-06 14:26

xpad.c fails the checksum

ThecaTTony commented on 2016-06-23 18:29

@zerophase

Could you solve the problem with steamos-xpad-dkms and linux-ck? The same thing happened to my.

dustball commented on 2016-05-23 22:22

@bruc3: I don't know if this breaks anything else. So your best course of action is to either ask upstream to fix it, or create a fork and patch it yourself.

bruc3 commented on 2016-05-23 22:05

would it be possible to add a patch to implement these changes: http://4archive.org/board/g/thread/206346

if you cannot or would not view the link, it's a replacement from
{ 0x045e, 0x0719, "Xbox 360 Wireless Receiver", MAP_DPAD_TO_BUTTONS, XTYPE_XBOX360W },
to
{ 0x045e, 0x0719, "Microsoft X-Box 360 pad", 0, XTYPE_XBOX360W },

to fix the gamemaker studio issue detailed here: https://wiki.archlinux.org/index.php/Gamepad#SteamOS_xpad

dustball commented on 2016-05-12 18:21

@ThecaTTony This has nothing to do with my packaging, please report that to upstream.

ThecaTTony commented on 2016-05-12 18:15

While the module works well, after suspending the system often it happens that the LEDs start blinking when I turn on the joystick.

# modprobe -r steamos_xpad && modprobe steamos_xpad

Does not solve the problem, disconnecting the receiver and reconnecting again fixes. The joystick is still working properly regardless of the blinking LEDs

To any of you happened something similar? Thanks.

zerophase commented on 2016-04-02 04:17

Whenever I try to install I keep getting:

Error! There are no instances of module: steamos-xpad
20160103 located in the DKMS tree.
error: command failed to execute correctly

I tried deleting the xpad.ko.gz file from 4.4.6-1-ck kernel with no luck.

If I try to modprobe steamos-xpad I get:
steamos_xpad: Unknown symbol xpad_send_led_command (err 0)

modinfo steamos-xpad shows:

filename: /lib/modules/4.4.6-1-ck/kernel/drivers/input/joystick/steamos-xpad.ko
license: GPL
description: X-Box pad driver
author: Marko Friedemann <mfr@bmx-chemnitz.de>
alias: usb:v162Ep*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v162Ep*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v15E4p*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v15E4p*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v1532p*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v1532p*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v24C6p*d*dc*dsc*dp*icFFisc47ipD0in*
alias: usb:v24C6p*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v24C6p*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v1689p*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v1689p*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v0F0Dp*d*dc*dsc*dp*icFFisc47ipD0in*
alias: usb:v0F0Dp*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v0F0Dp*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v1BADp*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v1BADp*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v146Bp*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v146Bp*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v1430p*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v1430p*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v12ABp*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v12ABp*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v0E6Fp*d*dc*dsc*dp*icFFisc47ipD0in*
alias: usb:v0E6Fp*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v0E6Fp*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v0738p4540d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0738p*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v0738p*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v046Dp*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v046Dp*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v045Ep*d*dc*dsc*dp*icFFisc47ipD0in*
alias: usb:v045Ep*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v045Ep*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v044Fp*d*dc*dsc*dp*icFFisc5Dip81in*
alias: usb:v044Fp*d*dc*dsc*dp*icFFisc5Dip01in*
alias: usb:v*p*d*dc*dsc*dp*ic58isc42ip00in*
depends: usbcore
vermagic: 4.4.6-1-ck SMP preempt mod_unload modversions
parm: dpad_to_buttons:Map D-PAD to buttons rather than axes for unknown pads (bool)
parm: triggers_to_buttons:Map triggers to buttons rather than axes for unknown pads (bool)
parm: sticks_to_null:Do not map sticks at all for unknown pads (bool)

Ghul commented on 2016-01-07 18:09

tested ffb on grid autosport, it triggers with very long delay, I had to wait more than 40 seconds to receive each events.

ryanvade commented on 2015-02-18 14:58

Never mind. I setup the controller in steam and it all works now.

ryanvade commented on 2015-02-18 14:58

Never mind. I setup the controller in steam and it all works now.

ryanvade commented on 2015-02-16 05:41

The buttons on my Xbox one controller don't work with this for some reason.

pedrofleck commented on 2014-12-14 02:20

If you're having problems installing this, try out this great guide: http://www.libregeek.org/2014/01/26/fix-fixing-xbox-360-flashing-lights-xpad-kernel-driver/

grine commented on 2014-11-11 17:59

This package s working nicely for me, except when I reboot my computer, my wireless controller won't connect on the first try. I have to remove the batteries and connect a second time to get the lights shining correctly etc.

popsUlfr commented on 2014-10-03 19:09

Sorry for not updating this package in quite some time. Xbox One controller support has been added upstream and I also blacklisted the original xpad module in favour of the steamos "steamos-xpad" module.

swigglin commented on 2014-07-26 13:59

@popsUlfr:

Yeah, it's odd. Let me know if you would like me to test anything.

popsUlfr commented on 2014-07-26 09:25

@swigglin:

glad it worked for you, but that begs the question as to why the new xpad module wasn't prioritized over the stock one...
Maybe I should change the PKGBUILD so it installs the module as 'xpad-steamos' and blacklist the stock xpad module in /etc/modprobe.d to avoid this issue once and for all.

swigglin commented on 2014-07-26 00:10

@popsUlfr:

That's done it. Thanks!

modinfo points to the right file now and the lights on the controller do what they're meant to.

popsUlfr commented on 2014-07-25 23:23

@swigglin:

Sorry for not responding earlier...
Ok that's weird, well try manually removing /lib/modules/3.15.5-2-ARCH/kernel/drivers/input/joystick/xpad.ko.gz and then do `depmod -a 3.15.5-2-ARCH`. See which module `modinfo xpad` points to.

swigglin commented on 2014-07-24 20:54

@popsUlfr:

I unplugged the receiver and did the two modprobe commands but the lights still flash and the modinfo command has the same output as before

filename: /lib/modules/3.15.5-2-ARCH/kernel/drivers/input/joystick/xpad.ko.gz

popsUlfr commented on 2014-07-24 12:36

@swigglin:

Ah, yes I renamed the dkms module instead of steamos-xpad-dkms it is now just steamos-xpad so it would have been `dkms remove steamos-xpad-dkms/0.2 --all` actually.
But dkms was successfull this time around so you should have the patched xpad module now. If the old one was already loaded, unplug your gamepad and do `modprobe -r xpad` followed by `modprobe xpad`.

swigglin commented on 2014-07-24 10:23

@popsUlfr

Ahh, there's an error in the installation. Sorry, I didn't notice that before.

dkms remove steamos-xpad/0.2.1 --all

outputed

Error! There are no instances of module: steamos-xpad
0.2.1 located in the DKMS tree.

sudo pacman -U steamos-xpad-dkms-0.2.1-1-any.pkg.tar.xz

outputed

loading packages...
resolving dependencies...
looking for inter-conflicts...

Packages (1): steamos-xpad-dkms-0.2.1-1

Total Installed Size: 0.05 MiB
Net Upgrade Size: 0.00 MiB

:: Proceed with installation? [Y/n]
(1/1) checking keys in keyring [----------------------------------] 100%
(1/1) checking package integrity [----------------------------------] 100%
(1/1) loading package files [----------------------------------] 100%
(1/1) checking for file conflicts [----------------------------------] 100%
(1/1) checking available disk space [----------------------------------] 100%
Error! There are no instances of module: steamos-xpad
0.2 located in the DKMS tree.
error: command failed to execute correctly
(1/1) upgrading steamos-xpad-dkms [----------------------------------] 100%

Creating symlink /var/lib/dkms/steamos-xpad/0.2.1/source ->
/usr/src/steamos-xpad-0.2.1

DKMS: add completed.

Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area....
make KERNELRELEASE=3.15.5-2-ARCH KVERSION=3.15.5-2-ARCH....
cleaning build area....
Kernel cleanup unnecessary for this kernel. Skipping...

DKMS: build completed.

xpad.ko:
Running module version sanity check.
- Original module
- Found /usr/lib/modules/3.15.5-2-ARCH/kernel/drivers/input/joystick/xpad/xpad.ko
- Storing in /var/lib/dkms/steamos-xpad/original_module/3.15.5-2-ARCH/x86_64/
- Archiving for uninstallation purposes
- Installation
- Installing to /usr/lib/modules/3.15.5-2-ARCH/kernel/drivers/input/joystick/xpad/

depmod....

DKMS: install completed.

swigglin commented on 2014-07-24 10:14

Ahh, there's an error in the installation. Sorry, I didn't notice that before.

dkms remove steamos-xpad/0.2.1 --all

outputed

Error! There are no instances of module: steamos-xpad
0.2.1 located in the DKMS tree.

sudo pacman -U steamos-xpad-dkms-0.2.1-1-any.pkg.tar.xz

outputed

loading packages...
resolving dependencies...
looking for inter-conflicts...

Packages (1): steamos-xpad-dkms-0.2.1-1

Total Installed Size: 0.05 MiB
Net Upgrade Size: 0.00 MiB

:: Proceed with installation? [Y/n]
(1/1) checking keys in keyring [----------------------------------] 100%
(1/1) checking package integrity [----------------------------------] 100%
(1/1) loading package files [----------------------------------] 100%
(1/1) checking for file conflicts [----------------------------------] 100%
(1/1) checking available disk space [----------------------------------] 100%
Error! There are no instances of module: steamos-xpad
0.2 located in the DKMS tree.
error: command failed to execute correctly
(1/1) upgrading steamos-xpad-dkms [----------------------------------] 100%

Creating symlink /var/lib/dkms/steamos-xpad/0.2.1/source ->
/usr/src/steamos-xpad-0.2.1

DKMS: add completed.

Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area....
make KERNELRELEASE=3.15.5-2-ARCH KVERSION=3.15.5-2-ARCH....
cleaning build area....
Kernel cleanup unnecessary for this kernel. Skipping...

DKMS: build completed.

xpad.ko:
Running module version sanity check.
- Original module
- Found /usr/lib/modules/3.15.5-2-ARCH/kernel/drivers/input/joystick/xpad/xpad.ko
- Storing in /var/lib/dkms/steamos-xpad/original_module/3.15.5-2-ARCH/x86_64/
- Archiving for uninstallation purposes
- Installation
- Installing to /usr/lib/modules/3.15.5-2-ARCH/kernel/drivers/input/joystick/xpad/

depmod....

DKMS: install completed.

popsUlfr commented on 2014-07-24 09:35

@swigglin:

That modinfo output is not right, seems like dkms failed to install the replacement kernel module? The xpad module it's showing is the stock one from the arch kernel. depmod on arch has out of the box support for .gz compressed kernel modules, so there's absolutely no need for module-init-tools hence the kernel is already successfully using the .gz xpad module.
It seems you don't have a '/usr/lib/modules/3.15.5-2-ARCH/kernel/drivers/input/joystick/xpad/xpad.ko' present which implies dkms failed for whatever reason.
Could you try `dkms remove steamos-xpad/0.2.1 --all` and then reinstall this package `pacman -U steamos-xpad-dkms-0.2.1-1-any.pkg.tar.xz` ?

If you still have issues please post your `pacman -U steamos-xpad-dkms-0.2.1-1-any.pkg.tar.xz` output.

swigglin commented on 2014-07-24 08:58

Ahh, sorry, "didn't work" isn't overly helpful :-P. I had installed a similar dkms on Debian and it stopped the controller from continously flashing its LEDs and instead would just light up the LED for the controller number. After installing this dkms though, the lights still continously flash.

My modinfo output gives a result like yours with an additional .gz

/lib/modules/3.15.5-2-ARCH/kernel/drivers/input/joystick/xpad.ko.gz

I did a little searching and this thread suggested I might need module-init-tools to use gzipped modules https://bbs.archlinux.org/viewtopic.php?id=113777. I installed the tools but no luck.

popsUlfr commented on 2014-07-22 18:06

@swigglin:

What exactly didn't work? You don't need to have the dkms service running or enabled, it will automatically install the module for the current running kernel.
If `modinfo xpad` gives you the path '/lib/modules/[YOUR KERNEL]/kernel/drivers/input/joystick/xpad/xpad.ko' then it's installed fine.
I updated the package by the way to follow the steamos_kernel repository.

I get this call trace with 3.15.6 , not sure about the implications since my gamepad still works fine:
------------[ cut here ]------------
WARNING: CPU: 1 PID: 0 at drivers/usb/core/urb.c:450 usb_submit_urb+0x265/0x600 [usbcore]()
usb 1-4: BOGUS urb xfer, pipe 3 != type 1
Modules linked in: xpad(O) ff_memless fuse rfcomm ctr ccm bnep intel_rapl x86_pkg_temp_thermal intel_powerclamp ecb btusb kvm_intel bluetooth 6lowpan_iphc uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_core videodev media kvm arc4 iwldvm mac80211 iwlwifi microcode algif_skcipher acpi_call(O) pcspkr af_alg coretemp joydev mousedev ext4 crc16 mbcache jbd2 i2c_i801 cfg80211 mei_me mei psmouse serio_raw iTCO_wdt iTCO_vendor_support rtsx_pci_ms memstick r8169 mii lpc_ich processor snd_hda_codec_hdmi battery ac thermal thinkpad_acpi nvram led_class wmi evdev rfkill hwmon mac_hid snd_hda_codec_conexant snd_hda_codec_generic snd_hda_intel snd_hda_controller snd_hda_codec snd_hwdep snd_pcm snd_timer snd soundcore shpchp ip6t_REJECT xt_hl ip6t_rt nf_conntrack_ipv6 nf_defrag_ipv6 ipt_REJECT
xt_limit xt_tcpudp xt_addrtype nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack ip6table_filter ip6_tables nf_conntrack_netbios_ns nf_conntrack_broadcast nf_nat_ftp nf_nat nf_conntrack_ftp nf_conntrack iptable_filter ip_tables x_tables nfs lockd sunrpc fscache btrfs xor raid6_pq dm_crypt dm_mod sr_mod cdrom sd_mod crc_t10dif crct10dif_pclmul crct10dif_common crc32_pclmul crc32c_intel rtsx_pci_sdmmc ghash_clmulni_intel atkbd libps2 mmc_core aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd ahci libahci libata scsi_mod ehci_pci ehci_hcd xhci_hcd rtsx_pci usbcore usb_common i8042 serio i915 video button intel_gtt i2c_algo_bit drm_kms_helper drm i2c_core
CPU: 1 PID: 0 Comm: swapper/1 Tainted: G O 3.15.6-1-zen #1
Hardware name: LENOVO 3259A2G/3259A2G, BIOS H0ET95WW (2.55 ) 01/20/2014
0000000000000000 5cc95a0e913c1fbd ffff88021e243c80 ffffffff8151175e
ffff88021e243cc8 ffff88021e243cb8 ffffffff81069b3d ffff8800c0f660c0
0000000000000020 0000000000000003 ffff8800a6112800 0000000000000003
Call Trace:
<IRQ> [<ffffffff8151175e>] dump_stack+0x4d/0x6f
[<ffffffff81069b3d>] warn_slowpath_common+0x7d/0xa0
[<ffffffff81069bbc>] warn_slowpath_fmt+0x5c/0x80
[<ffffffffa01a0465>] usb_submit_urb+0x265/0x600 [usbcore]
[<ffffffffa11d8f96>] xpad_irq_in+0x3b6/0x500 [xpad]
[<ffffffffa019d1c7>] __usb_hcd_giveback_urb+0x77/0x110 [usbcore]
[<ffffffffa019d29f>] usb_hcd_giveback_urb+0x3f/0x140 [usbcore]
[<ffffffffa0233ef1>] xhci_irq+0x821/0x1f20 [xhci_hcd]
[<ffffffff812a2d04>] ? timerqueue_del+0x24/0x70
[<ffffffffa0235601>] xhci_msi_irq+0x11/0x20 [xhci_hcd]
[<ffffffff810c815e>] handle_irq_event_percpu+0x3e/0x1f0
[<ffffffff810c834d>] handle_irq_event+0x3d/0x60
[<ffffffff810cb1a6>] handle_edge_irq+0x66/0x130
[<ffffffff81016bce>] handle_irq+0x1e/0x40
[<ffffffff8152148d>] do_IRQ+0x4d/0xe0
[<ffffffff8151712d>] common_interrupt+0x6d/0x6d
<EOI> [<ffffffff813dd66c>] ? cpuidle_enter_state+0x4c/0xc0
[<ffffffff813dd717>] cpuidle_enter+0x17/0x20
[<ffffffff810b7c15>] cpu_startup_entry+0x385/0x4f0
[<ffffffff810451ab>] start_secondary+0x24b/0x2f0
---[ end trace d1d34ac01b2bbca3 ]---

swigglin commented on 2014-07-20 00:47

It didn't work for me with kernel 3.15.5-2-ARCH. I originally installed it before I had the DKMS service running but later reinstalled with the following

pacman -S dkms
systemctl start dkms.service
systemctl enable dkms.service
makepkg -s
pacman -U steamos-xpad-dkms-0.2-1-any.pkg.tar.xz

Is that all I needed to do?




popsUlfr commented on 2014-02-02 21:47

@ProfessorKaos64:
No problem! I prefer this to xboxdrv to be honest. It just works out of the box for my xbox360 wireless controller :)
I updated the package with the reworked patches by Pierre-Loup A. Griffais and Greg Kroah-Hartman. I guess we'll have to wait until kernel 3.15 to have the patches merged.

ProfessorKaos64 commented on 2014-01-26 04:29

Thank you! This finally fixed my flashing lights on my wireless controller. xboxdrv is ok, but I'd rather the kernel module, less maintenance. I loved it so much I wrote an article on it. Thanks man.