27
правокИзменения
Нет описания правки
# Установке аккумуляторной батареи в телефон
# Подключении зарядного устройства
# Нажатии на клавишу отмены вызова
# Если на выводе MOD высокий логический уровень, по адресу 0x00000000 находится irom, а по адресу 0x10000000 находится микросхема внешней памяти, идентифицируемая по сигналу выбора CS0 (активному на низкий уровень).
# Если на выводе MOD низкий логический уровень, по адресу 0x00000000 находится микросхема внешней памяти, подключенная к CS0, а по адресу 0x10000000 - irom.
Буткор первого порядка выполняет следующие функции:
# Инициализирует процессор
# Проверяет наличие прошивки; при её отсутствии инициализирует USB, и телефон определяется как "Flash LCA Neptune" с интерфейсом Motorola Flash
# Запускает прошивку
У моделей на других версиях Neptune вывод MOD никуда не подключен (но выведен в качестве тестовой площадки на плату), поэтому на них управление первым получает стартовый код в irom. Этот стартовый код выполняет следующие действия:
# Инициализирует процессор
# Проверяет цифровую подпись прошивки. При отрицательном исходе проверки запускается бут, встроенный в irom. Логика этого шага непонятна.
# Запускает прошивку
# Инициализирует USB; телефоны на основе Neptune ULS определяются как "Blank ULS Neptune" с интерфейсом Motorola Boot, остальные модели - как "S Blank Neptune LTE/LTE2" с интерфейсом Motorola Flash
# Собственно выполняет прошивание.
# Инициализирует контроллер питания и дисплей
# Определяет версию и состояние прошивки
# Отображает на дисплее свою версию и версию прошивки, сообщения об ошибках (при их наличии)
# Инициализирует USB; телефон определяется как "S Flash Neptune LTE/LTE2" (на телефонах с Neptune ULS как такового бутлоадера в флеш-памяти нет).
# Точку входа в бутлоадер
# Сертификат подписи бутлоадера
# Заголовок прошивки
# Точку входа в прошивку
# CG1, CG3, CG4, CG7 (при её наличии), CG15 (при её наличии), CG18. Заголовок CG18 содержит указатель на сертификат подписи прошивки.
# В качестве точки входа в прошивку - адрес кода дополнительной проверки прошивки, лежащего внутри бута
# В качестве указателей на кодовые группы - произвольные данные (возможно, 0xFFFFFFFF), кроме указателя на CG18 - он содержит указатель на подменный заголовок CG18, лежащий внутри бута и указывающий на сертификат подписи бута.