On 23-Apr-01 Gerd Knorr wrote: >> what I don't understand is, what is the msp3410, > > stereo TV sound decoder. > >> and why is the msp3410 >> going into auto-detect when the bttv is unloading ? > > It goes into autodetect on _loading_ (asyncronly in a kernel thread). > >> I'm wanting to sprinkle some more debugging output into the bttv and related >> modules, but I'm not sure where to start looking at. >> >> any suggestions ? > > try not loading the audio helper modules (autoload=0 option for bttv), > then check which module causes the crashes. I've come up w/ the minimal set that will cause a crash. first off. hardware info. The card detects as follows: bttv0: Bt878 (rev 2) at 00:10.0, irq: 11, latency: 32, memory: 0xd9021000 bttv0: subsystem: 0070:13eb => Hauppauge WinTV => card=1 bttv0: model: BT878(Hauppauge new (bt878)) [autodetected] bttv0: Hauppauge msp34xx: reset line init . . . bttv0: Hauppauge eeprom: model=37284, tuner=Philips FM1216 (5), radio=yes bttv0: i2c: checking for MSP34xx @ 0x80... found bttv0: i2c: checking for TDA9875 @ 0xb0... not found bttv0: i2c: checking for TDA7432 @ 0x8a... not found The MSP detects as MSP3410D-B4 msp34xx: init: chip=MSP3410D-B4, has NICAM support The tvaudio detects a tda9840 If I set the module options for bttv to: options bttv autoload=0 bttv_debug=1 and manually load the modules as follows: modprobe bttv modprobe msp3400 modprobe tvaudio rmmod bttv The kernel crashes immediately, usually with an Oops. The above modprobes (all 3) are required, and in that order. loading tvaudio before msp3400 will not detect the tda9840 chipset. and the crash will not happen. To me, this points at the tda9840 code when bttv is rmmodded, but I could be wrong. additionally, after the tda9840 is activated (by the loading of tvaudio), I see continuously the following: kernel: tda9840: thread wakeup kernel: tda9840: thread checkmode kernel: tda9840: chip_read: 0xff kernel: tda9840_getmode(): raw chip read: 255, return: 15 kernel: tda9840: chip_write: reg0=0x2a kernel: tda9840: thread wakeup kernel: tda9840: thread checkmode kernel: tda9840: chip_read: 0xff kernel: tda9840_getmode(): raw chip read: 255, return: 15 kernel: tda9840: chip_write: reg0=0x2a kernel: tda9840: thread wakeup I am assuming that the above sequence is proper and correct for a tda9840 (and I am also assuming that my tuner IS a tda9840, I have NOT checked this yet). The manual does not say (but does have a windows properties box which lists the tda9850 - not sure if this is a oversight in the documentation of if I really have a tda9850 misdetected as a 9840). Thoughts, suggestions ? -Greg +---------------------------------------------------------------------+ "DOS Computers manufactured by companies such as IBM, Compaq, Tandy, and millions of others are by far the most popular, with about 70 million machines in use wordwide. Macintosh fans, on the other hand, may note that cockroaches are far more numerous than humans, and that numbers alone do not denote a higher life form." (New York Times, November 26, 1991) | Greg Hosler i-net: hosler@xxxxxxxxxxx | +---------------------------------------------------------------------+