DM7080 bootet nur noch in Rescue Loade

Wir haben aktuell ein Problem mit dem Board und arbeiten an der Lösung...
  • Ich denke, wenn Ghost das hier nicht liest, dann war es das mit der Box. Man kann die Box via jtag bestimmt wieder zum Leben erwecken, aber dafür

    braucht es Info. Schade um die schöne Box.

  • Bei Interesse hätte ich eine DM7080HD für EUR 100,00 zzgl. Versand über.IMG_3614.jpeg

    DMM unstable OE2.5 - GP4.2 - Zombi-Shadow-FHD

    DMM unstable OE2.6 - GP4.2 - Shadow WQHD Skin

  • Sollte auch nur als Hilfe für netman gedacht sein, wenn er die Box nicht mehr hinbekommt.

    DMM unstable OE2.5 - GP4.2 - Zombi-Shadow-FHD

    DMM unstable OE2.6 - GP4.2 - Shadow WQHD Skin

  • So habe mit einem per tftp gebooteten RescueLoader den RescueLoader auf der Box wieder reaktiviert. Ich konnte jetzt auch das flash-rescue aus-

    führen ohne Fehlermeldung, aber die Box weigert sich weiterhin standhaft normal zu booten.


    Und das mit dem BOLT will nicht klappen. Mehrere Terminalprogramme ausprobiert, da geht nichts.


    Hat jemand eine DM7080 und kann mal den Output von: fdisk -lu /dev/mmcblk0 posten. Danke



  • und noch die sektoren


    \\Edit

    das könnte auch hilfreich sein




    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox


    2 Mal editiert, zuletzt von Fred Bogus Trumper ()

  • Danke für die Auflistung. Partitionen sind wieder orignal eingestellt. Aber wenn ich ein Image flashe per WebIF dann sieht alles gut aus, nur booten

    tut die Box wieder nur in den RescueLoader. Verstehe es langsam nicht mehr.


    Habe jetzt auch die Partitionen genau so benannt wie bei dir. Das interessiert die Box nicht. Ich sehe nix, weder beim RescueLoader noch beim Flashen

    eine Image. Läuft alles ohne Probleme durch. Habe auch schon ältere Image versucht, nichts. Ich glaube langsam, daß am Flash doch etwas kaputt

    ist.

  • kannst du /dev/mmcblk0p1 im rescue loader mounten und passt die Dateistruktur?

    für mich sieht das so aus, als wird der kernel nicht gefunden


    vielleicht funktioniert es so, also einfach den kernel in die 2. Boot Partition mit dem rootfs in /dev/mmcblk0p1 schreiben, dann kannst du dir das mit dem USB Stick sparen


    mount /dev/mmcblk0p1 /mnt

    flash-kernel -a /mnt/usr/share/fastboot/lcd_anim.bin -m 0x10000000 -c "bmem=512M@512M memc1=768M console=ttyS0,1000000 root=/dev/mmcblk0p1 rootwait rootfstype=ext4" -o B



    oder das müsste eigentlich auch schon reichen

    flash-kernel -a /mnt/usr/share/fastboot/lcd_anim.bin -m 0x10000000 -o B



    dann noch die boot source auf die kernel Partition B umstellen (A ist default)


    select-boot-source B

    reboot

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox


  • Bei mir geht das Flashen von einem Kernel nur, wenn ich es so probiere:


    flash-kernel -a /mnt/usr/share/fastboot/lcd_anim.bin -m 0x10000000 -o /ort/zum/vmlinux.bin



  • hi netman,


    hab zufälligerweise genau das gleiche Problem mit meiner DM7080. Sie bootet auch nur noch in den rescue-loader. Wollte das Image neu flashen, weil ich die Box verkaufen will.


    hab das gefunden:
    [gelöst] Nur Rescue Loader - sonst nichts! Bitte Hile

    Muss aber noch warten, bis das Dreamboard wieder online ist. Eine mögliche Antwort ist (hoffentlich) dort versteckt.


    LG
    tonno

  • tonno habe das ganze i-net durchsucht und in zig Foren gelesen (1 Woche lang), aber nichts hat geholfen. Vor lauter probieren hatte ich sogar keinen

    Rescue-Loader auf der Box. Aber mit Hilfe eines tftp servers ist das wieder gefixt. Ich habe auch mit diesem gebooteten Rescue-Loader versucht ein

    Image zu flaschen. Das System meldet Erfolg und trotzdem geht es wieder in den RL.

  • die Infos findet man in der /usr/sbin/flash-kernel und /usr/sbin/librecovery wobei die Funktionen ineinader verschachtelt sind


    bei der dm7080 blicke ich da leider auch noch 100%ig nicht durch, aber ich bin nun mal soweit:


    zuerst wird mit der funktion create_blob und dem binary mkbootblob ein bootblob.bin erstellt und dann mit der Funktion "write_blob bootblob.bin" der kernel geflasht


    in der Funktion write_blob wird dann IMHO das offset für für die jeweilige bootsource mitgegeben und dann mit der Funktion write_lba geflasht bzw. geschrieben


    Code
    root@dm820:~# grep -A 10 "write_lba()" /usr/sbin/librecovery
    write_lba()
    {
            info "Writing ${1} to ${2} (LBA: ${3})"
            xdd if="${1}" of="${2}" bs=512 seek="${3}"
    }

    xdd ist wieder eine Funktion in /usr/sbin/librecovery in der dd mit xtrap ausgeführt wird

    Code
    xdd()
    {
            xtrap dd conv=fsync $@
    }


    ${1} = bootblob.bin
    ${2} = das device in das der kernel geschrieben werden soll - und da bin noch nicht 100% sicher ob das /dev/mmcblk0 ist

    ${3} = das offset, also wo das schreiben des kernels beginnen soll, d.h. bootetsource A startet bei 16384, B bei 81920 - wobei mir noch nicht klar ist, ob das sektoren, bit oder byte sind, aber vermutlich Sektoren



    ich vermute also, dass das Device in das der kernel der dm7080/dm820 geschrieben wird /dev/mmcblk0 ist


    bootsource A startet bei sector 16384


    lt. librecovery ist die KERNEL_SIZE der dm7080 32 * 1024 * 1024 - also 33554432 bytes, das sind 65536 Sektoren (durch 512)


    wenn man das offset für bootsourse A (16384) und die KERNEL_SIZE (65536) zusammenzählt erhält man das offset für Bootsourse B = 81920


    addiert man nun die KERNEL_SIZE (65536) wieder zum offset für Bootsourse B (81920) erhält man 147456 sektoren, was dem Startsektor von /dev/mmcblk0p1 (rootfs) entspricht




    ergo hat die dm7080/dm820 keine eigene boot Partionen die man mit parted oder fdisk finden könnte

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox


    2 Mal editiert, zuletzt von Fred Bogus Trumper ()

  • Ok dann sind wir schon zwei. Ich habe mir auch schon gedacht, daß wenn die erste Patrition erst bei 147456 begintt.daß da was davor sein muss.

    Deshalb auch die beiden "hidden" Partitionen die man unter /dev sieht aber nicht anschauen kann

  • scheint tatsächlich so zu sein


    ich habe mir mal wieder die beiden kernel aus /dev/mmcblk0 geholt, die command line kann man im Klartext auslesen


    Code
    root@dm820:~# dd if=/dev/mmcblk0 skip=16384 of=/tmp/bootsourceA count=65536 bs=512
    65536+0 records in
    65536+0 records out
    33554432 bytes (34 MB, 32 MiB) copied, 2,39578 s, 14,0 MB/s
    root@dm820:~# grep root=/dev /tmp/bootsourceA
    bmem=512M@512M memc1=768M console=ttyS0,1000000 root=/dev/mmcblk0p1 rootwait rootfstype=ext4
    root@dm820:~#


    für boutsourse B hatte ich mal einen USB Stick auf der dm820 eingerichtet

    Code
    root@dm820:~# dd if=/dev/mmcblk0 skip=81920 of=/tmp/bootsourceB count=65536 bs=512
    65536+0 records in
    65536+0 records out
    33554432 bytes (34 MB, 32 MiB) copied, 2,41335 s, 13,9 MB/s
    root@dm820:~# grep root=/dev /tmp/bootsourceB
    bmem=512M@512M memc1=768M console=ttyS0,1000000 root=/dev/sdb1 rootwait rootfstype=ext4
    bmem=512M@512M memc1=768M console=ttyS0,1000000 root=/dev/mmcblk0p1 rootwait rootfstype=ext4
    
    root@dm820:~# 

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox


    Einmal editiert, zuletzt von Fred Bogus Trumper ()

  • Also scheint es wirklich an der Boot-Source zu hängen. Habe aber wie gesagt A und B genommen und das hat ihn nicht inreressiert.

  • kannst du mal wie in meinem letzten post die beiden kernel bzw. bootsources auslesen? das müsste auch im rescue loader funktionieren


    mich würde interessieren ob die command lines geschrieben wurden bzw. ob du sie so wie ich auch auslesen kannst


    entweder scheitert es schon beim flashen oder eben beim starten


    wenn aus irgendendeinem grund die offsets nicht mehr stimmen kann die Box beim booten den kernel nicht finden

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox