NEVER BRICK
In effetti prima di avventurarmi in modding e modifiche al firmware del telefonino mi assicuro SEMPRE di essere in grado di ripristinare l'ultima configurazione funzionante, di non perdere IMEI, ecc...
Per il Wiko Jerry - anche senza root - per fortuna è abbastanza facile...
Prima di tutto scarico dal sito WikoMobile l'ultimo aggiornamento disponibile per il firmware; al momento è disponibile la Versione V29...
il file è uno zip di 1,1Gb che, scompattato, contiene un eseguibile Windows che fa tutto da solo...
...in realtà mi accontento di farlo partire anche da Linux perchè, quando compare la schermata di aggiornamento, il programma ha scompattato in una cartellina chiamata rom il firmware intero e lo Scatter file, utilizzabili da un qualunque SP Flashtool...
Nel post precedente ho detto che l'immagine di boot del Jerry (boot.img) è standard... in effetti è priva degli Header di tutti gli altri chipset MediaTek...
...motivo per cui, in effetti, non è possibile usare MTK Droid Tools per questo chipset (MT6580).
Mi accontento allora di usare Sp Flashtool in modalità ReadBack, perchè partendo dallo Scatter file sono in grado di estrarre tutte le singole parti vitali del firmware già presenti sul telefonino...
esempio: nel file Scatter vedo blocchi come questo:
codice:
- partition_index: SYS2
partition_name: proinfo
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x80000
physical_start_addr: 0x80000
partition_size: 0x300000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: PROTECTED
reserve: 0x00
che mi permettono di leggere (readback) la partizione corrispondente.
Una volta lette tutte, sono in una botte di Ferro!
Ho raggiunto la condizione invidiabile che chiamo
NEVER BRICK
Qualunque errore commetto da adesso in poi, posso sempre recuperare e riprovare
In effetti il file Scatter del Jerry ha un errore... già...
la partizione utente (/data) è troppo corta:
se confronto il contenuto del file Scatter:
codice:
- partition_index: SYS23
partition_name: userdata
file_name: userdata.img
is_download: true
type: EXT4_IMG
linear_start_addr: 0xbb800000
physical_start_addr: 0xbb800000
partition_size: 0x60000000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
con le informazioni del Kernel sul telefono:
codice:
[doc@bilbo]$ adb shell cat /proc/partitions | grep p22
179 22 4546048 mmcblk0p22
[doc@bilbo]$
e confronto i due numeri (uno esadecimale, uno espresso in blocchi da 1Kb), vedo che non coincidono:
codice:
[doc@bilbo]$ echo $(( 0x60000000 ))
1610612736
[doc@bilbo]$ echo $(( 1024 * 4546048 ))
4655153152
[doc@bilbo]$
Mi basta, allora correggere il file Scatter con il dato reale e procedere alla lettura anche della partizione /data... cosa comunque facoltativa, potendola sempre, in effetti, ricreare da zero dopo ogni Factory reset...
La riga corretta, comunque, è:
codice:
partition_size: 0x115780000
ATTENZIONE: posso usare SP Flashtool sotto Linux come Superuser o anche come utente normale (più sicuro), se è inserito nel gruppo dialout... in fondo il telefonino in modalità Download è solo...
...un modem qualunque... già:
codice:
[doc@bilbo]$ groups
doc dialout kvm clamupdate vboxusers libvirt bumblebee
[doc@bilbo]$
Tutto qui?
NO!
Leggere il sistema (/system) in modalità readback impiega circa 15 minuti...
...leggere l'area dati (/data), invece, ne impiega più di trenta...
Quarantacinque minuti ogni volta che voglio fare una copia di sicurezza aggiornata del mio firmware? naaa...
Ho una recovery parzialmente funzionante!
Se leggo attentamente qui, scopro che esiste un comando nascosto che mi permette di fare la stessa cosa molto più velocemente da terminale...
...con il telefono in modalità recovery posso digitare questi comandi da un terminale Linux:
Per fare un backup di /system (7 minuti):
codice:
adb exec-out "dd bs=512 count=5242880 if=/dev/block/mmcblk0p20" > system.ext4
Per fare un backup di /data (13 minuti):
codice:
adb exec-out "dd bs=512 count=9092096 if=/dev/block/mmcblk0p22" > data.ext4
...e, se faccio le due copie in parallelo da due terminali, in 13 minuti ho fatto un backup di sicurezza completo con anche tutti i miei dati correnti...
...e adesso?
...a breve proverò a moddare il mio firmware V29 - ancora senza permessi di root - mantenendolo sempre senza permessi di root...
...easy play...