Re: Клон Emmc микросхемы H9TP32A8JDAC с помощью Z3X-box Jtag Emmc
#2
Цитата:
Сообщение от Verlaten
Есть флешь HYNIX H9TP32A8JDAC снята с телефона P780 Lenovo, имеется Z3X-box.
>skip
EMMC ROM1 (Main User Data) Capacity: 3696 MB
EMMC ROM2 (Boot Раздел 1) Емкость: 2048 kB
EMMC ROM3 (Boot Раздел 2) Емкость: 2048 kB
EMMC RPMB (Replay Protected Memory Block) Capacity: 2048 kB
>skip
Boot configuration [PARTITION_CONFIG: 0x48] Boot from:ROM2 (Boot Partition 1)
Boot bus config [177]: 0x00 , width 1bit , Partition config [179]: 0x48.
Как мне считать с нее инфу и залить в другую флеху чтоб не шить тоесть создать клон этой флехи
>skip
Может мне кто-то разъяснит как это сделать слить дамп с нее буду очень благодарен.
|
в процессорах мтк идет "последовательно-линейная" адресация флеши.
т.е. в адресном пространстве процессора MTK "как бы" не существует ROM2/ROM3/RPMB/ROM1,
для него есть общее адресное пространство, в котором адреса идут последовательно по разделам:
EMMC ROM
2 (Boot Раздел 1) Емкость: 2048
EMMC ROM
3 (Boot Раздел 2) Емкость: 2048 kB
EMMC
RPMB (Replay Protected Memory Block) Capacity: 2048 kB
EMMC ROM
1 (Main User Data) Capacity: 3696 MB
исходя из размеров разделов.
ROM
2 = 0x0
ROM
3 = 0x0+ROM1(0x200000)=0x200000
RPMB = 0x0+ROM1+ROM2=0x200000+0x200000=0x400000
ROM
1 = 0x0+ROM1+ROM2+RPMB=0x200000+0x200000+0x200000=0x600000
смотрим scat для P780:
PRELOADER
0x0 - соответстует EMMC ROM2 (Boot Раздел 1) Емкость: 2048 kB
MBR
0x600000 - EMMC ROM1 (Main User Data) Capacity: 3696 MB (смещение 0x600000 = 6MB)
равен обычно 0x0 ROM1
EBR1 0x680000
PMT 0x700000
PRO_INFO 0xb00000
NVRAM 0xe00000
теперь ключевые моменты.
для флешей до 8GB MBR начинается в scat с 6MB (ROM2+ROM3+RPMB)
для 16/32GB - начинается в scat с 12MB (ROM2+ROM3+RPMB) (4+4+4)
теперь сама суть. Вы ставите новую Flash IC.
если в новой флеше
EMMC ROM2 (Boot Раздел 1) Емкость: 2048 kB
EMMC ROM3 (Boot Раздел 2) Емкость: 2048 kB
EMMC RPMB (Replay Protected Memory Block) Capacity: 512 kB
то в ROM1 имеем смещение на
1,5MB
поэтому и не стартует.
вариант один: корректировать размеры ROM2/3/PRMB под оригинальный дамп при считывании.
не вариант: читать дампы MTK одним файлом в режиме "TEGRA_LINEAR_MODE" (правда в этом режиме не учитывается размер RPMB, он всегда будет считаться равным 0, но файлы будут одинаковые, но при этом смещение будет -2MB, если Вы пожелаете считать, например, NVRAM в отдельный файл по адресам из SCAT)
p.s. Я просил ребят из z3x прикруть режим чтения MTK почти год назад, но ..... у них есть более важные дела.