DVB-T card on the move

Message ID AYwjwtH6gjB@zocki.toppoint.de
State New
Headers

Commit Message

Rainer Zocholl Feb. 15, 2008, 7:03 p.m. UTC
  (Halim Sahin)  06.02.08 in /SPAMDETEC:

>Hi,
>A dirty but working solution is to unload and load the modules in the
>right order in startvdr skript.

Thanks, but

I tried it:

The results were very bad.
vdr do not cold start any more


The drivers/module do not seem to like been "unloaded" and
reloaded in the "right" order.

This "unloading" leads to ACPI interrupr errors
On the VDR console i could see 3 line
ACPI disabling interupt 

tried using "noacpi": do not help.

I really very frustrated as i ran the hard since years
with 1.4.3 without any problem.
(recently the new 500GB sata Samsung HD500 had developed a bad block)

Any help available?

a "how-to"

Or at least some one reading here? ;-)





Is see only a hardware solution:
Removing the DVB-T card!
I assume all other users  will have done that way, as there seems to be 
no *working* help anywhere! Atleat non to be found with teh word
i gave google/yahoo.



This patch sems to lead into a desaster (= no dvb found)

vdr:~# diff -Nau /usr/sbin/runvdr runvdr.mod




Feb 15 19:31:15 vdr runvdr: stopping after fatal fail (vdr: warning - cannot set dumpable: Invalid argument vdr: error while reading '/var/lib/vdr/setup.conf' vdr: no primary device found - using first device!)
Feb 15 19:32:00 vdr vdr: [4332] no DVB device found

 Rainer
  

Comments

Udo Richter Feb. 16, 2008, 11:12 a.m. UTC | #1
Rainer Zocholl wrote:
> This "unloading" leads to ACPI interrupr errors
> On the VDR console i could see 3 line
> ACPI disabling interupt 

This is not an error. If a DVB driver is unloaded, its IRQ is unused and 
ACPI disables this IRQ line. As soon as the driver gets loaded again, 
the ACPI IRQ will be enabled again.

For me, this is shown in syslog like this:

kernel: ACPI: PCI interrupt for device 0000:00:13.0 disabled
kernel: saa7146: unregister extension 'budget dvb'.
[...]
kernel: ACPI: PCI Interrupt 0000:00:13.0[A] -> Link [LNKA] -> GSI 11 
(level, low) -> IRQ 11
kernel: saa7146: register extension 'budget dvb'.

Cheers,

Udo
  
Rainer Zocholl Feb. 16, 2008, 1:03 p.m. UTC | #2
udo_richter@gmx.de(Udo Richter)  16.02.08 12:12

Once upon a time "Udo Richter " shaped the electrons to say...

>Rainer Zocholl wrote:
>> This "unloading" leads to ACPI interrupr errors
>> On the VDR console i could see 3 line
>> ACPI disabling interupt

>This is not an error. If a DVB driver is unloaded, its IRQ is unused
>and ACPI disables this IRQ line. 

Ah, thanks. good to know.


>As soon as the driver gets loaded
>again, the ACPI IRQ will be enabled again.

>For me, this is shown in syslog like this:

>kernel: ACPI: PCI interrupt for device 0000:00:13.0 disabled
>kernel: saa7146: unregister extension 'budget dvb'.
>[...]
>kernel: ACPI: PCI Interrupt 0000:00:13.0[A] -> Link [LNKA] -> GSI 11
>(level, low) -> IRQ 11
>kernel: saa7146: register extension 'budget dvb'.

So that does not explain the problem. Sad ;-(
  

Patch

--- /usr/sbin/runvdr    2008-01-14 21:56:11.000000000 +0100
+++ runvdr.mod  2008-02-14 23:22:35.000000000 +0100
@@ -19,6 +19,8 @@ 
         MODULES=`lsmod | grep dvb-core | cut -d'[' -f2 | cut -d']' -f1`
         [ "$MODULES" ] && MODULES="$MODULES dvb-core"
     fi
+    logger  "$MODULES"
+
 }

 function set_permissions()
@@ -39,6 +41,8 @@ 
         get_modulenames
     else
         if [ "$MODULES" ]; then
+            modprobe dvb-ttpci >/dev/null 2>&1 #2.4
+            modprobe dvb_ttpci >/dev/null 2>&1 #2.6
             for MODULE in $MODULES; do
                 modprobe $MODULE >/dev/null 2>&1
             done
@@ -67,9 +71,28 @@ 

 VDR_ERR=`mktemp -p /tmp vdr-err.XXXXXX`

+
+#revolve that senseless automatic PrimaryDVB = 2"
+grep -v "^PrimaryDVB" /var/lib/vdr/setup.conf > $VDR_ERR
+echo "PrimaryDVB = 1" >> $VDR_ERR
+mv  $VDR_ERR  /var/lib/vdr/setup.conf
+:>$VDR_ERR
+
+
 get_modulenames

+logger -t runvdrz unload
+    unload_dvb_modules
+    sleep 2
+logger -t runvdrz unloaed
+lsmod | grep dvb | logger -t runvdrz
+
+logger -t runvdrz load
 [ -z "$MODULES" ] && load_dvb_modules
+logger -t runvdrz loadied
+lsmod | grep dvb | logger -t runvdrz
+
+ echo "$MODULES"  | logger -t runvdrzm

 if [ "$VDSB_WORKAROUND" = "yes" ] && [ -x /usr/bin/szap ] ; then
     channel=àwk '/^[^:]/ {print NR; exit}' /var/lib/vdr/channels.conf`
@@ -81,6 +104,7 @@ 
     killall szap
 fi

+
 while (true) do

     set_permissions