PDA

Просмотр полной версии : Клон Emmc микросхемы H9TP32A8JDAC с помощью Z3X-box Jtag Emmc


Verlaten
31.01.2016, 23:46
Есть флешь HYNIX H9TP32A8JDAC снята с телефона P780 Lenovo, имеется Z3X-box. Флешь определяется нормально
Вот лог (обычно я этот бокс использовал как тестер для флех чтоб зря не ставить)

EMMC CSD : D02701320F5903FFFFFFFFE78A4040E2
Изготовитель eMMC: ID: 0090 , OEM ID: 014A
EMMC Date: 10/2013 Rev.0x16
EMMC NAME: XINYH , S/N: 2701138824
EMMC NAME (HEX): 2058494E594800
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
EMMC Permanent Write Protection: No
EMMC Temporary Write Protection: No
Extended CSD rev 1.5 (MMC 4.41)
Boot configuration [PARTITION_CONFIG: 0x48] Boot from:ROM2 (Boot Partition 1)
Boot bus config [177]: 0x00 , width 1bit , Partition config [179]: 0x48.
H/W reset function [RST_N_FUNCTION]: 0x01
Backup saved: XINYH_2701138824_20160131_1250.extcsd
Сделано.

Z3X EasyJtag Box JTAG Софт версия. 2.0.6.9
Skip loading eMMC Addon Firmware
Напряжение подтяжки линии CMD :1670 mV
Напряжение активной линии CMD :1732 mV
Output file :C:\Z3X\EASYJTAG\Backups\EMMC_ROM1_00000000_100000 000.bin
Reading 0x000100000000 bytes from 0x000000000000 ...ROM1 ( USER ROM)
Read Length has been corrected to 0x0000E7000000 bytes...
Done. Read Speed: 682 kB/s

Теперь вопрос?
Как мне считать с нее инфу и залить в другую флеху чтоб не шить тоесть создать клон этой флехи
Пробовал так

http://i.imgur.com/87et5g0.jpg
сливается

http://i.imgur.com/ZCvrlzU.jpg

но при попытки залить обратно как бы процесс идет но телефон не включается после установки флешки

Может мне кто-то разъяснит как это сделать слить дамп с нее буду очень благодарен.

P.S. раньше с боксами не работал так что не бейте это мой первый:unknw:.

Layder
01.02.2016, 00:51
Есть флешь 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 ROM2 (Boot Раздел 1) Емкость: 2048
EMMC ROM3 (Boot Раздел 2) Емкость: 2048 kB
EMMC RPMB (Replay Protected Memory Block) Capacity: 2048 kB
EMMC ROM1 (Main User Data) Capacity: 3696 MB
исходя из размеров разделов.

ROM2 = 0x0
ROM3 = 0x0+ROM1(0x200000)=0x200000
RPMB = 0x0+ROM1+ROM2=0x200000+0x200000=0x400000
ROM1 = 0x0+ROM1+ROM2+RPMB=0x200000+0x200000+0x200000=0x60 0000

смотрим 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 почти год назад, но ..... у них есть более важные дела.

Layder
04.02.2016, 14:36
Высказанная мной информация в предыдущем посту - результат собственных измышлений и собранных лично знаний. Возможно я в некоторых вещах не прав, исправляйте, в чем нужно.

Привожу пример: Берем huawei G700, которые приносят на замену Flash IC.

инфо eMMC:
EMMC ROM2 (Boot Partition 1) Capacity: 2048 kB
EMMC ROM3 (Boot Partition 2) Capacity: 2048 kB
EMMC RPMB (Replay Protected Memory Block) Capacity: 2048 kB
Вычитываем дамп ROM1, ищем раздел NVRAM, находим его по адресу 0x800000, делаем бекап в файл: "HUAWEI-G700-U20_nvram_800000_50000.bin"
открываем scat, смотрим: __NODL_NVRAM 0xe00000
0xe00000 - 0x800000 = 0x600000 (6MB)

полученый NVRAM заливаю потом в прошитую флешку, или через root-adb

Verlaten
04.02.2016, 19:10
Сегодня пробовал как вы писали выше,сливал в режиме "TEGRA_LINEAR_MODE" слилось номально,при попытке залить обратно всегда останвливается в одном и том же месте как это решить
вот скрин


