1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

HowTo Image Update via Bootloader und USB

Dieses Thema im Forum "Coolstream FAQ/HowTo" wurde erstellt von Nico1987, 1. Oktober 2012.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Nico1987
    Offline

    Nico1987 Freak

    Registriert:
    17. November 2009
    Beiträge:
    231
    Zustimmungen:
    337
    Punkte für Erfolge:
    63
    Ort:
    Zuhause
    Da der ein oder andere sich seine Box mit der Updatefunktion von Neutrino das Dateisystem kaputt geflash'd hat, hier mal eine Schritt für Schritt Anleitung, wie man das Dateisystem über den Bootloader und einen USB-Stick wieder einspielen kann. Hierbei geht es ausschließlich um das Dateisystem. Für den Linux-Kernel sind die im folgenden angegebenen Adressen falsch.

    Voraussetzungen:
    - PC ist per Nullmodemkabel mit der Box verbunden
    - Auf dem PC läuft ein Terminalprogramm, wie z.B. das Windows eigene Hyperterm, mit den Parametern 115200 Baud, 8 Datenbits, 1 Stopbit, keine Parität, kein Handshake
    - der USB-Stick ist im FAT-Dateisystem formatiert
    - auf dem USB-Stick befindet sich das flashende Image in entpackter Form (kein zip, gz, 7u oder sonstiges) in dessen Wurzelverzeichnis

    Und so gehts:

    Schritt 1:

    Box einschalten und sofort nach der Hardwareausgabe des Bootloaders im Terminalprogramm eine Taste drücken, so das der Startvorgang unterbrochen wird.

    Die Anzeige im Terminalprogramm sollte z.B. so aussehen:

    Code:

    +------------------------------------------------------------------------------+ ¦ U-Boot 2009.03-svn860 (Jun 03 2009 - 10:20:46) Coolstream HD1 ¦ ¦------------------------------------------------------------------------------¦ ¦ Chipset information ¦ ¦ Vendor: Conexant Type: CX2450x (Nevis) Revision: C0 Fuses: 7FFFC534 ¦ ¦ Option: 00010000 max. clock: 550 MHz Core voltage: high ¦ ¦------------------------------------------------------------------------------¦ ¦ Clock information ¦ ¦ MPG0: 594.000 MHz MPG1: 594.000 MHz HD : 593.407 MHz AUD : 491.520 MHz ¦ ¦ PLL0: 432.000 MHz PLL1: 550.000 MHz PLL2: 533.333 MHz ¦ ¦ CPU : 550.000 MHz from PLL1 ¦ ¦------------------------------------------------------------------------------¦ ¦ Memory configuration ¦ ¦ Start ¦ End ¦ Type ¦ Description ¦ ¦----------+----------+-------+------------------------------------------------¦ ¦ 00000000 ¦ 0FFFFFFF ¦ RAM ¦ System main memory bank #0 ¦ ¦ 10000000 ¦ 17FFFFFF ¦ RAM ¦ System main memory bank #1 ¦ ¦ F0000000 ¦ F0FFFFFF ¦ FLASH ¦ Spansion S29GL128P (128 Mbit / 8M x 16) ¦ ¦ F1000000 ¦ F1FFFFFF ¦ FLASH ¦ Spansion S29GL128P (128 Mbit / 8M x 16) ¦ ¦------------------------------------------------------------------------------¦ ¦ Serial number: 000-00000001 (00-000001) ¦ ¦------------------------------------------------------------------------------¦ ¦ Network configuration ¦ ¦ MAC: Conexant VMAC rev. 07 address: 00-C5-5C-00-00-01 ¦ ¦ PHY: IC Plus IP101 address: 09 ¦ +------------------------------------------------------------------------------+ Hit any key to stop autoboot: 0 HD1>
    Schritt 2:

    Den USB-Stick anschließen und folgendes im Terminalprogramm eintippen:

    Code:

    usb start
    Diese Eingabe bestätigt die Box mit folgender Antwort:

    Code:

    (Re)start USB... USB: ehci_hcd_init(); CX2450x init hccr e8000100 and hcor e8000140 hc_length 64 Register 10011 NbrPorts 1 USB EHCI 1.00 scanning bus for devices... 2 USB Device(s) found scanning bus for storage devices... 1 Storage Device(s) found HD1>
    Schritt 3:

    Nun wird die Imagedatei geladen. Dazu muß folgendes eingegeben werden:

    Code:

    fatload usb 0 0x0E000000 pwm.img
    Im obigen Beispiel ist die Datei pwm.img die zu ladende Datei. Im Terminalprogramm ist der aktuelle Ladefortschritt durch eine vielzahl von Punkten zu verfolgen:

    Code:

    reading pwm.img .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .................................................................................. .......................................................................... 19237640 bytes read HD1>
    Die Angabe der gelesenen Bytes - in diesem Beispiel 19237640 - notieren. Diese wird gleich wieder benötigt.

    Schritt 4:

    Löschen des für das Image vorgesehenen Bereiches im Flash. Dazu dient diese Eingabe:

    Code:

    erase 0xF0480000 0xF1FFFFFF
    Auch hier wird wieder mit Punkten der Fortschritt angezeigt:

    Code:

    .................................................................................. .......... .................................................................................. .............................................. Erased 220 sectors HD1>
    Schritt 5:

    Die oben beim Lesen der Imagedatei notierte Größenangabe ( 19237640 Byte ) durch 4 teilen. Sollte dabei ein Rest übriegbleiben, muß das Ergebnis aufgerundet werden. 19237640 / 4 = 4809410. Diese Dezimalzahl muß nun noch in die hexadezimale Darstellung umgerechnet werden. Dazu kann man z.B. den Windows-Rechner im Wissenschaftlichen Modus benutzen. 4809410 dezimal sind 0x4962C2 hexadezimal. Dieser Wert wird für den nun folgenden letzten Schritt benötigt.

    Schritt 6:

    Jetzt wird geflasht. Dazu folgendes im Terminalprogramm eingeben:

    Code:

    cp 0x0E000000 0xF0480000 0x4962C2
    In der Eingabe findet sich die berechnete Größe aus Schritt 5 wieder. Im Terminalprogramm gibt die Box abermals den Fortschritt durch eine Reihe von Punkten aus:

    Code:

    Copy to Flash... ................................................................. ........................... ...................................................... done HD1>
    An dieser Stelle ist das Image geflasht. Nun kann die Box durch Eingabe von "reset" im Terminalprogramm oder durch Aus- und Einschalten neu gestartet werden.

    Quelle=dbox2world
     
    Zuletzt bearbeitet: 3. Oktober 2012
    #1
Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen