HD Extension - U-Boot: Not ready for PCI boot

  • Hallo,


    meine Reelbox HD Extension bringt beim Kaltstart meines VDR's:


    hdshm_init_struct: Phys start 4b000000


    U-Boot: Not ready for PCI boot



    Nach einem Kaltstart und anschliessendem Reboot:


    hdshm_init_struct: Phys start c3000000


    - Dann bootet die Karte auch richtig. Aber eben erst nach einem Reboot!


    Was kann das sein?


    Habe das auf verschiedenen Kernels und Hardware probiert. Immer das gleiche Problem.
    Jetziger Kernel Debian 2.6.23-14


    Gruss


    Tomsat

    Hardware: Asus P5VD2-X, Core2Duo 2.4 Ghz, 1GB Ram, Geforce 7600 GS, 1x ATA 150, 1x ATA 400GB, 1x SATA 400GB, 1x SATA 500GB, 2x USB 400 GB, 1x TT 1500-C, 2x TT Skystar HD, 1x Reel Extension HD
    FB: Artic IR-Einschalter mit Topfield 5000 Fernbedienung
    Software: Ubuntu 2.6.22-15, VDR 1.7.0 mit Extensions-Patch-62, Multiproto
    TV: Philips 32PF9966/10

  • Ich hatte mal Probleme mit dem erkennen der Karte als im Bios "PnP aware OS" auf "yes" stand.


    Da ich gleichzeitig noch anderes rumgebastelt habe, bin ich mir nicht sicher ob es damit zusammenhing.
    Aber ausprobieren kostet ja nix.

  • Hmm, diesen Punkt finde ich nicht im Bios.


    Habe nur Plug & Play O/S = No
    Resources Controlled by = Auto


    Bringt es was den PCI-Devices einen fixen IRQ im Bios zu vergeben?

    Hardware: Asus P5VD2-X, Core2Duo 2.4 Ghz, 1GB Ram, Geforce 7600 GS, 1x ATA 150, 1x ATA 400GB, 1x SATA 400GB, 1x SATA 500GB, 2x USB 400 GB, 1x TT 1500-C, 2x TT Skystar HD, 1x Reel Extension HD
    FB: Artic IR-Einschalter mit Topfield 5000 Fernbedienung
    Software: Ubuntu 2.6.22-15, VDR 1.7.0 mit Extensions-Patch-62, Multiproto
    TV: Philips 32PF9966/10

  • Schau mal, was die LEDs auf der HDE machen. Beim Einschalten sollten die nach so 3-4s wechseln, dann ist U-Boot bereit. Evtl. ist das ein Resetproblem wg. komischer Spannungsreihenfolge vom Netzteil. Der Phys-Start ist jedenfalls sehr seltsam, viel zu tief für normale PCI-HW. Was zeigt denn "lspci -vvv -H1" in dem Zustand bei der HDE?

  • Die LED's wechseln nach zirka 3 Sek.


    lspci -vvv -H1 ergibt (nach Kaltstart=Karte läuft nicht)


    04:03.0 Multimedia controller: Unknown device 1905:8100
    Subsystem: Unknown device 1905:8100
    Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
    Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
    Interrupt: pin A routed to IRQ 255
    Region 0: Memory at dfd00000 (32-bit, non-prefetchable) [disabled]
    Region 1: Memory at 48000000 (32-bit, non-prefetchable) [disabled]
    Capabilities: [40] Power Management version 2
    Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1+,D2+,D3hot+,D3cold-)
    Status: D0 PME-Enable- DSel=0 DScale=0 PME-


    Nach restart (nach Kaltstart=Karte läuft)


    04:03.0 Multimedia controller: Unknown device 1905:8100
    Subsystem: Unknown device 1905:8100
    Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
    Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
    Latency: 32, Cache Line Size: 32 bytes
    Interrupt: pin A routed to IRQ 255
    Region 0: Memory at cffff000 (32-bit, non-prefetchable)
    Region 1: Memory at c0000000 (32-bit, non-prefetchable)
    Capabilities: [40] Power Management version 2
    Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1+,D2+,D3hot+,D3cold-)
    Status: D0 PME-Enable- DSel=0 DScale=0 PME-

    Hardware: Asus P5VD2-X, Core2Duo 2.4 Ghz, 1GB Ram, Geforce 7600 GS, 1x ATA 150, 1x ATA 400GB, 1x SATA 400GB, 1x SATA 500GB, 2x USB 400 GB, 1x TT 1500-C, 2x TT Skystar HD, 1x Reel Extension HD
    FB: Artic IR-Einschalter mit Topfield 5000 Fernbedienung
    Software: Ubuntu 2.6.22-15, VDR 1.7.0 mit Extensions-Patch-62, Multiproto
    TV: Philips 32PF9966/10

    Einmal editiert, zuletzt von tomsat ()

  • Zitat

    Original von tomsat


    Habe nur Plug & Play O/S = No


    Bringt es was den PCI-Devices einen fixen IRQ im Bios zu vergeben?


    Den meine ich. "No" ist aber korrekt, dann werden die Resource vom BIOS verteilt, sonst muss es dass OS machen. (so läuft es bei mir)
    IRQ zuteilen wird nix ändern, weil es ja ein Problem mit den Speicherbereichen und nicht mit dem IRQ gibt.

  • Hab inzwischen alle PCI-Einstellungen im Bios durchprobiert. Kann einstellen was ich will das Problem bleibt... ;(

    Hardware: Asus P5VD2-X, Core2Duo 2.4 Ghz, 1GB Ram, Geforce 7600 GS, 1x ATA 150, 1x ATA 400GB, 1x SATA 400GB, 1x SATA 500GB, 2x USB 400 GB, 1x TT 1500-C, 2x TT Skystar HD, 1x Reel Extension HD
    FB: Artic IR-Einschalter mit Topfield 5000 Fernbedienung
    Software: Ubuntu 2.6.22-15, VDR 1.7.0 mit Extensions-Patch-62, Multiproto
    TV: Philips 32PF9966/10

  • Ich habe exakt das gleiche Problem mit einem Legend QDI (jetzt Lenovo) VIA KT133A-Board mit Athlon 800.


    Mein Workaround ist es, am Anfang von rc.sysinit (OS ist Fedora 6) folgendendes zu schreiben:


    if [ "`lspci -vv -s XXXXX | grep disabled`" != "" ]; then
    reboot -f
    exit 0
    fi


    Für XXXXX muss man den Parameter aus der ersten Spalte der Ausgabe von lspci nehmen (für die HDe natürlich).


    Nachteil des Workarounds ist die Verlängerung der Boot-Zeit. Aus diesem Grunde wäre mir natürlich eine Lösung lieber, die dieses umgehen würde. Allerdings ist das Board ziemlich alt, so dass es keine aktuellen BIOS-Updates mehr gibt. Ich habe außerdem Angst um meine handgebastelte nvram-wakeup-Konfiguration.


    Einen gewissen Erfolg hatte ich im übrigen schon mit der Kernel-Option acpi=noirq in grub.conf, dann ist zumindest die IRQ-Zuordnung beim ersten Booten korrekt. Allerdings sind die Speicherbereiche immer noch disabled.

  • Die Karte braucht keine IRQ, daher ist das egal. Evtl. könnte man im Nachhinein per setpci die BAR1-Adresse (0x14) von Hand setzen, bevor man hdshm lädt. Ich zweifele nur, ob sich das dann tatsächlich in dem PCI-Config-Cache von Linux wiederspiegelt. Das normale lspci (ohne -H1) gibt nämlich nur die Daten aus dem Cache aus, und nach dem Inhalt gehen alle Treiber. Man kann zwar PCI-Hotplugevents auslösen, das ist aber eine ziemliche Fummelei im Treiber...

  • pluckides


    Das mit den Kernel-Optionen hat ausser Fehlermeldungen beim Booten nichts gebracht. Aber danke für den Workaround mit dem lspci Script. Jetzt rebootet der VDR zwar bei jedem Kaltstart aber immerhin läuft er dann. Das HDE Startscript wird bei mir in rc2.d S19 geladen. Könnte ich das auch schon früher laden? - Dann würde sich die Startzeit (mit dem Reboot) noch etwas verkürzen.


    real_schorsch
    Habe das selbe Problem übrigens bei 2 verschiedenen Motherboards, beide ASUS. Habe auch schon verschiedene Kernel probiert. Allerdings erfolglos.


    Kann man das Problem irgendwie im linux.bin oder so lösen, das auf die Karte geladen wird?

    Hardware: Asus P5VD2-X, Core2Duo 2.4 Ghz, 1GB Ram, Geforce 7600 GS, 1x ATA 150, 1x ATA 400GB, 1x SATA 400GB, 1x SATA 500GB, 2x USB 400 GB, 1x TT 1500-C, 2x TT Skystar HD, 1x Reel Extension HD
    FB: Artic IR-Einschalter mit Topfield 5000 Fernbedienung
    Software: Ubuntu 2.6.22-15, VDR 1.7.0 mit Extensions-Patch-62, Multiproto
    TV: Philips 32PF9966/10

  • "Kann man das Problem irgendwie im linux.bin oder so lösen, das auf die Karte geladen wird?"


    Nein, soweit bist du bei dem Problem noch gar nicht. Das Problem ist, dass die Karte schon vom Bios falsch konfiguriert wird (oder ein Problem mit der Bios-Konfig hat, will da nichts ausschliessen). An dem U-Boot, der auf der Karte im Flash läuft, kann es auch nicht liegen, weil der PCI-Kram auch ohne U-Boot geht. Der U-Boot im Flash wird in der Fabrik auch erst über PCI reinprogrammiert.


    Was evtl. sein könnte, ist, dass die HDE einen internen Reset hat, der erst ca. 1-2s nach dem Anlegen der Stromversorgung das Powersequencing startet. D.h. beim frischen Anschalten wird sie erst wohl nach ca. 1-2s über PCI sichtbar. Da könnte evtl. das Bios in in irgendwas reinrennen.


    Versuch mal, beim Anschalten den Reset gedrückt zu halten und erst nach ein paar s loszulassen.

  • Mit dem drücken das Resetknopfes hat es geklappt. Die Karte war nach dem Einschalten ohne zusätzlichen restart da. Kann man da im Bios noch was machen das die Karte auf Anhieb richtig initialisiert wird?

    Hardware: Asus P5VD2-X, Core2Duo 2.4 Ghz, 1GB Ram, Geforce 7600 GS, 1x ATA 150, 1x ATA 400GB, 1x SATA 400GB, 1x SATA 500GB, 2x USB 400 GB, 1x TT 1500-C, 2x TT Skystar HD, 1x Reel Extension HD
    FB: Artic IR-Einschalter mit Topfield 5000 Fernbedienung
    Software: Ubuntu 2.6.22-15, VDR 1.7.0 mit Extensions-Patch-62, Multiproto
    TV: Philips 32PF9966/10

  • Versuch doch mal im Bios Einstellungen zu aktivieren die Zeit brauchen (quick poweron Selftest : Disable,...)
    Also alles was einem zügigen Start normalerweise im Wege steht.




    Lars

  • Hm.. Weiss nicht, ob das was hilft. Das Einzige wäre wohl, den zeitbestimmenden Kondensator auf der HDE kleiner zu machen. Ist aber nur was für Leute, die genau wissen, was sie tun und wo der Lötkolben heiss wird...

  • Quickboot ausschalten hat leider nicht's gebracht. Es wäre interessant zu wissen ob dies 'nur' bei Asus-Boards auftritt. Habe jedenfalls bei 2 verschiedenen Asus-Boards (P4P800 und P5VD2-X) das gleiche Problem.


    Wenn sich das nicht Softwaremässig lösen lässt, welchen Kondensator müsste man durch welchen Wert ersetzen?

    Hardware: Asus P5VD2-X, Core2Duo 2.4 Ghz, 1GB Ram, Geforce 7600 GS, 1x ATA 150, 1x ATA 400GB, 1x SATA 400GB, 1x SATA 500GB, 2x USB 400 GB, 1x TT 1500-C, 2x TT Skystar HD, 1x Reel Extension HD
    FB: Artic IR-Einschalter mit Topfield 5000 Fernbedienung
    Software: Ubuntu 2.6.22-15, VDR 1.7.0 mit Extensions-Patch-62, Multiproto
    TV: Philips 32PF9966/10

  • Liegt wahrscheinlich am Bios, das die PCI-Initialisierung ganz schnell am Anfang macht. In der Reelbox ist das nicht aufgefallen...


    Der C wäre in SMD, Bauform 0603. Links oben neben den LEDs ist ein kleines schwarzes IC mit 5 Beinchen und der Auschrift D28B. Rechts daneben ist ein Widerstands mit "681" und direkt daneben der Kondensator (dunkelbraun). Den könnte man versuchsweise durch einen 47nF-Typ ersetzen.

  • Da ich mal nicht denke das Asus auf Anfrage von mir am Bios wohl ändern würde, wird mir ja vermutlich nicht anderes übrig bleiben als den C auszuwechseln. Werde aber zur Sicherheit zuerst mal ein Makrofoto von dem entsprechenden Teil auf dem Board machen und den entsprechenden C markieren. Poste das Foto vermutlich dann morgen.


    Wäre froh wenn du mir dann bestätigen könntest das ich auch den richtigen wechsle. Das Umlöten werde ich dann vermutlich durch Profis machen lassen. -Ist ja alles superklein ;)


    Das Auswechseln des C hat ja sonst keine anderen Effekte auf das Board, oder?

    Hardware: Asus P5VD2-X, Core2Duo 2.4 Ghz, 1GB Ram, Geforce 7600 GS, 1x ATA 150, 1x ATA 400GB, 1x SATA 400GB, 1x SATA 500GB, 2x USB 400 GB, 1x TT 1500-C, 2x TT Skystar HD, 1x Reel Extension HD
    FB: Artic IR-Einschalter mit Topfield 5000 Fernbedienung
    Software: Ubuntu 2.6.22-15, VDR 1.7.0 mit Extensions-Patch-62, Multiproto
    TV: Philips 32PF9966/10

    Einmal editiert, zuletzt von tomsat ()

  • Das Datenblatt sagt dazu:

    Code
    tRP is programmable by varying the value of the external capacitor (C1) connected to pin SRT. The equation is: tRP = 2000 x C1 (C1 in ¼F and tRP in ms)


    Datenblatt gibts hier




    Lars

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!