linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: Conflict between v4l and adi module
       [not found] <Pine.SOL.4.33.0107310128350.2079-100000@sun3.lrz-muenchen.de>
@ 2001-07-31 16:01 ` Scott Bronson
  0 siblings, 0 replies; 2+ messages in thread
From: Scott Bronson @ 2001-07-31 16:01 UTC (permalink / raw)
  To: Oliver.Neukum, linux-kernel

> > Immediately after booting, if I fire up my BT848-based TV
> > tuner, quit, then try to open /dev/js0, [it fails].
> Can you confirm by strace that the open() fails ?

Absolutely:

...
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\210\324"..., 1024) = 1024
fstat64(3, {st_mode=S_IFREG|0755, st_size=1149960, ...}) = 0
old_mmap(NULL, 1166404, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40025000
mprotect(0x40138000, 40004, PROT_NONE)  = 0
old_mmap(0x40138000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x112000) = 0x40138000
old_mmap(0x4013e000, 15428, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4013e000
close(3)                                = 0
munmap(0x40016000, 59758)               = 0
getpid()                                = 665
open("/dev/js0", O_RDONLY)              = -1 ENODEV (No such device)
write(2, "jstest: No such device\n", 23jstest: No such device
) = 23
_exit(1)                                = ?


>> [after rmmoding and modprobing adi]
> Can you confirm that it actually works as opposed to open() working ?
> Does it produce correct values ?

Yes, open() now works and it also produces correct values.
It will continue to work, even if I use v4l again, until
I reboot.


> Do you know whether this occurs with all joysticks ?

Alas, I don't know.  I'd especially like to know if USB joysticks
work like this.  Maybe somebody else on this list could try to
reproduce the problem.


> Do you use your soundcard the joystick is attached to to play sound from
> the TV card ?

Nope.  It goes to some dedicated $5 computer speakers.  The v4l-based
webcams that also cause this problem don't have any audio either.
That was a good thought, but I'm pretty sure it's not audio related.


> Could you try compiling the joystick drivers into the kernel ?

Sure.  It didn't change anything.  /dev/jso: No such device.  However,
now I can't rmmod and insmod adi to fix it.  :)

	- Scott


> > To summarize, the failure (/dev/js0: No such device) only happens
> > if I use v4l before opening /dev/js0 after booting the computer.
> > Once /dev/js0 is successfully opened, it always works from then on.
> > rmmoding and insmoding adi always resolves the conflict.  Rebooting
> > and then using v4l before opening the joystick always causes it.

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Conflict between v4l and adi module
@ 2001-07-30 21:15 Scott Bronson
  0 siblings, 0 replies; 2+ messages in thread
From: Scott Bronson @ 2001-07-30 21:15 UTC (permalink / raw)
  To: linux-kernel

I tracked this conflict down a few days ago.  It's 100%
reproducible.  Does anyone have any insight, or any ideas
of what I should look at now?

Immediately after booting, if I fire up my BT848-based TV
tuner, quit, then try to open /dev/js0, this happens:

  [vesper] ~/joystick$ ./jstest /dev/js0
  jstest: No such device

If I don't use v4l before trying to open the joystick, everything
just works as it should.  This failure also happens if I grab
frames from my ov511-based webcam or my QuickCam Express instead
of watching TV.  That's why I think it's v4l that's the culprit.

After jstest reports the missing /dev/js0, if I rmmod adi and
modprobe it again, the joystick starts working again.  And it
continues to work from then on, no matter what I do (watch TV,
capture frames, run, quit, etc).

To summarize, the failure (/dev/js0: No such device) only happens
if I use v4l before opening /dev/js0 after booting the computer.
Once /dev/js0 is successfully opened, it always works from then on. 
rmmoding and insmoding adi always resolves the conflict.  Rebooting
and then using v4l before opening the joystick always causes it.

One last data point, probably not terribly valuable: if I leave
xawtv and the v4l driver open while I rmmod and insmod adi, then
nothing changes. jstest still reports No such device.  To get
things working, I need to close xawtv and THEN reload adi.

Linux kernel 2.4.7, X 4.0.3, on a 700 MHz AMD Athlon system.
The joystick is plugged in to a Hoontech 4DWave sound card
with Alsa drivers.  All modules are being loaded at boot by
/etc/modules:

   tulip
   bttv

   # joystick...
   joydev
   pcigame
   analog
   adi

Nothing is in the logs.

Any ideas?  Uninitialized variable maybe?  I'm happy to go
digging through the source, but I'm hoping somebody could
give me some hints to narrow down what I have to look through.
Thanks,

	- Scott

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2001-07-31 16:04 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <Pine.SOL.4.33.0107310128350.2079-100000@sun3.lrz-muenchen.de>
2001-07-31 16:01 ` Conflict between v4l and adi module Scott Bronson
2001-07-30 21:15 Scott Bronson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).