!privacy_agreement!
!privacy_agree!

Чат

[Обсуждения] Как на самом деле проходит прошивка через EDL ? [MIUI RUssia/Moldova]

2019-07-31 01:26:42
1450 29
                      Всем Привет, с вами как всегда

         

Я думаю, вам интересно как проходит прошивку/процесс восстановления смартфонов через EDL и подумал, а почему не писать и такую тему. Но изначально, давайте изучаем структуру загрузчика.

Давайте изначально посмотрим из чего создана эта цепочка, эмулируя, обычный запуск смартфона: Изначально, смартфон, всегда стоит на готове, даже в выключеном состояний и за это отвечает PBL=Primary BootLoader (Основной загрузчик), который в своей очереди, отвечает за все манипуляции смартфона, начиная с его запуска, далее, в своем деле придет SBL=Secondary BootLoader (Дополнительный Загрузчик) что в своем деле играет роль тоннеля, для приема/передачи данных по USB, тоесть, так называемый Fastboot. После Fastboot-a, придет очередь загрузчика системы Android BootLoader, или ABOOT, далее, ABOOT, запускает монтированый образ загрузчика (Boot.img), далее, запускается ядро Kernel и потом, ядро Kernel начинает инициализацию монтированого образа системы, далее, запускается сам образ стстемы (System.img), после чего, система загружает смартфон до экрана блокировки, экран блокировки является последней части этой структуры и называется она Trust Zone=Верная Зона.
    И так, разобрались с структурой, теперь переходим к самой прошивке. И так, вы ввели смартфон в EDL, а это значит, что для его ввода, вы изначально замкнули Test Point контакты, запустился сразу PBL, что в своей очередь, будет выполнить команду: pbl init edl, что в своей очередь, начинается установка драйвера Qualcomm HS-QDLoader 9008, после чего, вы подготовили утилиту, вы запустили процесс прошивки. И здесь самый интересный и в том числе самый сложный процесс начинается...
    Изначально, утилита откроет устройство выполняя комаду:
opening device: [серийный номер устройства)
OKAY...
далее, утилита, так сказать, привествует устройство, выполняя команду:
greeting device for command mode
OKAY...
далее, происходит Идентификация устройства выполняя команду:
indentifying device
serial number...
chip id
chip rev
sv-sbl (здесь происходит, временное монтирование образа sbl1/2.mbn)
OKAY...
Далее, происходит поиск фаилов, выполняется команда:
finding files
         programmer=   ./edl/emmc_firehose_sdm660.elf
                                     /edl/emmc_firehose_sfm660_lite.elf
                                     /edl/images.bin
OKAY....
Далее, происходит валидация фаилов( подтверждение) и выполняется команда:
validating files
OKAY...
Далее, PBL, дает команду, временно запущеному SBL, чтоб этот ввел устройство в режим загрузки, что в своем очередь это и выполняет при команде:
switching to download mode
OKAY...
Далее, устройство привествуется для загрузки образа и выполняется команда:
greeting device for image downloading
OKAY...
Далее, выполняется отправка програматора, выполняется команда:
sending programmer (Firehose FHLoader)
OKAY...
Далее, шиется образ sbl1.mbn, для постоянного досттупа в Fastboot, выполняя команду:
edl flash sbl1 sbl1.mbn
OKAY
Устройство выполняет перезапуск, выполняется команда:
rebooting target...
OKAY...
Проверается версия загрузчика SBL выполняя команду:
fastboot getvar-version bootloader version bootloader:.....
Далее, начинается процесс прошивки загрзчика Android (ABOOT), при этом, выполняется команда:
fastboot flash boot boot.img
После чего шиется образ данных пользователя, выполняя команду:
fastboot flash userdata userdata.img
Далее, происходит прошивка образа рекавери, выполняется команда:
fastboot flash recovery recovery.img
Потом, выполняется прошивка образа кеша и Dalvik кеша, выполняя команду:
fastboot flash cache cache.img
Далее, происходит установка бинарика модема, выполняя команду:
fastboot flash modem NON-HLOS.bin
Потом установится програматор, который в свеом очередь разделяет память в пару разделов: System, Boot, Persist, User data, при этом выполняется команда:
fastboot flash dbi sdi.mbn
Далее, установится програматор ОЕМ, выполняя команду:
fastboot flash aboot emmc_appsboot.mbn
Потом проходит установка програматора датчиков, проходит команда:
fastboot flash rpm rpm.mbn
После чего, начинается установка Верной Зоны (Trust Zone=рабочий стол), выполняя команду:
fastboot flash tz tz.mbn
Далее, блокируется загрузчик, выполняя команду:
fastboot oem lock
При этом, процесс прошивки еще не закончен, потому что, не сработала командa: fastboot reboot, она будет выполнена после сборки устройства и первой нажатии кнопки Питания. После этого, начинается инициализация прошивки, которая в своем деле откроет меню первой настройки устройства (SetUp Wizard).

И вот так дорогие читатели проходит прошивка в режиме EDL. Всем Спасибо за просмотр, думаю, было интересно для вас читать и узнать, что происходит за кулисами процесса прошивки смартфонов, которые имеют на борту чипсет от Qualcomm.

          Всем Спасибо за просмотр и до Встречи в
                                      Mi community !

Рейтинг

Кол-во оценивших 2 !Experience! +2 Pack Reason

История оценок

2019-07-31 01:26:42
Избранное15 РейтингРейтинг
спасибо, было очень интересно и познавательно прочитать,весь порядок по полочкам разложен.Когда сам прошивал даже не знал этого,просто повторял инструкции,изредка меняя алгоритм.Теперь становится яснее сам механизм, ещё раз спасибо,удачи в прошивках

Кролик магистр

Fatality Zer0 Ответить | из Redmi 4X

#2

agnosteek
спасибо, было очень интересно и познавательно прочитать,весь порядок по полочкам разложен.Когда сам прошивал даже не знал этого,просто повторял инструкции,изредка меняя алгоритм.Теперь становится яснее сам механизм, ещё раз спасибо,удачи в прошивках

рад за Ваш интерес, и спасибо за поддержку
Fatality Zer0
рад за Ваш интерес, и спасибо за поддержку

Спасибо,  местами представленно слегка не корректно,  но это совсем мелочи.  В качестве общего примера что и как вполне доступно(на мой взгляд) расписано. Лови зеленку!

Кролик магистр

Fatality Zer0 Ответить | из Redmi 4X

#4

AlexRoad
Спасибо,  местами представленно слегка не корректно,  но это совсем мелочи.  В качестве общего примера что и как вполне доступно(на мой взгляд) расписано. Лови зеленку!

что успел выловить уже, так как была произведена прошивка через QFIL, и не знаю как логи извлечь из неё
Отличная тема, теперь я знаю, как проходит процесс прошивки телефона в EDL)

Кролик мастер

saouliak | из Redmi Note 7

#6

Спасибо большое! А почему загрузчик блокируется обязательно?

Кролик магистр

Fatality Zer0 Ответить | из Redmi 4X

#7

saouliak
Спасибо большое! А почему загрузчик блокируется обязательно?

так настроен програматор, можно конечно разлочить, тоже через програматор, но надо изначально расшифровать его, потом с помощью Bypass взломается програматор и дает нужный токен

Кролик мастер

saouliak | из Redmi Note 7

#8

Fatality Zer0
так настроен програматор, можно конечно разлочить, тоже через програматор, но надо изначально расшифровать его, потом с помощью Bypass взломается програматор и дает нужный токен

Но ведь если не поставить блокировку загрузчика в MiFlash в EDL, то он же не заблокируется, если был разблокирован.
Спасибо за тему, познавательно.
Humor does not obey fate,great thoughts-often the most smiling…

Кролик магистр

Fatality Zer0 Ответить | из Redmi 4X

#10

saouliak
Но ведь если не поставить блокировку загрузчика в MiFlash в EDL, то он же не заблокируется, если был разблокирован.

это в Mi Flash, а в QFIL, такое не сделайте, так как не прошивка не выполняется с помощью батников, а на прямую
Войдите, что бы оставить ответ
Вход Регистрация

Fatality Zer0

Кролик магистр

Новичок
Лучшие моменты 2018
Throw Back with Mi 2018
Глобальное комьюнити
Нас 1 500 000
С Новым Годом 2020

ПодробнееОбновить

Mi Comm APP

Получайте новости о Mi продукции и MIUI

©2010-2020 Xiaomi.com. Все права защищены.
Content Policy
Быстрый ответ Наверх Вернуться к списку