Что нового

Работа с устройствами бренда Samsung Решено 

Статус
Закрыто для дальнейших ответов.

Layder

Z3X-Team
.
27/8/06
2 262
619
Общие положения:

В данной статье будут рассматриваться особенности работы с eMMC, используемых в устройствах бренда Samsung.



Boot Config для eMMC, используемых в устройствах бренда Samsung зависит полностью от типа процессора, на котором собрано устройство:

1) Boot config: 0x38,0x00,0x0x - используется в устройствах с процессором Qualcomm ("Qualcomm 2" preset).
2) Boot config: 0x48,0x01,0x00 - используется в устройствах с процессором Exynos ("Exynos" preset).
3) Boot config: 0x48,0x00,0x01 - используется в устройствах с процессором MTK ("Mediatek" preset).
4) Boot config: 0x08,0x00,0x00 - используется в устройствах с процессором Spreadtrum ("Spreadtrum" preset).

также еще используются BootConfig для процессоров NVidia (Tegra) и Broadcom.


Особенности использования ROM2/ROM3/RPMB в eMMC в устройствах бренда Samsung:

1) Раздел ROM2 eMMC в устройствах бренда Samsung используются для записи Boot (все типы процессоров кроме Qualcomm, Broadcom).

2) Раздел ROM3 eMMC в устройствах бренда Samsung используются очень редко (с процессорами NVidia (Tegra)).

3) Размеры ROM2/3 критичны только для процессоров NVidia (Tegra) (должны совпадать с оригинальными). Для остальных случаев они не должны быть очень маленькими (не меньше 1-2MB), чтобы там вместились файлы из прошивки.

4) Раздел RPMB используется в устройства с процессором Exynos, поэтому при замене eMMC в устройства с процессором Exynos состояние раздела RPMB должно быть Clean. В противном случае при старте устройство упадет в режим Download с надписью Invalid RPMB Data.
Информации о требованиях к размеру раздела RPMB на текущий момент времени не известны.



Типы разметки eMMC: MBR, GPT

Особенности работы с разметкой в устройствах бренда Samsung является то, что для описания разделов, кроме MBR, GPT дополнительно используется специальный файл PIT (сохраняющийся в eMMC). Данный файл используется для разметки и соответствия расположения файлов прошивки в разделах eMMC.



Особенности восстановления файлов Boot в устройствах бренда Samsung:

1) В устройствах бренда Samsung используется защита от понижения версии загрузчика (Boot). Версия загрузчика указана в названии firmware (пример: A720FXXU5CRH3).
Поэтому восстановление устройств бренда Samsung необходимо производить с уверенностью, что используемые бинарные дампы из прошивок имеют такую же или выше версию Boot. Либо использовать режим "Write by vendor" - "Samsung", описанный ниже.

2) Для корректного восстановления файлов Boot в eMMC в устройствах бренда Samsung требуется записать в eMMC в режиме "Write by vendor" - "Samsung" как минимум содержимое файлов BL_*.tar из 4/5-ти файловой прошивки, и иногда раздел "preload" (там содержится графика для Download режима). Запись может производится через режим ISP (желательно использовать режим HiPower CLK mode), либо снятие/пайку eMMC через E-Socket.

3) Восстановление Boot с использованием режима "Write by vendor" - "Samsung" следует производить со снятой галкой "Repartition", если в аппарате существует валидный GPT (MBR) (надпись: GPT header is found and is valid в окне лога).


p.s. Сообщение полностью переписано 08.11.19
 
Последнее редактирование:

Layder

Z3X-Team
.
27/8/06
2 262
619
Особенности подготовки eMMC при ее замене в устройствах бренда Samsung:


1) Для устройства с процессором Exynos (возможно еще в некоторых, пока не известных случаях) eMMC для замены должна иметь "чистый" раздел RPMB.

Пример: EMMC RPMB (Replay Protected Memory Block) Capacity: 2048 KB (000000200000) Counter: 0 , Response: Clean

В противном случае при старте устройство упадет в режим Download с надписью Invalid RPMB Data.


2) Необходимо помнить, что в устройствах бренда Samsung используется защита от понижения версии загрузчика (Boot). Версия загрузчика указана в названии firmware (пример: A720FXXU5CRH3). И процессор устройства, которое запускалось, к примеру с 5-м Boot, не загрузится, если в новую eMMC записать дамп или прошивку с 4-м Boot.

По этой причине на сервере поддержки очень сложно и не всегда получается обновлять дампы для устройств бренда Samsung.
По этой же причине в EasyJTAG Plus Software (eMMC Tool shuite) реализована функция "Write by vendor" - "Samsung".

Поэтому восстановление устройств бренда Samsung необходимо производить с уверенностью, что используемые бинарные дампы из прошивок имеют такую же или выше версию Boot, или использовать режим "Write by vendor" - "Samsung".

3) Также одной из особенностей устройствах бренда Samsung является использование разных GUID и названий разделов в таблице GPT для разных процессоров. Нами пока не установлена 100% закономерность, какой тип GPT необходим при записи, и бывают случаи, что устройство не запускается после использования "Repartition".

"Repartition" - это функция создания новой GPT из файла PIT, используется, когда производится запись в чистую eMMC через режим "Write by vendor". На текущий момент она корректно создает GPT примерно в 95% случаев.

4) IMEI в устройствах бренда Samsung хранятся в закодированном виде в разделе EFS с привязкой с конкретному процессору устройства. Поэтому для простого восстановления IMEI в новой eMMC необходим бекап данного раздела с данного устройства. Это можно сделать в режиме "Read by vendor" - "Samsung".


Теперь, руководствуясь описанными выше данными, имеем несколько вариантов подготовки новой eMMC:

1) Для большинства устройств самый простой способ подготовки еММС - режим "Write by vendor" - "Samsung"
- стираем eMMC ("Erase All ROMs" или "Universal Factory Format" или "Samsung Factory Reset")
- в режиме "Write by vendor" - "Samsung" выбираем pit файл, файлы BL*.* (или все 4 файла прошивки).
- добавляем двойным кликом на строке EFS файл бекапа efs.bin (если есть)
- добавляем extcsd с данного устройсва для автоматической записи Boot Config (если есть)
- делаем "Write to eMMC"
- если не был добавлен Extcsd для записи Boot Config, то производим запись BootConfig через "Presets" по типу процессора, используемого в устройстве.

2) Если данный метод не работает для какой то конкретной модели устройства (некорректно формируется GPT), то нам потребуется добавить запись GPT из рабочего дампа для такой же модели, после выполнения (1).
Для этого делаем "Write by vendor" - "Samsung"
- выбираем from File
- выбираем файл дампа
- оставляем галочку только на GPT
- делаем "Write to eMMC"

3) Третий вариант:
- записать bin файлы (если Вы уверены, что версия Boot в них не ниже необходимой).
- записать Boot Config (через preset или из файла)
- записать бекап EFS ("Write by vendor" - "Samsung" - "Detect Partition from eMMC" - "Double click on EFS" - "Select File" - "Write to eMMC")



Также смотрите предыдущую тему:
купить чтобы получить доступ к скрытому контенту.
 
Последнее редактирование:
Статус
Закрыто для дальнейших ответов.

Кто читал эту тему (всего: 686) Детально

Верх Низ