Click to See Complete Forum and Search --> : Joysticks & Linux


the_bard
11-16-2002, 07:55 PM
I've got a few questions, regarding joystick capability within Linux.

1. I can compile support for my joystick within the kernel... is this all I need to do?

2. If not, do I need to compile a joystick driver, such as www.linuxgames.com/joystick/, or http://atrey.karlin.mff.cuni.cz/~vojtech/input/?

There seems to be quite a bit of confusion regarding the issue, especially for me. According to the above pages, support is built within the 2.4.x kernel itself... then why would I want to compile it separately? Neither page quite explains it well. I've also tried both packages... neither compiles successfully as-is on my system.

Processor: Althon-XP 1600+
RAM: 512 MB PC133 Crucial
Kernel: 2.4.19
Dist.: LinuxFromScratch 4.0
Stick: M$ Forcefeedback Pro Version 1

Edit: Punctuation.

margomaps
11-16-2002, 11:50 PM
If you already have a newer kernel (such as 2.4.19), it is probably just a matter of using modprobe to load the appropriate modules.

Read /usr/src/linux-2.4.19/Documentation/input/joystick.txt and follow the instructions there. For me, with my old M$ Sidewinder Gamepad, all I had to do was 'modprobe ns558' to load the gameport driver, and everything worked perfectly (the sidewinder module was already loaded for some reason).

Good luck -- and remember, there's likely no need to mess with your kernel in this case.

the_bard
11-17-2002, 02:18 AM
My thanks. I figured it was a 50-50 chance... either the kernel was sufficient, or it wasn't *grin*.

Saved me a lot of grief, though... I've spent the last two days searching, compiling, and scratching my head trying to figure it out. I'll take a look at it again tonight, try to finish it tomorrow, and hopefully I'll be gaming by tomorrow night.

the_bard
11-17-2002, 02:58 AM
Ok... well, I gave it a shot. Here's my account:

Keep in mind that I'm using a M$ Sidewinder Forcefeedback Pro Version 1, via a Diamond MX300 sound card (Aureal Vortex 2, AU8830).

Via 'modprobe sidewinder', I can load the sidewinder module fine, along with its dependencies (gameport, input).

'jstest /dev/js0' reports "no such device." Going on a hunch, I decided to try loading the "pcigame" module, as the documentation from the above post states.

"modprobe pcigame" comes back with the following:
/lib/modules/2.4.19/kernel/drivers/char/joystick/pcigame.o: init_module: No such device
Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.
You may find more information in syslog or the output from dmesg
/lib/modules/2.4.19/kernel/drivers/char/joystick/pcigame.o: insmod /lib/modules/2.4.19/kernel/drivers/char/joystick/pcigame.o failed
/lib/modules/2.4.19/kernel/drivers/char/joystick/pcigame.o: insmod pcigame failed

Ok. So I follow the instructions... see what "dmesg" has to say, and I notice this...
au88xx: Loading...
PCI: Found IRQ 5 for device 00:0a.0
IRQ routing conflict for 00:07.2, have irq 10, want irq 5
IRQ routing conflict for 00:07.3, have irq 10, want irq 5
au88xx: Found vortex PCI device:
au88xx: id=0x0002
au88xx: bar0=0xd7000000
au88xx: irq=5
au88xx: Add device, audio=3, mixer=0, midi=2

So I take a look at "lspci -v", and discover that 00:07.2 and 00:07.3 are my USB ports...
00:07.2 USB Controller: VIA Technologies, Inc. USB (rev 16)
00:07.3 USB Controller: VIA Technologies, Inc. USB (rev 16)

Now, to sum it all up, from what I understand of it, it appears that my sound card has been issued IRQ 5. My USB controller wants IRQ 5, but has been issued 10. Apparently it still doesn't quite get the drift, and interferes with the operation of the sound card, which is why modprobe can't load the module.

(As a side note, may this be why every now and then Win98SE decides to rediscover my sound card, and request that new drivers be installed for it?)

Oh, the glories of Linux... it may not work, but by gawd, it'll at least tell me enough that I might get it to work, if I have enough intelligence (Am I *worthy*?). I'd settle for that rather than scratch my head, wondering why Windows decided to rediscover the card... if that's the explanation for it.

And more to the point, how do I issue a new IRQ to my soundcard (which I assume is jumperless, and I don't remember being able to change the IRQ using any software given to me...) so I can get this fixed?

margomaps
11-17-2002, 10:27 AM
Originally posted by the_bard
Ok... well, I gave it a shot. Here's my account:

...
Now, to sum it all up, from what I understand of it, it appears that my sound card has been issued IRQ 5. My USB controller wants IRQ 5, but has been issued 10.
...
And more to the point, how do I issue a new IRQ to my soundcard (which I assume is jumperless, and I don't remember being able to change the IRQ using any software given to me...) so I can get this fixed?

I'm no expert on the IRQ conflict issue, but I would try poking around your BIOS setup to see if there's a way to change your IRQ assignments. It's possible that your BIOS has an option to toggle on/off the assignmenet of IRQ's to your USB controllers -- maybe that's worth a shot (try it both ways).

Also, I remember now that I also had to load the joydev module in addition to the ns558 -- so when you get the IRQ issue sorted out, you might need that module as well.

Best of luck. I'm sure you'll get it working eventually. "Eventually" is a concept I've warmed up to after using Linux for a few years. ;)

the_bard
11-17-2002, 04:32 PM
Alright. I do believe this thread has graduated from "How to get my joystick working?" to "I got my joystick working... now how do I get everything else working?"

In other words, I'm taking this to a new thread & topic.