Hello, Every hotplug package above 20040311 doesn't work right with my joystick. The device node is there, and I get /some/ output when I "cat /dev/input/js0", but no responce from button pressing. Taking it out and plugging it back in has no effect either. The "hid" module is loaded. The USB device is loaded. The dmesg output: Apr 3 18:36:51 shepherd usb 1-3: new low speed USB device using address 4 Apr 3 18:36:51 shepherd drivers/usb/core/message.c: error getting string descriptor 0 (error=-32) Apr 3 18:36:51 shepherd drivers/usb/core/message.c: error getting string descriptor 0 (error=-32) Apr 3 18:36:51 shepherd drivers/usb/input/hid-core.c: ctrl urb status -32 received Apr 3 18:36:51 shepherd drivers/usb/input/hid-core.c: ctrl urb status -32 received Apr 3 18:36:51 shepherd input: USB HID v1.00 Joystick [0925:8866] on usb-0000:00:02.0-3 There is no identifier string, and I get the same warning when it works right, so ignore that. My point is that the system is recognizing the joystick, loading up the right driver (hid), but still not working right. I'm reverting back to hotplug-20040105, where it still works. If you want any other information, ask - please. Reproducible: Always Steps to Reproduce: 1. 2. 3. Portage 2.0.50-r1 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3_pre20040207-r0, 2.6.4-gentoo-r1) ================================================================= System uname: 2.6.4-gentoo-r1 i686 AMD Athlon(tm) XP 2400+ Gentoo Base System version 1.4.3.13p1 distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=athlon-xp -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=athlon-xp -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs buildpkg ccache distcc sandbox" GENTOO_MIRRORS="ftp://mirror.ac.uk/sites/www.ibiblio.org/gentoo" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa apm avi berkdb cdr crypt cups dvd encode foomaticdb gdbm gif gpm gtk gtk2 imlib ipv6 java jpeg kde libg++ libwww mad mikmod motif mozilla mpeg mysql ncurses nls nowin oggvorbis opengl oss pam pdflib perl png python qt quicktime readline sdl slang spell sse ssl svga tcltk tcpd tetex truetype x86 xft xml2 xmms xv zlib"
Erm, it is a hid-compliant USB gamepad. Not a joystick. But it has analog-knobs, so - yeah. In fact, it's a PSX-PC usb converter with a hooked-up Dual Shock 1 controller. It's HID compliant though - so that other stuff should be irrelavant.
This isn't a hotplug issue, looks like the kernel driver is getting loaded properly. So it's probably a kernel issue. If this still happens with a 2.6.5 kernel, try creating a bug at bugzilla.kernel.org for it.
Actually, earlier hotplugs than the one I listed work (mostly). So it's not a kernel issue, but rather a hotplug one.
What different kernel modules does the older scripts load that the newer ones do not? That's all the hotplug scripts do, they shoulnd't affect the way your device works at all.
I did lsmod comparisons, and the modules loaded are exactly the same. In fact, I found that the problem lies somewhere within the /etc/hotplug/ scripts. If I use the latest hotplug, and keep the /etc/hotplug/ files from 20040105 (the last working version), my joystick works fine. However, if I do an etc-update, my joystick no longer works. I'm sure the problem is within hotplug. All other variables have been eliminated. Same kernel, same hardware, same everything, the only thing that changes is the /etc/hotplug scripts - and thats when the situation goes between "working" and "not-working".
Oh - and by the way - in all cases, the joystick shows up in dmesg and a device node is created by joydev... I can actually "cat" the device node in all cases. It's just that with the new scripts, the joystick never registers stimulus.
Some additional information: The right number of axes and buttons (18 axes, 24 buttons) are reported in jscalibrator. It just never registers any stimuli. Hotplug-20040105 is the last version where it works properly. Interestingly enough, if I unload hid and let vmware-windows98 take over the device, it works fine in there.
Ok, this should be fixed in the next hotplug release (in a day or so.)
The problem still exists for me.
Does the proper kernel driver get loaded if you plug your device in? That's all that the hotplug scripts do, they don't control the access to your device.
Yeah - the proper driver does get loaded. In fact, I'm preloading the driver in my modules.autoload.d. The problem still exists - though - that hotplug scripts from Janurary work, but the new ones do not.