Re: FW: Oops when rmmoding bttv

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



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    |
+---------------------------------------------------------------------+





[Index of Archives]     [Linux DVB]     [Video Disk Recorder]     [Asterisk]     [Photo]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Free Photo Albums]     [Fedora Users]     [Fedora Women]     [ALSA Users]     [ALSA Devel]     [Linux USB]

Powered by Linux