[Anleitung] Backup/"Readback" per SP Flash Tool

Ohne Stock ROM kommt man auch nicht ohne weiteres an ein Scatterfile. Aber ich gebe zu: da beißt sich die Katze in den Schwanz. Bevor man Custom ROMs ausprobiert - und für den NVRAM-Sektor - finde ich so ein Readback immer noch elegant, weil man die Daten gleich auf den Rechner ziehen kann - dank @Tzul ist der Aufwand ja nun überschaubar.
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: Zelda1980
Zwar ist die Sicherung des Nvram interessant, doch viel wichtiger ist das Flashen über die Option Firmware Ugrade, denn die kümmert sich selbst um das u.U. erforderliche Verschieben der identifizieren Daten.
 
  • Danke
Reaktionen: Zelda1980
Das ist aber nur nötig, wenn überhaupt irgend etwas verschoben wird - also bei verändertem Partitions-Layout.
 
  • Danke
Reaktionen: Zelda1980
...was oft bei einem Customer ROM der Fall ist. Und wenn nicht, dann bleibt es halt außen vor.
Ich flashe nur in Ausnahmefällen ein einzelne Partition.
 
Ora schrieb:
Zwar ist die Sicherung des Nvram interessant, doch viel wichtiger ist das Flashen über die Option Firmware Ugrade, denn die kümmert sich selbst um das u.U. erforderliche Verschieben der identifizieren Daten.
Sicher? Ich glaube nicht, dass dabei irgendwelche Daten verschoben werden. Würde man z.B. die Startadresse der Nvram-Partition ändern und dann im "Firmware Upgrade" Modus flashen, sollten die Nvram-Daten verloren gehen/überschrieben werden und nicht automatisch "transplantiert".

Soweit ich weiß, wird durch die Option "Firmware Upgrade" einfach die Partitionstabelle auf dem Gerät aktualisiert, mit den Werten aus der Scatterdatei. Bei älteren Geräten ist das die PT/MPT, bei neueren wohl PGPT/SGPT. Und es wird ein Flashen aller "normalen" (is_download: true) Partitionen erzwungen (zu denen Nvram standardmäßig nicht gehört).

Mit der "Download" Option liest das Flash Tool zuerst die Partitionstabelle vom Gerät, vergleicht die Werte (Name, Startadresse, Länge) mit der Scatterdatei, und bricht dann bei Unstimmigkeiten mit einer Fehlermeldung ab. Mit der "Firmware Upgrade" Option dagegen wird trotzdem geflasht und die Partitionstabelle neu geschrieben.

Bei einem älteren MT6582 Gerät habe ich nach EBR1&2-Anpassung (vergrößern von /data und verkleinern von /sdcard) die PT/MPT "manuell" aktualisiert, statt einen vollen "Firmware Upgrade" Flash zu machen. Hat problemlos funktioniert.
 
  • Danke
Reaktionen: Zelda1980 und Miss Montage
Ich flashe oft mit der Option "Firmware Upgrade" und einem unbearbeiteten Scatterfile bzgl. is_download. Allein schon wegen dem Erneuern der PTM.
Ich beobachtete dabei desöftern einen nicht initierten read back (blauer Laufbalken) als Zeichen des Sichern der relevanten Daten. Dabei habeich noch nie IMEI, Serienummer oder die Kalibrierung des Touch verloren.
 
  • Danke
Reaktionen: Zelda1980 und Miss Montage
Diesen blauen Balken habe ich noch nie beobachten können. Allerdings stimmen für mein Gerät die NVRAM-Adresse und -Länge auch bei sonst verschiedenen Partitionslayouts überein. Bei Fremdgeräten bin ich bislang mit "Download Only" ausgekommen. Danke für diese Information :).
 
  • Danke
Reaktionen: Ora und Zelda1980
Habe zwar nur 1/3 wirklich verstanden seit meinem letzten Post aber danke trotzdem für interessanten Infos :)
 
Bei meinem Vernee Thor (platform: MT6753, project: k06td_a) gibt es keine /proc/partinfo Datei. Da ich davon ausgehe, dass die Scatter-Datei aus dem verfügbaren Stock-Rom nicht mit der für das aktuelle Rom übereinstimmt möchte ich gerne eine aktuelle Scatter-Dattei erstellen. Mittels adb habe ich nur die Datei /proc/partitions gefunden. Wie kann ich aus derer Angaben eine Scatter-Datei erstellen, die mir das GESAMTE Phone ausliest?

Die partitions Datei sieht so aus:

shell@k06td_a:/proc $ cat partitions
major minor #blocks name

7 0 1254 loop0
254 0 1502072 zram0
179 0 15267840 mmcblk0
179 1 3072 mmcblk0p1
179 2 5120 mmcblk0p2
179 3 10240 mmcblk0p3
179 4 10240 mmcblk0p4
179 5 512 mmcblk0p5
179 6 512 mmcblk0p6
179 7 16384 mmcblk0p7
179 8 16384 mmcblk0p8
179 9 8192 mmcblk0p9
179 10 10240 mmcblk0p10
179 11 512 mmcblk0p11
179 12 2048 mmcblk0p12
179 13 6144 mmcblk0p13
179 14 8192 mmcblk0p14
179 15 5120 mmcblk0p15
179 16 5120 mmcblk0p16
179 17 307200 mmcblk0p17
179 18 1024 mmcblk0p18
179 19 32768 mmcblk0p19
179 20 33792 mmcblk0p20
179 21 2621440 mmcblk0p21
179 22 434176 mmcblk0p22
179 23 11712000 mmcblk0p23
179 24 16384 mmcblk0p24
179 96 4096 mmcblk0rpmb
179 64 4096 mmcblk0boot1
179 32 4096 mmcblk0boot0
253 0 2600764 dm-0
 
Zuletzt bearbeitet von einem Moderator:
Bearbeitet von: Miss Montage - Grund: Ausgabe gespoilert. Gruß, Miss Montage
Gibt es für das Thor und die aktuelle ROM Hinweise, dass Du beim Flashen die Option "Firmware Upgrade" wählen musst? Nur dann hat sich am Scatter-File im Vergleich zum Status Quo etwas geändert.
Ich habe ein TWRP von @Der Ausprobierer gesichtet, das eine Scatterdatei vom 4. Mai 2016 enthält (siehe Anhang)
Ob und wie man die Ausgabe von /proc/partitions umrechnen kann, weiß ich leider nicht. Findest Du unter /dev/block/platform Einträge? Dann kannst Du (Root vorausgesetzt) versuchen, per adb shell (su) oder Terminal Emulator folgendes einzugeben:
Code:
ls -l /dev/block/platform/*******.0/by-name
****** ist dabei durch den richtigen (generell ist es der erste) Dateinamen zu ersetzen.
 

Anhänge

  • MT6753_Android_scatter.txt
    9,5 KB · Aufrufe: 291
Also ich möchte ja vor dem flashen erstmal auslesen. Weil ich mein erstes Thor mittels flashen ruiniert habe und alle folgenden Versuche ein Stock-Rom zurück zu laden nicht wirklich zu einem alten Thor zurückgeführt haben.
Die aufgeführte Scatter-datei kenne ich aber mit eben dieser habe ich mein letztes nicht mehr richtig hinbekommen. Ich will halt ganz sicher gehen weil das auf meinem neuen Thor installierte Stock-Rom von dem welches im Netz erhältlich ist abweicht.
Leider ist natürlich auf dem jungfräulichen Thor kein SU und so kann ich die Einträge unter /dev/block/platform/ nicht listen. (permission denied...)
Kann ich beim experimentieren mit Readback (also z.B. ändern der Blockadressen im Scatter-File usw.) eigentlich etwas zerstören? Da geht es doch nur ums auslesen.
 
Nein, damit machst Du nichts kaputt, Du bekommst höchstens eine Fehlermeldung.
Das Problem wäre nur, dass Deine Sicherung falsche Partitionsangaben enthält und die gesicherten Dateien nicht korrekt zurück aufs Handy gespielt werden können.

Was Du ausprobieren kannst: Gehe im Flashtool auf den Download Modus (Download Only), lade das Scatter-File der Stock ROM, entferne alle Haken bis auf Logo (logo.bin), drücke "Download" und schließe das ausgeschaltete Handy an. Damit könntest Du Dir maximal das Startlogo zerschießen.
Wenn Du jetzt keine Fehlermeldung wie "invalid Scatterfile" oder "PMT Layout Changed, it must be downloaded" bekommst, stimmen die Angaben in der Scatterdatei mit denen auf dem Gerät überein.
 
Zuletzt bearbeitet:
Ich habe mir für das Vernee Mars auch ein Scatterfile selbst bauen müssen.
Dazu habe ich einfach die /proc/partinfo ausgelesen und mit der App disk Info Pro die Namen und die Größe der Partitonen geholt.
Dann habe ich eine SoC typisches Scatterfile entsprechend angepasst. Eine kleine Hürde war dabei noch zu überspringen, nämlich Vernee benutzt eine custom Partition.

Mit dem generierten Scatter habe ich dann via SP FT mit der Einstellung
Code:
[ReadBack]
ShowByScatter=true
das ROM mit allen Partitonen komplett auslesen können und daraus dann ein Stock ROM generiert.
Ach da gibt es die Klippe preloader.bin zu überwinden, denn der wird dabei falsch ausgelesen. Man muss das dann einfach händisch aus EMMC_BOOT_1 ab 0x800 auslesen.

hucky58 schrieb:
SU und so kann ich die Einträge unter /dev/block/platform/ nicht listen.
Ja das ist richtig!
Mache es so, wie ich es beschrieben habe...
 
  • Danke
Reaktionen: Miss Montage
Da gibt es nur ein Problem:
hucky58 schrieb:
Bei meinem Vernee Thor (platform: MT6753, project: k06td_a) gibt es keine /proc/partinfo Datei.
 
Also mit der Scatter-Datei aus dem Stock-Rom kommt keine Fehlermeldung beim flashen von nur "logo".
Habe also jetzt mal mit dieser Scatter-Datei alles markiert und den Readback-Vorgang angestossen. Dauert noch ...

Wie ich sehe wird ja in diesem Scatter-File zweimal eine Datei unter der gleichen Startadresse ausgelesen,
was soll ich davon halten? (btw. ich finde die Formatierung für Code nicht im Antwortfenster:confused2:)

# Layout Setting
#
############################################################################################################
- partition_index: SYS0
partition_name: preloader
file_name: preloader_k06td_a.bin
is_download: true
type: SV5_BL_BIN
linear_start_addr: 0x0
physical_start_addr: 0x0

partition_size: 0x40000
region: EMMC_BOOT_1
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: BOOTLOADERS
reserve: 0x00

- partition_index: SYS1
partition_name: pgpt
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x0
physical_start_addr: 0x0

partition_size: 0x80000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: INVISIBLE
reserve: 0x00
 
Zuletzt bearbeitet von einem Moderator:
Bearbeitet von: Miss Montage - Grund: Scatter Auszug gespoilert. Gruß, Miss Montage
Das ist nichts Schlimmes, es heißt eben nur, dass lineare und physische Startadresse übereinstimmen. Hat wohl damit zu tun, dass die Partitionen "logisch" verwaltet werden: Partitionen
Der Preloader liegt leicht versetzt auf einem separten Teil des Chips, was Du dort siehst, ist bei MediaTek Geräten normal.
Beim Antworten kannst Du oben das +-Zeichen anklicken, um Code oder einen Spoiler einzufügen. Manchmal muss man dazu noch "Weitere Einstellungen" antippen...
 
Zuletzt bearbeitet:
Ora schrieb:
die /proc/partinfo ausgelesen
Das war natürlich ein Freudscher "Verschreiber", stimmt die gibt es schon eine Weile nicht mehr ... dafür aber diese !
Code:
shell@k11tc_a:/ $ cat /proc/partitions
major minor  #blocks  name

   7        0       1254 loop0
 254        0    1988220 zram0
 179        0   30535680 mmcblk0
 179        1      16384 mmcblk0p1
 179        2        512 mmcblk0p2
 179        3     307200 mmcblk0p3
 179        4      10240 mmcblk0p4
 179        5       1024 mmcblk0p5
 179        6        256 mmcblk0p6
 179        7      32768 mmcblk0p7
 179        8      32768 mmcblk0p8
 179        9       8192 mmcblk0p9
 179       10       8416 mmcblk0p10
 179       11       8192 mmcblk0p11
 179       12       8192 mmcblk0p12
 179       13       3072 mmcblk0p13
 179       14      24576 mmcblk0p14
 179       15       4096 mmcblk0p15
 179       16       3072 mmcblk0p16
 179       17       5120 mmcblk0p17
 179       18       5120 mmcblk0p18
 179       19       1024 mmcblk0p19
 179       20       1024 mmcblk0p20
 179       21      16384 mmcblk0p21
 179       22       8192 mmcblk0p22
 179       23       5120 mmcblk0p23
 179       24       5120 mmcblk0p24
 179       25       6144 mmcblk0p25
 179       26      10240 mmcblk0p26
 179       27    2727936 mmcblk0p27
 179       28     434176 mmcblk0p28
 179       29   26824687 mmcblk0p29
 179       30      16384 mmcblk0p30
 179       96       4096 mmcblk0rpmb
 179       64       4096 mmcblk0boot1
 179       32       4096 mmcblk0boot0
 253        0    2706420 dm-0

Natürlich habe ich es mit der gemacht....
 
  • Danke
Reaktionen: Miss Montage
hucky58 schrieb:
Wie ich sehe wird ja in diesem Scatter-File zweimal eine Datei unter der gleichen Startadresse ausgelesen,
was soll ich davon halten? (btw. ich finde die Formatierung für Code nicht im Antwortfenster:confused2:)
Beachte die unterschiedlichen Werte für "region". Der eMMC-Speicher ist in verschiedene Bereiche aufgeteilt, die separat adressiert werden. Der Preloader ist im "boot1"-Bereich, der Rest in "user".
 
  • Danke
Reaktionen: Miss Montage
Tzul schrieb:
Der eMMC-Speicher ist in verschiedene Bereiche aufgeteilt
Stimmt, übrigens funktioniert das automatische Readback zumindestens bei der aktuellen SP FT Version mit dem Eintrag

ShowByScatter=true

für den Preloader falsch!

Aufpassen er liest das ROM_O aus der falschen Region :(
 
[QUOTE="Ora, post: 10116706, member: 142445"

Aufpassen er liest das ROM_O aus der falschen Region :([/QUOTE]

Puhhh. ??? Was heisst das für mich? Gerade der Preloader war glaube ich das was ich beim ersten Thor unwiederbringlich zerschossen hatte ....
 

Ähnliche Themen

Miss Montage
Antworten
212
Aufrufe
139.149
Wattsolls
Wattsolls
Miss Montage
Antworten
94
Aufrufe
27.447
AlphaCraft9658
AlphaCraft9658
M
Antworten
31
Aufrufe
6.424
masterandy
M
Zurück
Oben Unten