easyVDR Kopie des easyVDR-Forums zum Nachschlagen
Nur eine Karte liefert Bild auf D945GSEJT mit 2x TeVii S420 an Riser

easyVDR - >VARforumsname - >Nur eine Karte liefert Bild auf D945GSEJT mit 2x TeVii S420 an Riser

teekaa  01.Nov.2009 17:52:34
Hallo,

ich habe ein D945GSEJT. An dem PCI_Slot sind über eine PCI-Riser Karte 2x TeVii S420 angeschlossen. Leider bekomme ich aber nur von der ersten Karte Bilddaten angezeigt  :(

Beide Karten werden aber vom System erkannt (lspci) und ich kann zwischen den Karten zum Beispiel in den Signalinformationen wechseln. Nur Karte #0 liefert ein Bild. Beide Karten haben jeweils einen exklusiv zugewiesenen Interrupt (cat /proc/interrupts), aber scheinbar kommen nur von der ersten Karte Interrupts ???

Zu meinem System:
Ich habe zunächst das easyvdr-0.6.08-k2.6.28.9-wolf.iso installiert. Dann habe ich das VGA2SCART+FRC-Script i9xx_vga2scart_easy-vdr-0.6.08_V1.sh durchlaufen lassen und hatte von da an zumindest ein Bild. Da der 2.6.28.9-Kernel noch einige Probleme mit dem D945GSEJT hat, habe ich dann einen aktuelleren Kernel (2.6.30.9) installiert und dazu auch die DVB-Treiber neu gebaut. Dazu meine Notizen, damit nachvollziehbar ist, was ich getan habe:
Kernel 2.6.30.9 kompilieren:
============================
cd /usr/src
wget ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.9.tar.bz2
tar -xvjf linux-2.6.30.9.tar.bz2
rm linux
ln -s linux-2.6.30.9 linux
cd /usr/src/linux
make oldconfig
# Alle Nachfragen einfach mit RETURN bestätigen
make -j2 && make modules && make modules_install
# Das dauert jetzt ca. 2 Stunden und 55 Minuten
mv /usr/src/linux/arch/x86/boot/bzImage /boot/vmlinuz-2.6.30.9

GRUB anpassen:
--------------
cp .config /boot/config-2.6.30.9
cd /boot/grub
#menu.lst bearbeiten und folgenden Abschnitt hinzufügen:
title          Debian GNU/Linux, kernel 2.6.30.9
root            (hd0,2)
kernel          /boot/vmlinuz-2.6.30.9 root=/dev/sda3 ro pci=routeirq vga=0x301
savedefault
#und das savedefault der vorher aktivierten Konfiguration mit 0 ergänzen:
savedefault 0

# Jetzt neu starten!
reboot

DVB-Treiber neu bauen:
----------------------
stopvdr
cd /usr/local/src
rm DVB
hg clone http://linuxtv.org/hg/v4l-dvb
ln -s v4l-dvb DVB
cd DVB
ln -s linux/include include
make clean
make release
make -j2 all && make install
# Das dauert jetzt ca. 27 Minuten

LIRC 0.8.4 neu bauen:
---------------
cd /usr/src
wget http://prdownloads.sourceforge.net/lirc/lirc-0.8.4.tar.bz2
tar -xvjf lirc-0.8.4.tar.bz2
cd lirc-0.8.4
./setup.sh
# Save configuration & run configure
rm /dev/lirc
rm /dev/lircd
make -j2 && make install
# Das dauert jetzt ca. 2-3 Minuten

# Neu starten
reboot


Und nun noch die Ausgaben von cat /proc/interrupts:
          CPU0      CPU1
  0:    2389009          0  IO-APIC-edge      timer
  1:          2          0  IO-APIC-edge      i8042
  4:          2          0  IO-APIC-edge      lirc_serial
  7:        23          0  IO-APIC-edge
  9:          1          0  IO-APIC-fasteoi  acpi
12:          4          0  IO-APIC-edge      i8042
14:          0          0  IO-APIC-edge      ide0
15:          0          0  IO-APIC-edge      ide1
16:      66812          0  IO-APIC-fasteoi  uhci_hcd:usb5, HDA Intel
17:          0          0  IO-APIC-fasteoi  cx88, cx88
18:          0          0  IO-APIC-fasteoi  uhci_hcd:usb4
19:      4040          0  IO-APIC-fasteoi  ata_piix, uhci_hcd:usb3
20:    850978          0  IO-APIC-fasteoi  cx88, cx88
23:        64          0  IO-APIC-fasteoi  ehci_hcd:usb1, uhci_hcd:usb2
28:      1237          0  PCI-MSI-edge      eth0
NMI:          0          0  Non-maskable interrupts
LOC:    1032536    2193575  Local timer interrupts
SPU:          0          0  Spurious interrupts
RES:      75344    360458  Rescheduling interrupts
CAL:        45        242  Function call interrupts
TLB:        770        727  TLB shootdowns
TRM:          0          0  Thermal event interrupts
ERR:        23
MIS:          0


und der auf die DVB-S-Karten bezogene Teil von lspci -v
05:00.0 Multimedia video controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
        Subsystem: Unknown device d420:9022
        Flags: bus master, medium devsel, latency 32, IRQ 20
        Memory at de000000 (32-bit, non-prefetchable)
        Capabilities: Vital Product Data
        Capabilities: Power Management version 2

05:00.2 Multimedia controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
        Subsystem: Unknown device d420:9022
        Flags: bus master, medium devsel, latency 32, IRQ 20
        Memory at dd000000 (32-bit, non-prefetchable)
        Capabilities: Power Management version 2

05:08.0 Multimedia video controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
        Subsystem: Unknown device d420:9022
        Flags: bus master, medium devsel, latency 32, IRQ 17
        Memory at dc000000 (32-bit, non-prefetchable)
        Capabilities: Vital Product Data
        Capabilities: Power Management version 2

05:08.2 Multimedia controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
        Subsystem: Unknown device d420:9022
        Flags: bus master, medium devsel, latency 32, IRQ 17
        Memory at db000000 (32-bit, non-prefetchable)
        Capabilities: Power Management version 2

und dmesg | grep -E "(DVB|cx88)"
[  39.664848] cx88/2: cx2388x MPEG-TS Driver Manager version 0.0.7 loaded
[  39.667006] cx88: subsystem: d420:9022, board: TeVii S420 DVB-S , frontend(s): 1
[  39.667028] cx88: TV tuner type -1, Radio tuner type -1
[  39.896198] tuner 1-0068: chip found @ 0xd0 (cx88)
[  40.254475] input: cx88 IR (TeVii S420 DVB-S) as /class/input/input7
[  40.254847] cx88/2: cx2388x 8802 Driver Manager
[  40.254897] cx88-mpeg driver manager 0000:05:00.2: PCI INT A -> GSI 20 (level, low) -> IRQ 20
[  40.254936] cx88/2: found at 0000:05:00.2, rev: 5, irq: 20, latency: 32, mmio: 0xdd000000
[  40.254966] IRQ 20/cx88: IRQF_DISABLED is not guaranteed on shared IRQs
[  40.259635] cx88: subsystem: d420:9022, board: TeVii S420 DVB-S , frontend(s): 1
[  40.259660] cx88: TV tuner type -1, Radio tuner type -1
[  40.545421] tuner 2-0068: chip found @ 0xd0 (cx88)
[  40.906824] input: cx88 IR (TeVii S420 DVB-S) as /class/input/input8
[  40.908835] cx88/2: cx2388x 8802 Driver Manager
[  40.908894] cx88-mpeg driver manager 0000:05:08.2: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[  40.908934] cx88/2: found at 0000:05:08.2, rev: 5, irq: 17, latency: 32, mmio: 0xdb000000
[  40.908965] IRQ 17/cx88: IRQF_DISABLED is not guaranteed on shared IRQs
[  40.937961] cx88/2: cx2388x dvb driver version 0.0.7 loaded
[  40.937982] cx88/2: registering cx8802 driver, type: dvb access: shared
[  40.938005] cx88/2: subsystem: d420:9022, board: TeVii S420 DVB-S
[  40.938021] cx88/2: cx2388x based DVB/ATSC card
[  40.938035] cx8802_alloc_frontends() allocating 1 frontend(s)
[  41.569865] cx88/0: cx2388x v4l2 driver version 0.0.7 loaded
[  41.570340] cx8800 0000:05:00.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20
[  41.570377] cx88/0: found at 0000:05:00.0, rev: 5, irq: 20, latency: 32, mmio: 0xde000000
[  41.570424] IRQ 20/cx88: IRQF_DISABLED is not guaranteed on shared IRQs
[  41.570794] cx88/0: registered device video0
[  41.572665] cx88/0: registered device vbi0
[  41.575474] cx8800 0000:05:08.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[  41.575514] cx88/0: found at 0000:05:08.0, rev: 5, irq: 17, latency: 32, mmio: 0xdc000000
[  41.575561] IRQ 17/cx88: IRQF_DISABLED is not guaranteed on shared IRQs
[  41.577734] cx88/0: registered device video1
[  41.579998] cx88/0: registered device vbi1
[  41.615226] cx88/2: registering cx8802 driver, type: blackbird access: shared
[  41.615248] cx88/2: subsystem: d420:9022, board: TeVii S420 DVB-S
[  41.616458] cx88/2: cx8802 probe failed, err = -19
[  41.616480] cx88/2: subsystem: d420:9022, board: TeVii S420 DVB-S
[  41.616501] cx88/2: cx8802 probe failed, err = -19
[  41.781973] DVB: registering new adapter (cx88)
[  41.781991] DVB: registering adapter 0 frontend 0 (ST STV0288 DVB-S)...
[  41.783859] cx88/2: subsystem: d420:9022, board: TeVii S420 DVB-S
[  41.783880] cx88/2: cx2388x based DVB/ATSC card
[  41.783895] cx8802_alloc_frontends() allocating 1 frontend(s)
[  42.191198] DVB: registering new adapter (cx88)
[  42.191220] DVB: registering adapter 1 frontend 0 (ST STV0288 DVB-S)...

cat /var/log/messages | grep vdr liefert für mich leider auch nichts Aussagekräftiges:
Nov  1 16:50:35 (none) RCStart: Starte Runvdr
Nov  1 16:50:35 (none) Runvdr: Setterm
Nov  1 16:50:36 (none) Runvdr: dvbdriver laden
Nov  1 16:50:50 (none) Runvdr: DVB: Loading
Nov  1 16:50:52 (none) Runvdr: DVB: Loading
Nov  1 16:50:52 (none) Runvdr: DVB: Loading
Nov  1 16:50:52 (none) Runvdr: DVB: Loading
Nov  1 16:50:52 (none) Runvdr: DVB: Loading
Nov  1 16:50:52 (none) Runvdr: DVB: Loading
Nov  1 16:50:52 (none) Runvdr: DVB: Loading
Nov  1 16:50:53 (none) Runvdr: DVB: Loading
Nov  1 16:50:53 (none) Runvdr: DVB: Loading
Nov  1 16:50:53 (none) Runvdr: DVB: Loading
Nov  1 16:50:53 (none) Runvdr: DVB: Loading
Nov  1 16:50:53 (none) Runvdr: DVB: Loading
Nov  1 16:50:53 (none) Runvdr: DVB: Loading
Nov  1 16:50:53 (none) Runvdr: DVB: Loading
Nov  1 16:50:54 (none) Runvdr: DVB: Loading
Nov  1 16:50:54 (none) Runvdr: DVB: Loading
Nov  1 16:50:54 (none) Runvdr: starte FBTV
Nov  1 16:50:54 (none) Runvdr: start Lirc on com1
Nov  1 16:50:54 (none) Runvdr: dvdreset
Nov  1 16:50:55 (none) Runvdr: Startfilm beenden
Nov  1 16:50:55 (none) Runvdr: Start VDR
Nov  1 16:51:06 (none) vdr:     Detected 2 CPUs
Nov  1 16:51:06 (none) vdr:     Enabling multithreaded video decoding
Nov  1 16:51:06 (none) vdr: [input_vdr] vdr_flush_engine: stream_start, flush skipped
Nov  1 16:51:08 (none) vdr: [input_vdr] BLANK in middle of stream! bufs queue 0 , video_fifo 0
Nov  1 16:51:09 (none) vdr: [xine..put] Detected video size 720x576
Nov  1 16:52:05 (none) vdr: [xine..put] Detected video size 720x576
Nov  1 16:52:09 (none) vdr: [xine..put] Detected video size 352x576
Nov  1 16:52:13 (none) vdr: [xine..put] Detected video size 352x576
Nov  1 16:52:15 (none) vdr: [xine..put] Detected video size 720x576
Nov  1 16:52:27 (none) vdr: [xine..put] Detected video size 720x576
Nov  1 16:52:28 (none) vdr: [xine..put] Detected video size 720x576
Nov  1 17:45:41 (none) vdr: [input_vdr] No data in 8 seconds, queuing no signal image
Nov  1 17:45:49 (none) vdr: [input_vdr] No data in 8 seconds, queuing no signal image
Nov  1 17:45:58 (none) vdr: [input_vdr] No data in 8 seconds, queuing no signal image
Nov  1 17:46:06 (none) vdr: [input_vdr] No data in 8 seconds, queuing no signal image

Mir scheint alles korrekt zu sein... Hat jemand sachdienliche Hinweise um der Lösung dieses Problems näher zu kommen?

Viele Grüße,
teekaa
zzzözzz  01.Nov.2009 19:00:54
sehen beide gut aus.

Beende doch mal vdr, lade den DVB-Treiber neu und mach auf beiden Karten jeweils nen scan.

Alternativ, benutz das femon Plugin und schalte mit den Pfeiltasten zwischen den Frontends um.
teekaa  02.Nov.2009 18:41:58
Mit dem femon Plugin habe ich das bisher auch getestet. Aber auch ein scan bringt die gleichen Ergebnisse.

Habe noch mal den Product Guide des D945GSEJT durchgeguckt und folgendes gefunden:

The PCI bus connector also supports single-slot and dual-slot riser cards for use of up
to two bus master PCI expansion cards. In order to support two PCI bus master
expansion cards, the riser card must support the following PCI signal routing:
* Pin A11: additional 33 MHz PCI clock
* Pin B10: additional PCI request signal (i.e., PREQ#2)
* Pin B14: additional PCI Grant signal (i.e., GNT#2)

Wahrscheinlich ist meine Riser-Karte (Jetway JPCI-RISER2A-PB, [url=http://www.mini-tft.de/xtc-neu/product_info.php?info=p28680_Jetway-PCI-RISER2A-PB--PCI-2x-Riser-Karte--mit-Jum.html]http://www.mini-tft.de/xtc-neu/product_info.php?info=p28680_Jetway-PCI-RISER2A-PB--PCI-2x-Riser-Karte--mit-Jum.html) nicht die richtige. Ich werde den Riser morgen mal auf der Arbeit durchmessen und prüfen ob man vielleicht was ändern kann...

Kennt jemand vielleicht eine passende Riser-Karte für das Board? Mechanisch sollte sie der Jetway möglichst ensprechen.

Viele Grüße,
teekaa
SurfaceCleanerZ  05.Dec.2009 14:32:32
Hi,
deckt sich mit meinen Erfahrungen vom Intel-Support. Denen sind Endkunden völlig egal, nur Großkunden sind interessant, wenn du 1000+ Stück genommen hätte fängts evtl. an rotfl

Hatte mal ein Board und da konnnte ich (weil es lt. Support ein Entwickler vergessen hat zu deaktivieren) sogar die Speichertimings einstellen, nur leider die Ram-Spannung NICHT. Damit liefen dann ca. 3 spezielle Ram-Riegel, die die 1,8V schafften zu Anfang der DDR2-800 Zeit.

mfG,
Stefan
Test-VDR1: HP rp5700 Fertigsystem, Core2Duo E6400, 2GB RAM, Mygica t230 Stick als Tuner, nvidia Slim-GT218 512MB PCIe x1     -   v3.5-64
VDR2 in Rente
VDR3 in Rente
VDR4: MSI G31M2 v2, Intel E5200, 6" t6963c gLCD, 2GB, WD Red 4TB, 2x TT3200, ASUS GT730-SL-2GD3-BRK, mod. Digitainergeh.       -   v3.5-64
VDR5: GIGABYTE GA-G31M-S2L, Intel E5200, GT630 passiv, 2GB, 3TB, 6"  t6963c gLCD, mod. Digitainergeh.          -   v3.5-64
VDR6: MSI MS-7236, Intel E2140, GT630 passiv, 2GB, WD Green 2TB, 6" t6963c gLCD, 2x TT3200    -    v2.5-64
[url=http://tinyurl.com/ycx4qsv]Hilfe gefällig? Dann brauchen wir ein easyInfo aus easyPortal!
SurfaceCleanerZ  01.Dec.2009 20:49:38
Hi,
mit der ging das bei VIA-Boards: Ist speziell von VIA für mini-itx boards...
http://www.vdr-wiki.de/wiki/index.php/EPIA_ME6000

Denk dran: die jumperconfiguration ist extrem kritisch, es ging bei mir auch nur eine einzige Möglichkeit! alle testen!

mfG,
Stefan
Test-VDR1: HP rp5700 Fertigsystem, Core2Duo E6400, 2GB RAM, Mygica t230 Stick als Tuner, nvidia Slim-GT218 512MB PCIe x1     -   v3.5-64
VDR2 in Rente
VDR3 in Rente
VDR4: MSI G31M2 v2, Intel E5200, 6" t6963c gLCD, 2GB, WD Red 4TB, 2x TT3200, ASUS GT730-SL-2GD3-BRK, mod. Digitainergeh.       -   v3.5-64
VDR5: GIGABYTE GA-G31M-S2L, Intel E5200, GT630 passiv, 2GB, 3TB, 6"  t6963c gLCD, mod. Digitainergeh.          -   v3.5-64
VDR6: MSI MS-7236, Intel E2140, GT630 passiv, 2GB, WD Green 2TB, 6" t6963c gLCD, 2x TT3200    -    v2.5-64
[url=http://tinyurl.com/ycx4qsv]Hilfe gefällig? Dann brauchen wir ein easyInfo aus easyPortal!
peinlich8  01.Dec.2009 21:58:10
hallo,

versuche es mit der bootoption irqpoll stat pci=routeirq

ciao,ernst
teekaa  05.Dec.2009 10:02:06
Hallo,

ich habe diesen VIA-PCI-Riser ausprobiert:
http://www.mini-tft.de/xtc-neu/product_info.php/info/p20025_PCI-Riser-Karte--vom-Mainboard-wegzeigend--1x-PCI.html

Leider kein Erfolg, egal mit welcher Jumpereinstellung. Soweit ich weiß (bitte korrigiert mich!) ist die unter http://www.vdr-wiki.de/wiki/index.php/EPIA_ME6000 genannte "Rosch 00-EXT-PCI101" funktional identisch. Auch irqpoll hatte ich bereits ausprobiert. Aber die Interrupts sind leider nicht das Problem.

Mit einer umgebauten Riserkarte (Jetway JPCI-RISER2A-PB: http://www.mini-tft.de/xtc-neu/product_info.php/info/p28680_Jetway-JPCI-RISER2A-PB--PCI-2x-Riser-Karte--mit-Ju.html ) hatte ich zwar einen Erfolg, allerdings ist diese Karte mechanisch nicht passend und durch den Umbau verursacht man sehr leicht Kurzschlüsse im PCI-Slots des Boards :-(

Bei fast allen PCI-Riser-Karten werden die Request- und Grant-Leitungen der beiden PCI-Slots über einen Logikbaustein geführt und dann auf den Slot des Boards geführt. Dieser Baustein entscheidet dann, welcher der PCI-Karten zeitweise den Bustmaster spielen darf. Dazu muss das Board und BIOS damit allerdings rechnen. Bei den meisten Boards ist das auch der Fall. Bei dem D945GSEJT ist das aber leider anders gemacht: Dort sind auf den laut PCI-Spezifikation reservierten Pins B10 und B14 extra Request- und Grant-Leitungen für den zweiten Slot aufgelegt. Nun habe ich bei der Jetway-Riser genau diese Leitungen direkt mit dem zweiten Slot verbunden und die passenden Anschlüsse zum Logikbaustein aufgetrennt. Damit bekam ich auch von beiden SAT-Karten ein Bild. Allerdings müssen zwei Drähte direkt an den Kontakten des PCI-Slots zum Boards aufgelötet werden. Auch wenn das sehr sauber gemacht wird (und das haben die Kollegen der SMD-Bestückungen gemacht) ist die Chance auf Kurzschlüsse sehr hoch, wenn der Riser leicht Spiel im Slot des Boards hat. Und dieses Spiel ist bei meiner Jetway-Riser leider zu stark ausgeprägt.

Daher bin weiterhin verzweifelt auf der Suche nach einer 2x-PCI-Riserkarte welche mit dem D945GSEJT spielt. Die Kontakte zu Intel und Rosch haben bisher noch kein funktionierendes Ergebnis gebracht, wobei der Kontakt zu Intel bisher noch überhaupt keine sachdienlichen Informationen ergeben hat (frage mich wirklich was die unter Support verstehen!). Rosch scheint da wesentlich kompetenter zu sein und kennt die beiden Arten der Busmasterzuteilungen. Neue Mini-ITX-Boards sollen immer häufiger Extra-Request- und -Grant-Leitungen verwenden. Wahrscheinlich, weil die Riser-Karten günstiger wären, da kein Logikbaustein mehr benötigt wird. Richtig günstig ist es aber nur, weil es keine passenden Riserkarten gibt. Von Intel gibt es pauschal überhaupt keine Kaufempfehlungen.

Viele Grüße,
teekee