Статьи Установка custom recovery на MTK

Phoenix

Ветеран
Сообщения
2,108
Реакции
1,837
Баллы
503
Кастомные рековери существенно увеличивают возможности при работе со смартфоном.
Например одна из последних версий TeamWin recovery project (TWRP)
имеет почти неограниченные возможности. С его помощью можно установить кастомные прошивки, программы (в zip установщике), бэкапы и восстановление резервных копий системы и/или отдельных блоков-модулей (nvram, boot.img, recovery, data.img, sytem.img), которые можно восстанавливать отдельно.
Screenshot_2009-12-31-18-07-53.png
Screenshot_2009-12-31-18-07-56.png
Screenshot_2009-12-31-18-08-25.png
Screenshot_2009-12-31-18-08-30.png
Screenshot_2009-12-31-18-08-35.png
Screenshot_2010-01-01-03-09-30.png
Screenshot_2010-01-01-03-09-49.png
Screenshot_2010-01-01-03-10-00.png
Screenshot_2010-01-01-03-10-03.png
Screenshot_2010-01-01-03-10-09.png
Screenshot_2010-01-01-03-10-25.png
Screenshot_2010-01-01-03-10-49.png
2016-04-24_11-48-21.png

Установить кастомные рековери - teamwin, clockwordmod, ctr, можно разными способами, от программ менеджеров вроде - TWRP manager, ROM manager до программных. Очень удобно использовать zip-установщики. У них не хитрый скриптовый язык и каждый любитель может с ним справиться.
Пример скрипта -
PHP:
ui_print(" ");
ui_print(" ");
ui_print("ZTE V815W - TWRP Recovery 2.8.7.0, Compiled by Jemmini");
ui_print("(*) Installing Recovery...");
package_extract_file("recovery.img", "/dev/recovery");
ui_print("(*) Done.");
(но это уже можно освятить в отдельной теме.)

Через adb -
PHP:
В режиме рековери включить команды
1. Enable ADB
2. apply update frome ADB
==================================
На ПК запустить ADB
==================================
c:\adb>adb start-server

c:\adb>adb devices
List of devices attached
0123456789ABCDEF        sideload

c:\adb>

c:\adb>adb sideload recovery-twrp3.0.2-signed.zip
loading: 'recovery-twrp3.0.2-signed.zip'
sending: 'recovery-twrp3.0.2-signed.zip'  100%

А так же через SP FlashTool (прошивальщик для MTK.)
Для МТК устройств надо выбрать scatter-файл и отметить только recovery.img, указав к нему путь.
2016-04-24_13-15-40.png
Или же записать в режиме Write Memory - ctrl+alt+v - window - указать путь к файлу и стартовый адрес по scatter-файлу

- partition_index: SYS10
partition_name: RECOVERY
file_name: recovery.img
is_download: true
type: NORMAL_ROM
linear_start_addr: 0x4180000
physical_start_addr: 0x3180000
partition_size: 0x1400000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
2016-04-24_12-55-20.png
При этом аппарат надо выключить, вынуть батарею, нажать кнопку Write memory и подключить usb-кабель к телефону.
Зайти в режим восстановления можно выключив аппарат - зажать громк.+ и вкл.
 
Последнее редактирование:

Phoenix

Ветеран
Сообщения
2,108
Реакции
1,837
Баллы
503
Eсли нет scatter-файла, то можно узнать адреса блоков в adb
PHP:
C:\adb>adb shell cat /proc/dumchar_info
Part_Name     Size                StartAddr         Type    MapTo
preloader    0x0000000001000000   0x0000000000000000   2   /dev/misc-sd
mbr          0x0000000000080000   0x0000000000000000   2   /dev/block/mmcblk0
ebr1         0x0000000000080000   0x0000000000080000   2   /dev/block/mmcblk0p1
pro_info     0x0000000000300000   0x0000000000100000   2   /dev/block/mmcblk0
nvram        0x0000000000500000   0x0000000000400000   2   /dev/block/mmcblk0
protect_f    0x0000000000a00000   0x0000000000900000   2   /dev/block/mmcblk0p2
protect_s    0x0000000000a00000   0x0000000001300000   2   /dev/block/mmcblk0p3
seccfg       0x0000000000020000   0x0000000001d00000   2   /dev/block/mmcblk0
uboot        0x0000000000060000   0x0000000001d20000   2   /dev/block/mmcblk0
bootimg      0x0000000001400000   0x0000000001d80000   2   /dev/block/mmcblk0
recovery     0x0000000001400000   0x0000000003180000   2   /dev/block/mmcblk0
sec_ro       0x0000000000600000   0x0000000004580000   2   /dev/block/mmcblk0p4
misc         0x0000000000080000   0x0000000004b80000   2   /dev/block/mmcblk0
logo         0x0000000000300000   0x0000000004c00000   2   /dev/block/mmcblk0
ebr2         0x0000000000080000   0x0000000004f00000   2   /dev/block/mmcblk0
custpack     0x000000002da00000   0x0000000004f80000   2   /dev/block/mmcblk0p5
mobile_info  0x0000000000800000   0x0000000032980000   2   /dev/block/mmcblk0p6
expdb        0x0000000000a00000   0x0000000033180000   2   /dev/block/mmcblk0
android      0x0000000020800000   0x0000000033b80000   2   /dev/block/mmcblk0p7
cache        0x000000000c800000   0x0000000054380000   2   /dev/block/mmcblk0p8
usrdata      0x0000000083f80000   0x0000000060b80000   2   /dev/block/mmcblk0p9
otp          0x0000000002b00000   0x00000000feff0200   2   /dev/block/mmcblk0
bmtpool      0x0000000001500000   0x00000000feff00a8   2   /dev/block/mmcblk0
Part_Name:Partition name you should open;
Size:size of partition
StartAddr:Start Address of partition;
Type:Type of partition(MTD=1,EMMC=2)
MapTo:actual device you operate

C:\adb>
  • linear_start_addr - начальный адрес размещения раздела в файле прошивки (байт);
  • physical_start_addr - начальный адрес размещения раздела в памяти устройства, то есть физический адрес (байт);
  • partition_size - размер раздела (байт);
Что такое scatter-файл? - MediaTek - Прошивка и root

Recovery linear_start_addr = StartAddr 0x0000000003180000+0x0000000001000000 размер первого блока preloader=0x0000000004180000

Так же можно получить катру блоков телефона при помощи программы MTKDroidTool
2016-04-24_14-53-14.png 2016-04-24_14-52-31.png
 
Последнее редактирование:
Сверху Снизу