[linux-dvb] saa7134: fixed pointer in tuner callback

hermann pitton hermann-pitton at arcor.de
Wed Apr 9 01:54:29 CEST 2008


Hi,

Am Mittwoch, den 09.04.2008, 01:17 +0200 schrieb Hartmut Hackmann:
> Hi, Christoph
> 
> This is very confusing..
> 
> Christoph Honermann schrieb:
> > Hi Hartmut�
> > 
> > Hartmut Hackmann schrieb:
> >> HI,
> >>
> >> Christoph Honermann schrieb:
> >>> Hi, Hartmund
> >>>
> >>>
> >>> Hartmut Hackmann schrieb:
> >>>> Hi, Christoph
> >>>>
> >>>> Christoph Honermann schrieb:
> >>>>  
> >>>>> Hi, Hartmund
> >>>>>
> >>>>> I have tested the following archives with my MD8800 und the DVB-S 
> >>>>> Card.
> >>>>>
> >>>>> v4l-dvb-912856e2a0ce.tar.bz2 --> The DVB-S Input 1 works.
> >>>>> The module of the following archives are loaded with the option
> >>>>> "use_frontend=1,1" at the Shell or automatically:
> >>>>>     /etc/modprobe.d/saa7134-dvb   with the following line
> >>>>>    "options saa7134-dvb use_frontend=1,1"
> >>>>> v4l-dvb-1e295a94038e.tar.bz2;
> >>>>>
> >>>>>     FATAL: Error inserting saa7134_dvb
> >>>>>     
> >>>>> (/lib/modules/2.6.22-14-generic/kernel/drivers/media/video/saa7134/saa7134-dvb.ko): 
> >>>>>
> >>>>>     Unknown symbol in module, or unknown parameter (see dmesg)
> >>>>>
> >>>>>     saa7134_dvb: disagrees about version of symbol saa7134_ts_register
> >>>>>     saa7134_dvb: Unknown symbol saa7134_ts_register
> >>>>>     saa7134_dvb: Unknown symbol videobuf_queue_sg_init
> >>>>>     saa7134_dvb: disagrees about version of symbol saa7134_set_gpio
> >>>>>     saa7134_dvb: Unknown symbol saa7134_set_gpio
> >>>>>     saa7134_dvb: disagrees about version of symbol 
> >>>>> saa7134_i2c_call_client
> >>>>>     saa7134_dvb: Unknown symbol saa7134_i2c_call_clients
> >>>>>     saa7134_dvb: disagrees about version of symbol 
> >>>>> saa7134_ts_unregister
> >>>>>     saa7134_dvb: Unknown symbol saa7134_ts_unregister
> >>>>>
> >>>>>
> >>>>> v4l-dvb-f98d28c21389.tar.bz2  and v4l-dvb-a06ac2bdeb3c.tar.bz2 -->
> >>>>>
> >>>>>     FATAL: Error inserting saa7134_dvb
> >>>>>     
> >>>>> (/lib/modules/2.6.22-14-generic/kernel/drivers/media/video/saa7134/saa7134-dvb.ko): 
> >>>>>
> >>>>>     Unknown symbol in module, or unknown parameter (see dmesg)
> >>>>>
> >>>>>     dmesg | grep saa7134
> >>>>>     saa7134_dvb: Unknown symbol saa7134_tuner_callback
> >>>>>     saa7134_dvb: disagrees about version of symbol saa7134_ts_register
> >>>>>     saa7134_dvb: Unknown symbol saa7134_ts_register
> >>>>>     saa7134_dvb: Unknown symbol videobuf_queue_sg_init
> >>>>>     saa7134_dvb: disagrees about version of symbol saa7134_set_gpio
> >>>>>     saa7134_dvb: Unknown symbol saa7134_set_gpio
> >>>>>
> >>>>> The Hardware ist working with Windows XP with both Input channels.
> >>>>>
> >>>>>     
> >>>> This occurs when you mix modules of different driver versions. You 
> >>>> need to
> >>>> replace all modules of the v4l-dvb subsystem.
> >>>> So after you compiled and installed with
> >>>>   make; make install
> >>>> you need to unload all modules of the subsystem either with
> >>>>   make rmmod
> >>>> or reboot.
> >>>> Afterwards, you can unload and reload a single module as you tried 
> >>>> to do.
> >>>>
> >>>> Hartmut
> >>>>
> >>>>   
> >>> the second DVB-S Channel is working.
> >>> But there is one thing that makes Problems.
> >>> I have the effect that the devices /dev/dvb/adapter0/dvr0 and 
> >>> /dev/dvb/adapter1/dvr0 are missed from kaffeine. Therefore it wont 
> >>> work (no TV-picture, no sound, no channel scanning).
> >>> If i look with Nautilus (file manager) therefore the whole Section 
> >>> /dev/dvb is switching off.
> >>> Can that be an effect of the module?
> >>> The Problem is sometimes not there but i don't find the reason 
> >>> (changing the Modules, reboots, ..). If I solve the Problem, should I 
> >>> test the kombination between DVB-S and DVB-T?
> >>>
> >>> Best regards
> >>> Christoph
> >>>
> >>>
> >> The device files in /dev/dvb are created by the dvb subsystem after 
> >> successful
> >> initialization. So if module loading fails as you describe above, you 
> >> won't have
> >> the devices.
> >> Your problem still is the mismatching module versions.
> >> Could it be that you have the saa7134.ko module twice in the 
> >> /lib/modules tree?
> >> You need to use the new versions of the modules. *Don't* try to mix them.
> >>
> >> Best Regards
> >>   Hartmut
> > I have checkt the devices. If I unload the Module they are not avible.
> > The modules are once in the tree and the devices are switching on and 
> > off bye
> > looking with the File Manager. I can send you an probe of the messages from
> > the Programm kaffeine with an interesting follow of reaction:
> > 
> > @kaffeine
> > kbuildsycoca running...
> > 0
> > /dev/dvb/adapter0/frontend0 : opened ( Philips TDA10086 DVB-S )
> > /dev/dvb/0/frontend1 : : No such file or directory
> > Loaded epg data : 9904 events (141 msecs)
> > kio (KIOConnection): ERROR: Could not write data
> > eltern at ubuntu:~$ Tuning to: arte / autocount: 0
> > DvbCam::probe(): /dev/dvb/adapter0/ca0: : No such file or directory
> > Using DVB device 0:0 "Philips TDA10086 DVB-S"
> > tuning DVB-S to 10743000 h 22000000
> > inv:2 fecH:5
> > DiSEqC: switch pos 0, 18V, loband (index 1)
> > DiSEqC: e0 10 38 f2 00 00
> > ...............
> > 
> > Not able to lock to the signal on the given frequency
> > Frontend closed
> > Tuning delay: 3637 ms
> > Tuning to: 3sat / autocount: 0
> > Using DVB device 0:0 "Philips TDA10086 DVB-S"
> > tuning DVB-S to 11953000 h 27500000
> > inv:2 fecH:3
> > DiSEqC: switch pos 0, 18V, hiband (index 3)
> > DiSEqC: e0 10 38 f3 00 00
> > . LOCKED.
> > *DVR DEVICE: : No such device*
> > Frontend closed
> > Tuning delay: 976 ms
> > eltern at ubuntu:~$
> > 
> > It is the original text from the console.
> > You can see that the DVB DEVICE is at once missing.
> > I have no idea why that happens. And that seem to be the cause of the 
> > Problem.
> > To be sure for the new module i have once more build them 
> > (v4l-dvb-a06ac2bdeb3c.tar.bz2).
> > - make all
> > - make rmmod
> > - make install
> > - rmmod saa7134-dvb
> > - modprobe saa7134-dvb use_frontend=1,1
> > 
> As i mentioned in a mail before, make rmmod does not necessarily do the trick,
> sorry for causing the confusion.
> but looks like the symbol version problem is gone or did you do something else?
> 
> > 
> > For your information in addition a copy from dmesg:
> > [  720.868119] DVB: registering new adapter (saa7133[1])
> > [  720.868129] DVB: registering frontend 0 (Philips TDA10086 DVB-S)...
> > [  731.320958] saa7133[0]/dvb: frontend initialization failed
> > [  731.368002] DVB: registering new adapter (saa7133[1])
> > [  731.368149] DVB: registering frontend 0 (Philips TDA10086 DVB-S)...
> > [  741.833698] saa7133[0]/dvb: frontend initialization failed
> > [  741.886609] DVB: registering new adapter (saa7133[1])
> > [  741.886766] DVB: registering frontend 0 (Philips TDA10086 DVB-S)...
> > [  752.433333] DVB: registering new adapter (saa7133[0])
> > [  752.433343] DVB: registering frontend 0 (Philips TDA10086 DVB-S)...
> > [  752.521148] DVB: registering new adapter (saa7133[1])
> > [  752.521158] DVB: registering frontend 1 (Philips TDA10086 DVB-S)...
> > [  762.946368] saa7133[0]/dvb: frontend initialization failed
> > [  762.983815] saa7133[1]/dvb: dvb_init: Medion Quadro, no tda826x found !
> > [  762.984121] DVB: registering new adapter (saa7133[1])
> > [  762.984306] DVB: registering frontend 0 (Philips TDA10086 DVB-S)...
> > [  773.392403] saa7133[0]/dvb: frontend initialization failed
> > [  773.422954] DVB: registering new adapter (saa7133[1])
> > [  773.423163] DVB: registering frontend 0 (Philips TDA10086 DVB-S)...
> > [  783.857495] saa7133[0]/dvb: frontend initialization failed
> > 
> > and so on ....
> > 
> Hm, do these messages occur in a sequence? Which messages and actions are in between?
> The driver should once register one adapter and one frontend for each saa7133.
> at driver load.
> Do you try to load and unload the driver again and again? Do you leave it few
> seconds to settle before you try to access it?
> 
> Hartmut
> 

when I was testing initially, I don't have the second device on a single
Medion Quad, but at least three such single devices, including one
CTX948, I only noticed that the use_frontend=1 option for DVB-S did not
always come through on modprobe, even on successful "make rmmod",
sometimes, despite of the option, DVB-T was loaded, but that was all.

With "use_frontend=1" in /etc/modprobe.conf that problem was gone.

As a possible work around, if related, with that option set, one can
still force on of the devices to be only TV analog capable with card=5
tuner=54, or use only analog plus DVB-T with card=117.

How to make sure in all cases, that all old modules are removed, I
posted previously and seems to be OK now ...

So, with "use frontend=1" + "depmod -a" set, maybe trying something like
"modprobe saa7134 card=96,5 tuner=54,54"
and then try DVB-S on the first bridge and next
"modprobe saa7134 card=5,96 tuner=54,54"
trying on the second bridge, which will then be DVB-S frontend 0 might
eventually help a little to sort it.

There are no problems for me to switch between usage types on the three
cards here, but I don't have that second bridge on that _same_ Quad
functional.

Cheers,
Hermann





More information about the linux-dvb mailing list