http://i.imgur.com/K3IGCQb.jpg?1

Layder
04.02.2016, 20:08
при попытке залить обратно всегда останвливается в одном и том же месте
а в режиме ROM1 читалось и писалось? может это микросхема умершая. на Hunix 32A8JD это нормально когда они умирают с ошибками записи начиная с каких-то адресов.

да, и думаю про "TEGRA_LINEAR_MODE" я не совсем прав. имеется ввиду, что размеры разделов ROM1/ROM2/RPMB все равно должны совпадать, потому как смещения изза разного размера RPMB не получится на выходе. так что вариант все рано читать по отдельности и помнить про смещения (исправил выше)

для MTK я вычитываю дампы тольк ради сохранения NVRAM и данных пользователя. В дальшейшем оставляю только NVRAM в виде файла с IMEI и адресами, а дампы удаляю, т.к. изза этих смещений толку от них бывает мало, когда ставишь флеши у которых другой размер RPMB и его не изменить

Verlaten
09.02.2016, 04:12
а в режиме ROM1 читалось и писалось? может это микросхема умершая. на Hunix 32A8JD это нормально когда они умирают с ошибками записи начиная с каких-то адресов.

да, и думаю про "TEGRA_LINEAR_MODE" я не совсем прав. имеется ввиду, что размеры разделов ROM1/ROM2/RPMB все равно должны совпадать, потому как смещения изза разного размера RPMB не получится на выходе. так что вариант все рано читать по отдельности и помнить про смещения (исправил выше)

для MTK я вычитываю дампы тольк ради сохранения NVRAM и данных пользователя. В дальшейшем оставляю только NVRAM в виде файла с IMEI и адресами, а дампы удаляю, т.к. изза этих смещений толку от них бывает мало, когда ставишь флеши у которых другой размер RPMB и его не изменить

Нет вы про "TEGRA_LINEAR_MODE" правы, за совет спасибо.Взял флешь выставил этот режим поставил чтоб 4 гигабайт сливались,после взял другую флешь (нажал erase,не знаю дает ли эта функция чтото)и залил full, imei и вся инфа была идентична.


Не могли бы вы выложить scater от Huawei g700,хочу разобраться на вашем примере выше что б сливать отдельные областя

Layder
16.02.2016, 20:16
Еще пример: планшет, вычитываю ROM1
EMMC ROM2 (Boot Partition 1) Capacity: 2048 kB
EMMC ROM3 (Boot Partition 2) Capacity: 2048 kB
EMMC RPMB (Replay Protected Memory Block) Capacity: 128 kB Открываем scat.txt, nvram: 0xE00000
открываем дамп, nvram: 0x9E0000
0xE00000-0x9E0000=0x420000
2048+2048+128=0x200000+0x200000+0x2000=0x420000

Verlaten
02.04.2016, 20:54
Как изменить размер boot раздела 1 и 2 на 2048kb
Пришли с китая бу флешки форматируюься пишутся флаштулом но при включении получаю лого и постояный перезагруз на оригинале 2048 у меня 4096kb вот скрин
http://i.imgur.com/R79kqCl.jpg

Layder
02.04.2016, 21:48
Как изменить размер boot раздела 1 и 2 на 2048kb
Размеры позволяют менять только микросхемы Samsung, и то не все и не на любое значение.

Verlaten
02.04.2016, 22:32
Размеры позволяют менять только микросхемы Samsung, и то не все и не на любое значение.
есть программаторы для этих целей??

Layder
03.04.2016, 12:24
есть программаторы для этих целей??
вообщето z3x easy jtag это и делает. прежде чем что-то делать инструментом (программой), надо бы почитать основы работы c emmc
последние полгода на форума по emmc ОДНИ и ТЕЖЕ вопросы в каких попало темах. никто не читает теорию, никто не хочет читать форумы и пользоваться поиском. все только спрашивают одно и тоже.

slav-on
03.04.2016, 19:40
есть программаторы для этих целей??
Более того. ИМЕЯ такой программатор не желают разбираться. Деньгу заплатил и все на этом. Само работать должно