Содержание

Создание scatter файла

 Упаковка блоков в прошивку.

Берем включений смартфон и подсоединяем его с помощью USB кабеля к компьютеру. Затем, запускаем программу MtkDroidTools, и ждем ее подключения к устройству (должен загореться зеленый прямоугольник с левой стороны в нижнем углу). Чуть не забыл, во время подключения MtkDroidTools к телефону, на дисплее могут появляться уведомления которые нужно подтверждать. Это MtkDroidTools пытается рутировать Ваш смартфон, без этого мы не сможем сделать бэкап.

Жмем кнопочку «Карта блоков». В открывшемся окне находим кнопку «Создать scatter файл», нажимаем ее и сохраняем этот файл (не рекомендую менять имя файла, оставьте его как есть)

Если у кого то не активна кнопка «Создать scatter файл» — нужно обновить MtkDroidTools до новой версии. Как правило, если есть доступ к сети интернет, тогда поле запуска программа сама предложит обновится.

Считывание ROM из устройства

Теперь Вам предстоит запустить программку SP FlashTool с помощью которой Вы будете считывать ROM. В флештуле жмем кнопочку «Scatter-loading», указываем путь к недавно сохраненному scatter файлу и открываем его (ниже появится перечень пустых блоков с адресами)

Далее нужно перейти на другую вкладку – «Read back» и добавить новый блок нажав кнопку «Add» с зеленым плюсиком.

В поле ниже появиться новый блок, по нему нужно дважды кликнуть. В открывшемся окне придумываем ему имя и сохраняем его (имя блока обязательно должно начинаться с «ROM_»). Потом в новом окне ищем поле «Length», указываем адрес блока «cache» (его берем с scatter файла, который открывается блокнотом) и нажимаем кнопку ОК. (рис 6, 7)

Теперь отключаем свое устройство от компьютера и выключаем его, также еще можно передернуть батарею. Я надеюсь Вы еще не закрыли флештул? Отлично, тогда жмем кнопочку «Read back» (с синей стрелкой), после этого подключаем телефон (он должен быть выключенный) к компьютеру (лучше всего в тот самый порт USB на котором устанавливали драйвера для выключенного тела). Как только Вы это сделаете, в FlashTool начнет бежать красная, а за тем синяя полосы прогресса. Если по какой-то причине линия прогресса стоит на месте и не бежит, тогда попробуйте отключить гаджет от ПК, передернуть батарею, и снова подсоединить к компьютеру. Не помогло – тогда проблема с драйверами, придется переустановить их.

Процесс считывания занимает примерно 30 минут, все зависит от ПК и смартфона. Когда флештул сделает свою работу появиться уведомление с зеленым кружком. Закрываем его, кстати FlashTool тоже можно закрыть, отсоединяем телефон от ПК и включаем его.

  Упаковка блоков в прошивку

Снова запускаем MtkDroidTools и подсоединяем уже включенный смартфон, проверяем, что DroidTools увидел его. Переключаемся на соседнюю вкладку «root, backup, recovery», нажимаем кнопочку «Создать бэкап из ROM_ флештула» и указываем путь к раньше сохраненного файла с флештула (название которого начинается с «ROM_»). MtkDroidTools предложит создать CWM, «пропатчить boot» – это оставляю на Ваше усмотрение.

Ну вот и собственно все. Свой созданный бэкап сможете найти по адресу: MtkDroidTools\backups\. Теперь спрячьте упакованный бэкап подальше от всех, чтобы его случайно никто не удалил. Он всегда поможет вернуть смартфон к стоковой прошивке. На всякий случай рекомендуется также спрятать ROM_ файл.

Желаем удачи. Теперь можно ставить на смартфон все что угодно. Надеемся, изложенный материал принес пользу Вам. Если возникнут какие-либо вопросы — пишите в комментариях

✅ Scatter-файлы для сброса FRP на устройствах MTK при помощи ПК | RuCore.NET

Содержание статьи

В данной статье будет описан способ как удалить Google аккаунт со смартфона, который не удается активировать после сброса. Тут будет описан процесс сброса для смартфонов на базе процессоров MediaTek. Для начало работы нам потребуется программа для прошивки и скатер файл (скачать под свою модель процессора можно прямо из этой статьи)

Форматирование раздела FRP

Где взять адреса из памяти? Как узнать что именно вводить для форматирования? А ответ прост — открываем scatter-файл из заводской прошивки, находим блок FRP и переписываем оттуда размер и адрес.

Работа с FlashTool

1. Открыть SP Flash Tool и выбрать Scatter-файл.

2. Перейти во вкладку Format, далее отметить Manual Format Flash.

3. Выставить необходимые значения, нажать Start, подключить устройство. По окончанию будет маленькое окошко «ОК».

 

Далее вставляете эти значения в программу

 

 

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

 

«Симптомы»:
сделали полный сброс настроек в настройках телефона или в recovery и при включении телефона требуется ввести логин и пароль к учётке google, после ввода которого пишет, что логин и пароль неверен забыли пароль от аккаунта гугл или сам логин

Форматирование раздела FRP (Factory Reset Protection)

Переименованные файлы после скачивания, желательно вернуть к исходному, по шаблону — MTхххх_Android_scatter.txt

MT6570

MT6570
MT6570_Android_scatter.txt ( 9,17 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x4fa0000
Format Length[HEX]: 0x100000

MT6572

MT6572 Irbis TZ 55
MT6572_Android_scatter.txt ( 7,37 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x6b40000
Format Length[HEX]: 0x100000

MT6572 Tele2 Mini
MT6572_Android_scatter_Tele2_Mini.txt ( 7,05 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x3e40000
Format Length[HEX]: 0x100000

MT6572 Prestigio 3137
MT6572_Android_scatter_Prestigio_3137.txt

MT6580

MT6580
MT6580_Android_scatter.txt ( 9,17 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x4fa0000
Format Length[HEX]: 0x100000

MT6580 Alcatel 4034D
MT6580_Android_scatter_Alcatel_4034D.txt ( 10,06 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x9000000
Format Length[HEX]: 0x800000

MT6580 Alcatel 5010D
MT6580_Android_scatter_5010D.txt ( 9,57 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x9000000
Format Length[HEX]: 0x800000

MT6580 Alcatel 5025D
MT6580_Android_scatter_Alcatel_5025D.txt ( 9,93 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x41000000
Format Length[HEX]: 0x800000

MT6580 Archos 101b
MT6580_Android_scatter_Archos_101b.txt ( 8,84 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x5240000
Format Length[HEX]: 0x100000

MT6580 Fly FS504
MT6580_Android_scatter_FS504.txt ( 8,54 КБ )
Region: EMMC_USER
Begin address(HEX): 0x0000000004fa0000
Format length(HEX): 0x0000000000100000

MT6580 LG K7
MT6580_Android_scatter_LG_K7.txt ( 8,51 КБ )
Region: EMMC_USER
Begin address(HEX): 0x24fc0000
Format length(HEX): 0x100000

MT6582
MT6582_Android_scatter.txt ( 7,44 КБ )

MT6735

MT6735
MT6735_Android_scatter.txt ( 9,16 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x6a00000
Format Length[HEX]: 0x100000

MT6735M
MT6735M_Android_scatter.txt ( 9,17 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x6a00000
Format Length[HEX]: 0x100000

MT6735M Alcatel Pixi 3 5019D
MT6735M_Android_scatte_Alcatel_Pixi3_5019D.txt ( 10,2 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x4d000000
Format Length[HEX]: 0x800000

MT6735 Honor 4c Pro
MT6735_Android_scatter_Honor_4C_Pro.txt ( 10,47 КБ )
Download Agent: DA_SWSEC.zip
Region: EMMC_USER
Begin Address[HEX]: 0x1a600000
Format Length[HEX]: 0x100000
Если не помогло, то прошиваем чистый раздел FRP

MT6735P Lenovo C2/C2 Power
Lenovo_C2_K10A40.zip ( 2,54 МБ )
Download Agent — DA_SWSEC_CRYPTO20_K10a40.bin
Region: EMMC_USER
Begin Address[HEX]: 0x6a00000
Format Length[HEX]: 0x100000

MT6735P ZTE Blade A510
MT6735M_Android_scatter_ZTE_A510.txt ( 10,26 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x1FA80000
Format Length[HEX]: 0x100000

MT6737

MT6737M
MT6737M_Android_scatter.txt ( 9,86 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x6a00000
Format Length[HEX]: 0x100000

MT6737M Alcatel U5 5044D
MT6737M_Android_scatter_Alcatel_U5_5044D.txt ( 11,64 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0xe000000
Format Length[HEX]: 0x800000

MT6737M Moto E4 Plus XT1771
MT6737M_Android_scatter_Moto_E4_Plus_XT1771.txt ( 11,92 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x9c80000
Format Length[HEX]: 0x100000

MT6737M ZTE Blade A520
MT6737M_Android_scatter_ZTE_Blade_A520.txt ( 10,2 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x6a80000
Format Length[HEX]: 0x100000

MT6737T
MT6737T_Android_scatter.txt ( 9,17 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x6a00000
Format Length[HEX]: 0x100000

MT6737T Asus ZenFone 3 MAX ZC520TL X008D
MT6737T_Android_scatter_Asus_ZC520TL.txt ( 10,15 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x13c00000
Format Length[HEX]: 0x100000

MT6750

MT6750
MT6750_Android_scatter.txt ( 12,68 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x1a88000
Format Length[HEX]: 0x100000

MT6750 Philips X588
MT6750_Android_scatter_Philips_X588.txt ( 12,68 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x1a88000
Format Length[HEX]: 0x100000

MT6750 Oukitel K6000 Plus
MT6750_Android_scatter_Oukitel_K6000_Plus.txt ( 12,68 КБ )
SP Flash Tool + Driver + Scatter — Oukitel_K6000_Plus_FRP.zip ( 87,01 МБ )
Download Agent: DA_PL.bin
Region: EMMC_USER
Begin Address[HEX]: 0x1a88000
Format Length[HEX]: 0x100000

MT6752
MT6752_Android_scatter.txt ( 8,84 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0xafa0000
Format Length[HEX]: 0x800000

MT6753
MT6753_Android_scatter.txt ( 9,17 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x6a00000
Format Length[HEX]: 0x100000

MT6755

MT6755 v2
MT6755_Android_scatter.txt ( 1,06 КБ )
Region: EMMC_USER
Begin Address[HEX]: 0x3F88000
Format Length[HEX]: 0x100000

MT8127 Alcatel Pixi4 7′
MT8127_Android_scatter_Pixi4-7.txt ( 9,53 КБ )
Region: EMMC_USER
Begin address(HEX): 0x37d80000
Format length(HEX): 0x100000

MT8163
MT8163_Android_scatter.txt ( 9,12 КБ )
Region: EMMC_USER
Begin address(HEX): 0x85a0000
Format length(HEX): 0x100000

 

———-

Всё, после включения устройства никакой привязки к аккаунту google не будет.


8 515 просмотров

Отказ от ответственности: Автор или издатель не публиковали эту статью для вредоносных целей. Вся размещенная информация была взята из открытых источников и представлена исключительно в ознакомительных целях а также не несет призыва к действию. Создано лишь в образовательных и развлекательных целях. Вся информация направлена на то, чтобы уберечь читателей от противозаконных действий. Все причиненные возможные убытки посетитель берет на себя. Автор проделывает все действия лишь на собственном оборудовании и в собственной сети. Не повторяйте ничего из прочитанного в реальной жизни. | Так же, если вы являетесь правообладателем размещенного на страницах портала материала, просьба написать нам через контактную форму жалобу на удаление определенной страницы, а также ознакомиться с инструкцией для правообладателей материалов. Спасибо за понимание.

Ошибки SP Flash Tool и их решение — Android — Mobile device — СТАТЬИ

Информация по ошибкам SP Flash Tool и найденные решения

(1002) S_INVALID_ARGUMENTS

leonne пишет: неверный scatter файл. В моем случае были отключенны, в scattere, блоки PRELOADER и DSP_BL. На это и ругался.

(1003) S_COM_PORT_OPEN_FAIL

Проблема с портом.

  • Может возникать если например у вас в BIOS отключены com-порты (хоть в данном случае com-порт здесь виртуальный, а физический USB, но при отключении вы просто не увидите оборудование на которое ставятся драйверы preloader). 
  • либо проблема в USB кабеле (помогает смена кабеля для прошивки).
  • либо проблема в USB-порту компьютера (помогает перетыкание кабеля в другой порт).

(1011) S_NOT_ENOUCH_STORAGE_SPACE

  • Возникает когда размер какой-либо части прошивки превышает размер отведенного ему пространства (Обычно это блок ядра или рекавери). Решение.
  • Также стало известно, что данная ошибка иногда возникает на «сырых» версиях флештула, поэтому возможно поможет смена версии прошивальщика.

(1012) S_NOT_ENOUGH_MEMORY

Воспользуйтесь более свежей версией прошивальщика.

(1013) S_COM_PORT_OPEN_FAIL

  • Ошибка по характеру и направленности аналогична ошибке 1003. Решения нужно искать по тому же принципу (см. 1003).
  • Также может помочь смена версии прошивальщика.
  • Также можно попробовать прошить устройство с отключенной батареей.

(1018) S_UNKNOWN_TARGET_BBCHIP

Решение: воспользоваться более свежей версией прошивальщика.

(1022) S_UNSUPPORTED_VER_OF_DA

Воспользуйтесь более свежей версией прошивальщика.

(1040) S_UNSUPPORTED_OPERATION

Scatter файл не подходит телефону. Например в названии присутствует 6577, а телефон на самом деле 6573

(2004) S_BROM_DOWNLOAD_DA_FAIL

Решение от Ja9e9

(2005) S_BROM_CMD_STARTCMD_FAIL

На телефонах с MTD флэш случаи возникновения ошибки:

  • При выборе Download на блоках preloader или dsp_bl не установлена галка. Надо использовать подходящую версию SPFT , например v2.xxx для телефонов MT6573, или выключить режим DA Download All.
  • При выборе Download на блоках preloader или dsp_bl установлена галка. Надо снять галку с этих блоков! Если эти блоки необходимо прошить, надо подсоединить телефон в режиме BOOTROM.
  • При выборе ReadBack, Format или MemoryTest. Надо подсоединить телефон в режиме BOOTROM.
  • Также можно попробовать прошить устройство с отключенной батареей.

(2020) S_BROM_CHKSUM16_MEM_RESULT_DIFF

фвпо пишет: Решил так — в настройках флештула принудительно поставил галку что тело без батареи, после чего подключил через тест поинт с батареей. Всё на удивление прошилось.

(2035) S_BROM_CMD_JUMP_DA_FAIL

После нажатия кнопки download попробуйте подключить к компьютеру выключенное устройство с предварительно зажатыми кнопками громкости.

(3001) S_DA_EXT_RAM_ERROR

Возможно проблемы с подключением. Проверьте кабель и/или переподключите кабель в другой порт.

(3012) NAND_FLASH_NOT_FOUND

Проблема связанная с определением флеш памяти устройства. Известные методы побороть данную проблему:

  • Попробовать использовать разные версии прошивальщика, т.к. по мере выпуска разных версий обновляется и информация о флеш памяти.
  • Попробовать прошить смартфон на другом компьютере,т.к. бывают софтовые проблемы, мешающие корректно определить память на конкретной машине.

(3013) S_DS_SOC_CHECK_FAIL

  • Возможно, что в окне SP_Flash_Tool не стоит птичка на uboot. uboot — загрузчик операционной системы + драйверы для инициализации основного оборудования (дисплей, процессор, GPIO).
  • Или когда в строке пути есть русские имена папок например: C:\Users\Колян\Desktop\Хата\Прошивки\Прошивка планшета\8.31\Surfer 8.31 3G_20130402_V1.03\Surfer 8.31 3G_20130402_V1.03

(3066) S_DA_HANDSET_FAT_INFO_NOT_FOUND

Возникает при автоматическом форматировании, следует попробовать установить адреса форматирования вручную.

(3144) S_DA_EMMC_FLASH_NOT_FOUND

  • Кроме проблемы с железом может быть когда Scatter файл не подходит телефону. Например в названии присутствует emmc, а телефон на самом деле с MTD флэш.
  • Как же есть вероятность что проблема решится если вы воспользуйтесь машиной с другой операционной системой ( в приоритете winXP) и начисто установите драйверы.

(3149) S_DA_SDMMC_WRITE_FAILED 

  • mcking230 пишет: прошивал версией 3.1320.0.174, после выпадения ошибки послушался программу и прошил версией 5.1420.00 (На момент написания последняя версия) выбирал Format all+download и все заработало, программа стояла в корне диска C.
  • Также проблема может быть аппаратная.

(3168) S_CHIP_TYPE_NOT_MATCH

Неверный scatter-файл. Используйте «родной» scatter файл от вашего устройства.

(4001) S_FT_DA_NO_RESPONSE

  • Решение — сменить USB-порт и перенести SP Flash Tool в корень диска C:
  • Также есть вариант, что в файле download agent нет информации о ЦП/флэш. Решение — обновить версию прошивальщика.
  • Проблема может быть аппаратная, например при вышедшей из строя флеш-памяти.
  • Как пишут тут, появлению данной ошибки может способствовать низкий заряд батареи.

(4008) S_FT_DOWNLOAD_FAIL

Способы из практики, которые решили данную проблему:

  • Смена версии прошивальщика и самое интересное, что на более старую версию. 
  • Смена кабеля для прошивки.
  • Также возможно в процессе прошивки села АКБ… Решение: зарядить телефон и попробовать прошивку заново.
  • В некоторых случаях нужно вытащить из устройства акб и попробовать прошить без нее.
  • Также пишут, что может помочь форматирование устройства.

(4009) S_FT_READBACK_FAIL

Кроме ошибок чтения в самом телефоне такая же ошибка при ошибках в файловой системе PC . Например не хватает места для файла или файл невозможно перезаписать т.к. он залочен. Для уточнения надо смотреть лог.

(4032) S_FT_ENABLE_DRAM_FAIL

  • Встретилась ошибка 4032 при попытке смены прошивки на аппарате с процессором MT6589 через программу Sp_Flash_tool. Аппарат оживил, отформатировав телефон через кнопку Format (не делайте это если у вас аппарат на процессоре MT6575 или 6577) в программе sp_flash_tool, затем скачал официальную прошивку и прошил ее со всеми галочками через кнопку download. Иногда нужно удалять и переустанавливать драйверы и делать форматирование повторно, и потом перепрошиваться если предыдущая попытка была неудачная.
  • Пост о том как это проблему решил пользователь A-Z-H
  • Еще один возможный способ обхода данной проблемы от Spe11
  • Если ничего не помогло, то попробуйте сменить версию прошивальщика. Рекомендуется начать с версии 5.1352.01
  • Выжимка из поста пользователя ariafan 4032 и 3168 это ошибки связанные с неверным блоком preloader. Нужно найти родной preloader и прошить его. Если прошивка стандартным методом не приносит результата, то возможно придется прошивать аппарат через тестпоинт (далее предоставлена ссылка на тему про тестпоинты).Тестпоинты для прошивки preloader
  • Как пишут тут, появлению данной ошибки может способствовать низкий заряд батареи.
  • Также пишут что может помочь замыкание 4 и 5 контакта на разъеме USB.
  • Небольшое подытоживание по данной ошибке

(4050) S_FT_NEED_DOWNLOAD_ALL_FAIL

  • Возникает, когда не совпадают размеры блоков в PMT и в скаттере. В общем случае эта ошибка лечится загрузкой всех блоков (может одного usrdata хватит), после этого размер в PMT должен поменяться на правильный.
  • Иногда помогает смена версии прошивальщика.

(5002) S_INVALID_DA_FILE

При настройке SP_Flash_Tool download agent нужно выбирать прилагающийся к данной версии прошивальщика. Выбор других агентов дает такую ошибку.

(5007) S_FTHND_FILE_IS_NOT_LOADED_YET

  • Обычно возникает если во флештуле стоит галка на блоке, к которому путь отсутствует. Решение: указать путь к необходимому блоку прошивки.
  • m_slon пишет: При возникновении данной ошибки помогла смена версии-прошивальщика на v5.1352.01.

(5054) S_DL_GET_DRAM_SETTINGS_FAIL

  • zenka2010 пишет: сделал полный сброс через флештул, и теперь немогу установить новую прошивку. Cброс сделать ешё раз тоже не удаётся, вылетает та же ошибка. Проблему решил переустановив по-новой драйверы.
  • Решение от 5[Strogino]

(5066) S_DL_PC_BL_INVALID_GFH_FILE_INFOR

Неправильные файлы. Например когда выбрали scatter из папки с еще не подготовленными для FT файлами. Надо выбрать scatter из папки подготовленных для FT файлов.

(5069) S_DL_PMT_ERR_NO_SPACE

Вердикт от 5[Strogino] :
На текущий момент вердикт, что это аппаратная проблема.

Наблюдения:
Если делать Format, то вылезет ошибка S_PART_NO_VALID_TABLE (1037) и при этом говорится, что нужно сделать Download для создания таблицы разделов.
Firmware Upgrade не дает делать -> опять же из-за ошибки 1037
Можно сделать Download одного только прелоадера. Загрузка любого другого раздела выдает ошибку 5069
От версии скаттера не зависит.
От размера раздела FAT тоже не зависит.
Можно сделать Manual Format — дает, но в пределах UA Size. После этого попытка залить любой раздел снова заканчивается ошибкой 5069.

Скорее всего это особенность флешпамяти — бывают такие случаи, когда ни форматирование, ни низкоуровневое форматирование не дает никакого эффекта — на флешке остаются файлы как есть.

(6124) S_SECURITY_INVALID_PROJECT (6124), MSP ERROE CODE: 0 x 00.

inforus10 пишет: получилось устранить после прошивки родного Preloader через кнопку download. После этого прошивка модифицированного recovery прошла без ошибок и далее восстановил прошивку из ранее созданного бекапа.

(8038) SP FLASH TOOL ERROR)/(PMT changed for the ROM; it must be downloaded

  • Возникает если имена или адреса блоков в scatter отличаются от таблицы внутри телефона (PMT). Нужно поправить scatter-файл в папке с прошивкой, т.е. привести к одному виду с вашем текущем скаттер-файлом, из прошивки которая у вас в данный момент на аппарате. Пример как отлавливать и править вручную приведен здесь.
  • Если со скаттер файлом ничего не предпринималось, но все-равно выводится данная ошибка, то можете попробовать сменить версию прошивальщика. Рекомендуется начать с версии SP_Flash_Tool_v5.1352.01
  • Также читаем ВНИМАТЕЛЬНО! это решение
  • Также есть модифицированная версия флештула, которая игнорирует данную ошибку и дает возможность прошиться. Но будьте внимательны! поддерживаются не все устройства FlashToolMod fly-droid.org.zip ( 14,02 МБ )
    Оригинальная тема по модифицированной версии

Еще один способ (не всегда работает, т.к. дроидтулс не всегда создает второй скаттер с исправленными разделами):

  • Скачиваем последний mtkdroidtools
  • Подключаем телефон и сохраняем карту блоков (сохранится 2 файла и один из них будет с именем PMP)
  • Оставляем только PMP и переименовываем его в обычный вид скаттера
  • Через него можно прошить любую прошивку без ошибки 8038

(8045) SP FLASH TOOL ERROR

  • Ошибка по характеру похожа на 8038, но на практике правка скаттер файла не помогала. Для решения проблемы многие шли в сервисный центр и им воскрешали аппарат через программатор.
  • В домашних условиях иногда срабатывает вариант прошивки через кнопку DOWNLOAD со всеми установленными галочками (версии флештула перебирайте и пробуйте несколько раз).

(8200) SP FLASH TOOL ERROR

  • Возникает если вы пытаетесь прошить аппарат на одной платформе, прошивкой от другого (например у вас mt6577, а вы пытаетесь прошить прошивкой от аппарата на mt6575 и т.д.)
  • Также может помочь смена версии прошивальщика.

(8417) SP FLASH TOOL ERROR: The load scatter file is invalid!

dub3000 пишет: — уберите из пути к скаттер-файлу иероглифы и уменьшите длинну пути до него (до файла).
К примеру, такой путь будет нормальным D:\JIAYU\S3\1_FLASH\S3s(3gb)-20150204-161147\MT6752_Android_scatter.txt
А вот такой выдаст ошибку D:\JIAYU\S3\1_FLASH\S3-20150204-161147线刷\MT6752_Android_scatter.txt

Несколько возможных решений ошибок для пользователей Linux версии

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

armlink Пример скаттер-файла главы 4

После изучения основных терминов и понятий эта глава призвана укрепить навыки письма с разбросом.

4.1 Когда использовать файлы разброса

Scatter-файл обычно используется во встроенных системах, поскольку эти системы содержат ПЗУ, ОЗУ и некоторые периферийные устройства с отображением в память. Scatter-файлы часто используются в следующих случаях:

  1. Сложное отображение памяти: разделы, размещенные в разных областях памяти, должны использовать файлы разброса для более точного управления позициями размещения

  2. Различные типы хранения: многие системы содержат различные устройства хранения, такие как флэш-память, ПЗУ, SDRAM, SRAM и т. Д. В настоящее время можно использовать файлы разброса для размещения более подходящих кодов в более подходящих областях хранения. Например: код прерывания помещается в SRAM, что позволяет быстро реагировать; информация о конфигурации, к которой нечасто обращаются, может быть помещена во флэш-память.

  3. Периферийные устройства с отображением памяти: в механизме отображения памяти файл scatter может размещать разделы данных по точному адресу. Таким образом, доступ к этому разделу данных эквивалентен доступу к соответствующему периферийному устройству.

  4. Сохраняйте функции по фиксированному адресу: даже если приложение изменено и перекомпилировано, функции, тесно связанные с приложением, все равно могут быть размещены в фиксированном месте. Это очень полезно для реализации таблиц переходов.

  5. Используйте символы для обозначения кучи и стека: когда приложение связано, вы можете определить символы для кучи и стека.

4.2 Укажите кучу и стек в scatter-файле

В языке C часто необходимы две области хранения: куча и стек. В случае, когда вся память выделяется нами, мы также должны выделить кучу и стек.

Перед запуском программы вызывается функция __user_setup_stackheap (), которая отвечает за инициализацию кучи и стека. И инициализируется эта функция согласно нашим настройкам в scatter-файле.

Чтобы правильно инициализировать кучу и стек. Нам нужно определить две специальные области выполнения в scatter-файле. Они называются ARM_LIB_HEAP и ARM_LIB_STACK соответственно. Две секции памяти инициализируются библиотекой c, поэтому нельзя разместить секцию ввода, и в это время должен быть установлен атрибут EMPTY. Вы также можете установить базовый адрес и размер для этих двух областей памяти. следующее:

LOAD_FLASH …
{
    …
    ARM_LIB_STACK 0x40000 EMPTY -0x20000 ;  Площадь стека, растущая вниз
    { }
    ARM_LIB_HEAP 0x28000000 EMPTY 0x80000 ;  Площадь кучи растет вверх
    { }
    …
}

Конечно, есть более простое использование. Вам нужно только определить специальную область выполнения под названием ARM_LIB_STACKHEAP. Она также должна иметь атрибут EMPTY и устанавливать базовый адрес и размер.

4.3 Используйте scatter-файл для описания простого изображения

На следующем рисунке показано простое зеркальное отображение памяти.

Напишем scatter-файл по этой картинке

LOAD_ROM 0x0000 0x8000 ;  Имя загруженного регионаLOAD_ROM
;  Базовый адрес0x0000
;  Максимальный размер0x8000
{
    EXEC_ROM 0x0000 0x8000 ;  Название первого региона исполнения:EXEC_ROM
    ;  Базовый адрес0x000
    ;  Максимальный размер0x8000
    {
        * (+RO) ;  Поместите весь код иROДанные
    }
    SRAM 0x10000 0x6000 ;  Вторая область исполнения называетсяSRAM
    ;  Базовый адрес 0x10000
    ;  Максимальный размер 0x6000
    {
        * (+RW, +ZI) ;  Разместить всеRWДанные иZIДанные
    }
}

4.4 Используйте scatter-файл для описания немного более сложного изображения

Как показано ниже

В следующем примере показано описание разброса, соответствующее рисунку выше.

LOAD_ROM_1 0x0000 ;  Базовый адрес первой загруженной области:0x0000
{
    EXEC_ROM_1 0x0000 ;  Базовый адрес первой области исполнения:0x0000
    {
        program1.o (+RO) ;  Разместить программу1.все коды в o иROДанные
    }
    DRAM 0x18000 0x8000 ;  Базовый адрес этого региона исполнения:0x18000,Максимальный размер0x8000
    {
        program1.o (+RW, +ZI) ;  Место program1.все в оRWДанные иZIДанные
    }
}
LOAD_ROM_2 0x4000 ;  Базовый адрес второй загруженной области:0x4000
{
    EXEC_ROM_2 0x4000
    {
        program2.o (+RO) ;  Поместите программу2.все коды в o иROДанные
    }
    SRAM 0x8000 0x8000
    {
        program2.o (+RW, +ZI) ;  Место program2.все в оRWДанные иZIДанные
    }
}

Примечание: в приведенном выше примере, если вы добавляете еще один файл program3.o. Нам нужно поместить в него program3.o. Конечно, вы также можете использовать подстановочный знак * или .ANY, чтобы сопоставить все оставшиеся файлы.

4.5 Размещение функций и данных по указанному адресу

Чтобы разместить функции и данные отдельно, эти функции и данные необходимо обрабатывать отдельно от остальной части исходного файла.

У компоновщика есть два метода, позволяющих нам размещать разделы в указанных местах:

  1. Определите область выполнения в указанном месте в файле разброса, а затем поместите требуемый раздел в эту область.
  2. Определите раздел «__at». Эти специальные разделы могут получить адрес места размещения на основе имени.

Чтобы разместить функции или данные в специальном месте, они должны быть помещены в раздел. Достичь этой цели можно несколькими способами:

  1. Помещайте функции и данные в отдельные исходные файлы
  2. Используйте __attribute __ ((at (address))), чтобы поместить переменную в раздел в указанном месте
  3. Используйте __attribute __ ((section («name»))), чтобы поместить функцию или переменную в раздел с указанным именем.
  4. В ассемблерном коде используйте псевдо-инструкцию AREA. Поскольку псевдо-инструкция AREA является наименьшей доступной единицей сборки
  5. Используйте параметр компиляции –split_sectoins, чтобы создать раздел для каждой функции в исходном файле.

Ниже приводится пример.

4.5.1 Не использовать scatter, размещать переменные по указанному адресу

  1. Создайте исходный файл main.c, содержащий следующий код
#include <stdio.h>
extern int sqr(int n1);
int gSquared __attribute__((at(0x5000))); 
int main()
{
    gSquared=sqr(3);
    printf("Value squared is: %d\n", gSquared);
}
  1. Создайте исходный файл function.c, содержащий следующий код
int sqr(int n1)
{
    return n1*n1;
}
  1. Скомпилируйте и свяжите исходные файлы:
armcc -c -g function.c
armcc -c -g main.c
armlink --map function.o main.o -o squared.axf

—map означает отображение карты памяти.

В приведенном выше примере __attribute __ ((at (0x5000))) указывает, что глобальная переменная gSquared размещена по абсолютному адресу 0x5000.

Карта памяти выглядит следующим образом:

…
Load Region LR$$.ARM.__at_0x00005000 (Base: 0x00005000, Size: 0x00000000, Max: 0x00000004,ABSOLUTE)
    Execution Region ER$$.ARM.__at_0x00005000 (Base: 0x00005000, Size: 0x00000004, Max:0x00000004, ABSOLUTE, UNINIT)
    Base Addr  Size       Type Attr Idx E Section Name       Object
    0x00005000 0x00000004 Zero RW   13  .ARM.__at_0x00005000 main.o

4.5.2 Использование разброса для размещения переменных в именованном разделе

  1. Создайте main.c, чтобы включить следующие исходные файлы
#include <stdio.h>
extern int sqr(int n1);
int gSquared __attribute__((section("foo"))); 
int main()
{
    gSquared=sqr(3);
    printf("Value squared is: %d\n", gSquared);
}
  1. Create functio.c содержит следующий код
int sqr(int n1)
{
    return n1*n1;
}
  1. Создайте файл scatter scatter.scat со следующей конфигурацией
LR1 0x0000 0x20000
{
    ER1 0x0 0x2000
    {
        *(+RO) ;  Остальной код и данные только для чтения размещены здесь
    }
    ER2 0x8000 0x2000
    {
        main.o
    }
    ER3 0x10000 0x2000
    {
        function.o
        *(foo) ;  Поместите здесь gSquared
    }
    ; RWсZIДанные помещаются в0x200000Место
    RAM 0x200000 (0x1FF00-0x2000)
    {
        *(+RW, +ZI)
    }
    ARM_LIB_STACK 0x800000 EMPTY -0x10000
    {
    }
    ARM_LIB_HEAP +0 EMPTY 0x10000
    {
    }
}

ARM_LIB_STACK и ARM_LIB_HEAP области необходимы, потому что программа связана с библиотекой c

  1. Компилировать и связывать исходные файлы
armcc -c -g function.c
armcc -c -g main.c
armlink --map --scatter=scatter.scat function.o main.o -o squared.axf

В приведенном выше примере __attribute __ ((section («foo»))) указывает, что gSquared помещается в раздел с именем foo. Файл разброса также показывает, что раздел foo помещен в область выполнения ER3.

Карта памяти выглядит следующим образом:

Load Region LR1 (Base: 0x00000000, Size: 0x00001570, Max: 0x00020000, ABSOLUTE)
…
    Execution Region ER3 (Base: 0x00010000, Size: 0x00000010, Max: 0x00002000, ABSOLUTE)
    Base Addr  Size       Type Attr Idx E Section Name Object
    0x00010000 0x0000000c Code RO   3   .text     function.o
    0x0001000c 0x00000004 Data RW   15  foo       main.o
…

4.5.3 Поместите переменную в указанное место

  1. Создайте файл main.c следующим образом;
#include <stdio.h>
extern int sqr(int n1);

const int gValue __attribute__((section(".ARM.__at_0x10000"))) = 3;
int main()
{
    int squared;
    squared=sqr(gValue);
    printf("Value squared is: %d\n", squared);
}
  1. Создайте исходный файл functon.c следующим образом:
int sqr(int n1)
{
    return n1*n1;
}
  1. Создайте scatter-файл scatter.scat следующим образом:
LR1 0x0
{
    ER1 0x0
    {
        *(+RO) ;  Оставшийся код только для чтения
    }
    ER2 +0
    {
        function.o
        *(.ARM.__at_0x10000) ;  Поместите gValue в0x10000
    }
    ; RWсZIУстановить в0x200000
    RAM 0x200000 (0x1FF00-0x2000)
    {
        *(+RW, +ZI)
    }
    ARM_LIB_STACK 0x800000 EMPTY -0x10000
    {
    }
    ARM_LIB_HEAP +0 EMPTY 0x10000
    {
    }
}
  1. Компилировать и связывать исходные файлы
armcc -c -g function.c
armcc -c -g main.c
armlink --no_autoat --scatter=scatter.scat --map function.o main.o -o squared.axf

На карте памяти вы можете видеть, что переменная находится по адресу 0x10000 в ER2.

…
Execution Region ER2 (Base: 0x00001578, Size: 0x0000ea8c, Max: 0xffffffff, ABSOLUTE)
Base Addr  Size       Type Attr Idx   E Section Name     Object
0x00001578 0x0000000c Code RO   3     .text              function.o
0x00001584 0x0000ea7c PAD
0x00010000 0x00000004 Data RO   15    .ARM.__at_0x10000  main.o
…

В этом примере размер ER1 неизвестен. Следовательно, gValue можно поместить в ER1 или ER2.

Чтобы быть помещенным в ER2, вы должны включить соответствующий текст раздела в ER2. И при связывании вы также должны указать параметр командной строки —no_autoat.

Если опция —no_autoat опущена, gValue будет помещен отдельно, что соответствует

LR $$. ARM .__ at_0x10000 загружает регион.

Область исполнения, содержащаяся в этом регионе,

ER$$.ARM.__at_0x10000

Примечание: сокращение от формы.


int variable1 __attribute__((at(0x8000))) = 10;

int variable2 __attribute__((section(".ARM.__at_0x8000"))) = 10;

Имя раздела выше, без учета регистра

__at имеет следующие ограничения:

  1. Диапазон адресов раздела __at не может быть перезаписан.
  2. Раздел __at не может быть помещен в независимую от позиции область исполнения
  3. Раздел __at не может ссылаться на эти символы, определенные компоновщиком:
$$Base,$$Limit,$$Length.
  1. Раздел __at нельзя использовать в библиотеках динамической компоновки SysV, BPABI и BPABI.
  2. Адрес раздела __at должен быть целым кратным выравниванию.
  3. __ в разделе игнорировать + ПЕРВЫЙ последний + ПОСЛЕДНИЙ

4.6 Автоматическое размещение раздела __at

Компоновщик автоматически размещает раздел __at. Конечно, его также можно разместить вручную, о чем мы поговорим в следующем разделе.

Компоновщик инструктирует компоновщик автоматически поместить __at setcion через —autoat. По умолчанию эта опция включена.

При связывании с —autoat раздел __at не будет помещен в область, которая соответствует строке шаблона раздела в файле разброса. Вместо этого поместите этот раздел в совместимый регион. Если совместимого региона нет, создайте совместимый регион.

Все компоновщики с параметром —autoat будут создавать области с атрибутами UNINIT. Если этот раздел __at необходимо поместить в регион ZI, он должен быть помещен в совместимый регион.

Совместимые регионы соответствуют следующим условиям:

  1. Адрес __at находится в пределах диапазона адресов области выполнения. Если максимальный размер области не установлен, компоновщик исключит раздел __at, вычислит размер и добавит константу к этому размеру в качестве своего окончательного размера. Значение этой константы по умолчанию — 10240 байтов. Его можно настроить с помощью параметра командной строки —max_er_extension.

  2. Регион исполнения также должен соответствовать следующим условиям:

  • Имеет строку шаблона и может соответствовать этому разделу
  • По крайней мере, один раздел и раздел __at имеют один и тот же тип (RO, RW, ZI)
  • Нет атрибута EMPTY

Вот пример:


int foo __attribute__((section(".ARM.__at_0x2000"))) = 100;

int bar __attribute__((section(".ARM.__at_0x4000"),zero_init));

int variable __attribute__((section(".ARM.__at_0x8000"),zero_init));

Соответствующий файл разброса выглядит следующим образом:

LR1 0x0
{
    ER_RO 0x0 0x2000
    {
        *(+RO) ; .ARM.__at_0x0000 lies within the bounds of ER_RO
    }
    ER_RW 0x2000 0x2000
    {
        *(+RW) ; .ARM.__at_0x2000 lies within the bounds of ER_RW
    }
    ER_ZI 0x4000 0x2000
    {
        *(+ZI) ; .ARM.__at_0x4000 lies within the bounds of ER_ZI
    }
}
;  Компоновщик.ARM.__at_0x8000 создает область загрузки и выполнения. Потому что он превышает размеры всех регионов-кандидатов.

4.7 Ручное размещение раздела __at

Используйте параметр командной строки —no_autoat, а затем используйте стандартную строку сопоставления с образцом для управления размещением раздела __at.

Вот примеры:


const int FOO __attribute__((section(".ARM.__at_0x2000"))) = 100;

int bar __attribute__((section(".ARM.__at_0x4000")));

Соответствующий файл разброса выглядит следующим образом:

LR1 0x0
{
    ER_RO 0x0 0x2000
    {
        *(+RO) ; .ARM.__at_0x0000 is selected by +RO
    }
    ER_RO2 0x2000
    {
        *(.ARM.__at_0x02000) ; .ARM.__at_0x2000 is selected by the section named
    ; .ARM.__at_0x2000
    }
    ER2 0x4000
    {
        *(+RW +ZI) ; .ARM.__at_0x4000 is selected by +RW
    }
}

4.8 Используйте __at для отображения периферийного регистра

Для отображения неинициализированной переменной как периферийного регистра. Вы можете использовать раздел ZI __at.

Предполагая, что адрес этого регистра — 0x10000000, определите раздел с именем .ARM .__ at_0x10000000. Следующим образом:

int foo __attribute__((section(".ARM.__at_0x10000000"),zero_init))

Размещенный вручную scatter-файл выглядит следующим образом:

ER_PERIPHERAL 0x10000000 UNINIT
{
    *(.ARM.__at_0x10000000)
}

4.9 Используйте .ANY для размещения нераспределенных разделов

В большинстве случаев использование одного .ANY эквивалентно использованию *. Однако .ANY может появляться в нескольких регионах исполнения.

4.9.1 Правила размещения нескольких доменов .ANY

При использовании нескольких .ANY компоновщик имеет свои собственные правила по умолчанию для организации разделов.

Когда в файле разброса существует несколько .ANY, компоновщик сортирует их по размеру раздела от наибольшего к наименьшему.

Если несколько регионов выполнения имеют .ANY с одинаковыми характеристиками (в дальнейшем именуемые эквивалентными), то этот раздел будет выделен в регион с наиболее доступным пространством.

Например:

  1. Если есть две эквивалентные области выполнения, одна имеет размер 0x2000, а другая не имеет ограничений. Тогда раздел, соответствующий .ANY, будет помещен во второй.
  2. Если есть две эквивалентные области выполнения, одна имеет размер 0x2000, а другая — 0x3000. Тогда секция, соответствующая .ANY, будет помещена во вторую первую, пока размер второй не станет меньше первого.
    эквивалентно размещению этих двух областей выполнения поочередно.

4.9.2 Параметры командной строки управляют размещением нескольких .ANY

Порядок .ANY можно контролировать с помощью параметров командной строки.Доступны следующие параметры командной строки:

  1. —any_placement = алгоритм алгоритма может быть одним из следующих: first_fit ,hest_fit, best_fit или next_fit

  2. —any_sort_order = порядок. Здесь порядок может быть одним из следующих: cmdline или убывание_размера.

Если вы хотите заполнить область по порядку, используйте first_fit

Если вы хотите заполнить всю область, используйте best_fit

Если вы хотите равномерно заполнить область, используйте худший_фит

Если вам нужно более точное заполнение, используйте next_fit

Поскольку компоновщик будет генерировать код фанеры и данные заливки, и эти коды генерируются после совпадения .ANY. Следовательно, если .ANY заполняет регион, вполне вероятно, что весь regoin не может быть размещен, код, сгенерированный компоновщиком. Компоновщик выдаст следующую ошибку.

Error: L6220E: Execution region regionname size (size bytes) exceeds limit (limit bytes)

Параметр —any_contingency предотвращает заполнение области компоновщиком. Он резервирует часть области. Когда нет места для кода, сгенерированного компоновщиком, используется зарезервированное пространство.

first_fit и best_fit включают эту опцию по умолчанию.

4.9.3 Приоритет

.ANY также может указывать приоритет.

Приоритет обозначается числом, за которым следует оно, и начинается с 0 для увеличения. Чем выше число, тем выше приоритет.

Вот примеры:

lr1 0x8000 1024
{
    er1 +0 512
    {
        .ANY1(+RO) ;  Приоритет ниже, а er3 поочередно заполняется равномерно
    }
    er2 +0 256
    {
        .ANY2(+RO) ;  Наивысший приоритет, заполните сначала
    }
    er3 +0 256
    {
        .ANY1(+RO) ;Приоритет ниже, а er1 поочередно заполняется равномерно
    }
}

4.9.4 Укажите максимальный размер .ANY.

Используйте ANY_SIZE max_size, чтобы указать максимальный размер.

Вот примеры:

LOAD_REGION 0x0 0x3000
{
    ER_1 0x0 ANY_SIZE 0xF00 0x1000
    {
        .ANY
    }
    ER_2 0x0 ANY_SIZE 0xFB0 0x1000
    {
        .ANY
    }
    ER_3 0x0 ANY_SIZE 0x1000 0x1000
    {
        .ANY
    }
}

В приведенном выше примере:

  1. ER_1 имеет зарезервированное пространство 0x100, которое используется для контента, созданного компоновщиком
  2. ER_2 имеет 0x50 зарезервированное пространство
  3. ER_3 не имеет зарезервированного места. Регион будет заполнен. Размер ANY_SIZE должен быть ограничен 98% от размера области. 2% зарезервировано для контента, созданного линкером.

4.9.5 Пример 1

Есть 6 секций одинакового размера. следующее:

имя размер
sec1 0x4
sec2 0x4
sec3 0x4
sec4 0x4
sec5 0x4
sec6 0x4

Соответствующий файл разброса выглядит следующим образом:

LR 0x100
{
    ER_1 0x100 0x10
    {
        .ANY
    }
    ER_2 0x200 0x10
    {
        .ANY
    }
}
  1. Для first_fit: сначала присвойте все секции ER_1, затем ER_2
  2. Для next_fit: то же, что и first_fit, но ER_1 будет заполнен, а затем помечен как FULL.
  3. Для best_fit: сначала sec1 выделяется для ER_1, затем ER_2 и ER_1 имеют одинаковый приоритет, а пространство ER_2 больше, чем ER_1, а затем sec2 выделяется для ER_1. Пока не заполнится ER_1
  4. Для наихудшего_подхода: сначала выделите сек1 для ER_1, затем ER_2 больше ER_1, а затем выделите сек2 для ER_2. Остальные две области имеют одинаковый размер и одинаковый приоритет, а затем выберите первый разброс, назначьте sec3 ER_1 и так далее.

4.9.6 Пример 2 — Использование next_fit

Есть следующие разделы:

имя размер
sec1 0x14
sec2 0x14
sec3 0x10
sec4 0x4
sec5 0x4
sec6 0x4

Соответствующий разброс выглядит следующим образом:

LR 0x100
{
    ER_1 0x100 0x20
    {
        .ANY1(+RO-CODE)
    }
    ER_2 0x200 0x20
    {
        .ANY2(+RO)
    }
    ER_3 0x300 0x20
    {
        .ANY3(+RO)
    }
}

Подробные шаги следующие:

  1. Первый sec1 присваивается ER_1, потому что ER_1 имеет лучшее соответствие. ER_1 теперь осталось 0x6 байт
  2. Компоновщик пытается назначить sec2 ER_1, потому что он лучше соответствует. Но ER_1 не хватает места. Таким образом, ER_1 помечен как FULL, и ни один раздел не будет рассматриваться для ER_1 в последующем процессе. Компоновщик выбирает ER_3, потому что он имеет более высокий приоритет
  3. Компоновщик попытался выделить sec3 в ER_3, но его не удалось разместить, поэтому он был помечен как FULL, а затем компоновщик поместил sec3 в ER_2.
  4. Компоновщик теперь обрабатывает sec4. Он имеет размер 0x4 и подходит для ER_1 и ER_3. Но эти два были помечены как FULL на предыдущем шаге. Поэтому остальные разделы помещаем в ER_2.
  5. Если есть еще один раздел с именем sec7 и его размер 0x8, он не сможет установить ссылку.

4.9.7 Пример третий

Есть два файла section_a.o и section_b.o, а именно:

имя размер
seca_1 0x4
seca_2 0x4
seca_3 0x10
seca_4 0x14
имя размер
secb_1 0x4
secb_2 0x4
secb_3 0x10
secb_4 0x14

Используйте следующую команду:

--any_sort_order=descending_size sections_a.o sections_b.o --scatter scatter.txt

После сортировки он выглядит следующим образом:

имя размер
seca_4 0x14
secb_4 0x14
seca_3 0x10
secb_3 0x10
seca_1 0x4
seca_2 0x4
secb_1 0x4
secb_2 0x4

Если вы используете следующую команду:

--any_sort_order=cmdline sections_a.o sections_b.o --scatter scatter.txt

После сортировки следующим образом:

имя размер
seca_1 0x4
secb_1 0x4
seca_2 0x4
secb_2 0x4
seca_3 0x10
secb_3 0x10
seca_4 0x14
secb_4 0x14

4.10 Контроль размещения веннера

В scatter-файле также можно разместить код Веннера. Используйте Venner $$ Code, чтобы соответствовать коду Venner.

4.11 Размещение с атрибутом OVERLAY

Вы можете разместить несколько областей выполнения в одном адресе. Следовательно, в определенный момент активируется только одна область исполнения.

Например, в следующем примере:

EMB_APP 0x8000
{
    ...
    STATIC_RAM 0x0
    {
        *(+RW,+ZI)
    }
    OVERLAY_A_RAM 0x1000 OVERLAY
    {
        module1.o (+RW,+ZI)
    }
    OVERLAY_B_RAM 0x1000 OVERLAY
    {
        module2.o (+RW,+ZI)
    }
    ...
}

Область, отмеченная OVERLAY, не будет инициализирована библиотекой c при запуске. О содержимом этой части памяти заботится диспетчер наложения. Если эта часть региона содержит данные инициализации. Атрибут NOCOMPRESS необходим для предотвращения сжатия данных RW.

Атрибут OVERLAY также можно использовать в одной области выполнения. Следовательно, эту область можно использовать для предотвращения инициализации области библиотекой c.

Область OVERLAY также может использовать относительный базовый адрес. Если они имеют одинаковое смещение, они помещаются вместе последовательно.

Следующий пример:

EMB_APP 0x8000{
    CODE 0x8000
    {
        *(+RO)
    }
    # REGION1  Базовый адрес CODEКонец
    REGION1 +0 OVERLAY
    {
        module1.o(*)
    }
    # REGION2  Базовый адресREGION1Базовый адрес
    REGION2 +0 OVERLAY
    {
        module2.o(*)
    }
    # REGION3  Базовый адрес иREGION2Тот же базовый адрес
    REGION3 +0 OVERLAY
    {
        module3.o(*)
    }
    # REGION4  Базовый адрес REGION3Конец+4
    Region4 +4 OVERLAY
    {
        module4.o(*)
    }
}

4.12 Резервирование пустого региона

Вы можете зарезервировать пустую область памяти в scatter-файле, например, использовать эту область для стека. Этого эффекта можно достичь с помощью атрибута EMPTY.

Чтобы зарезервировать пустую память для стека. Соответствующая область загрузки недоступна, и область выполнения выделяется во время выполнения. Он рассматривается как фиктивный ZI-регион, и для доступа к нему компоновщик использует следующие символы:

1. Image$$region_name$$ZI$$Base
2. Image$$region_name$$ZI$$Limit
3. Image$$region_name$$ZI$$Length

Примечание: фиктивный регион ZI не будет инициализирован значением 0 во время выполнения.

Если длина отрицательная, данный адрес является конечным адресом.

Вот примеры:

LR_1 0x80000 ;Загрузить регион из0x80000Начинать 
{
    STACK 0x800000 EMPTY -0x10000 ;Конечный адрес региона:0x800000,Расчет начального адреса с использованием длины
    {
        ;Пустые области используются для размещения стопки
    }
    HEAP +0 EMPTY 0x10000 ;  Регион начинается с конца предыдущего региона.
    {

    }
    ...
}

На следующем рисунке показан этот пример:

4.13 Размещение кода библиотеки c и c ++

Вы можете разместить коды библиотек c и c ++ в scatter-файле.

Используйте * armlib * или * cpplib * в scatter-файле для индексации имени библиотеки. Некоторые разделы библиотеки ARM c c ++ необходимо поместить в корневую область. Например: __main.o, __ scatter * .o, __ dc * .o, * Region $$ Table.

Компоновщик может автоматически и надежно разместить эти разделы в InRoot $$ Sections.

Пример 1 выглядит следующим образом:

ROM_LOAD 0x0000 0x4000
{
    ROM_EXEC 0x0000 0x4000 ;  в0x0Корневая область
    {
        vectors.o (Vect, +FIRST) ;  Таблица векторов
        * (InRoot$$Sections) ;  Все разделы библиотеки должны быть размещены в корневой области. Такие как __main.o,__scatter*.o,__dc*.o,*Region$$Table
    }
    RAM 0x10000 0x8000
    {
        * (+RO, +RW, +ZI) ;  Все остальные разделы
    }
}

Пример 2: Пример библиотеки arm c

ROM1 0
{
    * (InRoot$$Sections)
    * (+RO)
}
ROM2 0x1000
{
    *armlib/c_* (+RO) ;  Все функции библиотеки c, поддерживаемые arm
}
ROM3 0x2000
{
    *armlib/h_* (+RO) ; just the ARM-supplied __ARM_*
    ; redistributable library functions
}
RAM1 0x3000
{
    *armlib* (+RO) ;  Другие библиотеки, поддерживаемые arm, например библиотека с плавающей запятой
}
RAM2 0x4000
{
    * (+RW, +ZI)
}

Имя ARM lib означает файл библиотеки ARM C, расположенный в каталоге установочный_каталог \ lib \ armlib.

Пример 3: Размещение кода библиотеки arm c ++

#include <iostrem>
using namespace std;
extern "C" int foo(){
    cout << "Hello" << endl;
    return 1;
}

Чтобы разместить код библиотеки C ++, определите следующий scatter-файл

LR 0x0
{
    ER1 0x0
    {
        *armlib*(+RO)
    }
    ER2 +0
    {
        *cpplib*(+RO)
        *(.init_array) ; .init_array должен быть размещен явно, потому что он используется двумя регионами, компоновщик не может решить, как его разместить
    }
    ER3 +0
    {
        *(+RO)
    }
    ER4 +0
    {
        *(+RW,+ZI)
    }
}

Имя install_directory \ lib \ armlib представляет файл библиотеки ARM C, расположенный в каталоге armlib.

Имя install_directory \ lib \ cpplib представляет файл библиотеки ARM c ++, расположенный в каталоге cpplib.

4.14 Предварительная обработка файлов scatter

В первой строке scatter-файла задайте команду предварительной обработки. Затем компоновщик вызовет соответствующий препроцессор, чтобы сначала обработать этот файл. Формат команды предварительной обработки следующий:

#! preprocessor [pre_processor_flags]

Наиболее распространенные команды предварительной обработки следующие:

#! armcc -E 

Вот примеры:

#! armcc -E 
#define ADDRESS 0x20000000
#include "include_file_1.h"
lr1 ADDRESS 
{

}

Вы также можете выполнить предварительную обработку в командной строке следующим образом:

armlink --predefine="-DADDRESS=0x20000000" --scatter=file.scat

Конец серии armlink.

Следующая статья От сборки руки до сборки для зажигания светодиода.

SP Flash Tool – ошибки

Код ошибки Наименование
1002 или 0x3EA S_INVALID_ARGUMENTS

Некорректный Scatter файл. Например, в файле scatter отключены блоки PRELOADER и DSP_BL

1003 или 0x3EB S_COM_PORT_OPEN_FAIL

Проблема с портом. Например, ошибка может появиться, если в BIOS отключены COM порты. Даже если COM порт виртуальный, а физический USB. В этом случае вы не увидите оборудование на которое ставятся драйверы PRELOADER. Проблема может быть в кабеле USB, в этом случае замените кабель. Если неисправен USB порт компьютера, то необходимо переткнуть кабель в другой порт. Теоретически, может возникать в режиме UART USB порта. Порт был виден, его выбрали в настройках Flash Tool, программа записала его в INI файл, после чего систему перегрузили с отключенным портом, и сразу же запустили Flash Tool, не выбирая порт.. Когда после прохода красной полосы до 100% в результате прошивки, кнопки операций снова становятся доступными для нажатия, но ни сообщения об ошибке, ни окошка с зеленым кругом не появляется возникнет данная ошибка, или аналогичная ей, код которой 1013 . В этом состоянии Flash Tool не закрывает COM порт, и попытка снова запустить любую операцию, переподключив устройство, вызовет ошибку. Если программа перешла в такое неопределенное состояние, то нужно закрыть ее и запустить заново

1011 или 0x3F3 S_NOT_ENOUCH_STORAGE_SPACE

Возникает в том случае, если размер одной из частей прошивки превышает размер отведенного ему пространства. Обычно это блок ядра или рекавери. Данная ошибка иногда возникает на недоработанных версиях Flash Tool. Замените используемую версии прошивальщика

1012 или 0x3F4 S_NOT_ENOUGH_MEMORY

Воспользуйтесь более свежей версией прошивальщика

1013 или 0x3F5 S_COM_PORT_OPEN_FAIL

Ошибка аналогична ошибке 1003. Решения нужно искать по тому же принципу. Может помочь смена версии прошивальщика, или прошивка устройства с отключенной батареей

1018 или 0x3FA S_UNKNOWN_TARGET_BBCHIP

Воспользуйтесь более свежей версией прошивальщика

1022 или 0x3FE S_UNSUPPORTED_VER_OF_DA

Воспользуйтесь более свежей версией прошивальщика

1040 или 0x410 S_UNSUPPORTED_OPERATION

Scatter файл не подходит для устройства. Например в названии файла содержится номер версии 6777, а устройство версии 6555

1041 или 0x411 CHS_ERR

Необходимо перейти во вкладку Help, нажать Open Logs Folder и удалить все логи. Перейти в папку с прошивкой и удалить файл Checksum.ini

2004 или 0x7D4 S_BROM_DOWNLOAD_DA_FAIL

Проблема может заключаться в версии флэштула. Загрузите версию в конце которой есть обозначение SEC. Ошибка может возникнуть, если в операционной системе установлено множество USB драйверов для разных устройств. Воспользуйтесь программой USBDeview для удаления установленных USB драйверов и выполните прошивку через Flash Tool. Может помочь подключение устройства с зажатой клавишей громкости + или . Если вышеперечисленные способы не помогают, после того как появится ошибка, необходимо сразу закрыть окно с ошибкой и тут же нажать кнопку download еще раз

2005 или 0x7D5 S_BROM_CMD_STARTCMD_FAIL

Ошибка может возникать на устройствах MTD, если при выборе режима Download на блоках PRELOADER или DSP_BL не установлена галочка. Необходимо использовать подходящую версию Flash Tool, например v2.xxx для телефонов MT6573, или выключить режим DA Download All.. При выборе режима Download на блоках PRELOADER или DSP_BL установлена галочка, необходимо ее снять с этих блоков. Если эти блоки необходимо прошить, то подсоединить телефон в режиме BOOTROM. При выборе ReadBack, Format или MemoryTest нужно подключить устройство в режиме BOOTROM. Можно попробовать прошить устройство с отключенной батареей

2020 или 0x7E4 S_BROM_CHKSUM16_MEM_RESULT_DIFF

В настройках Flash Tool принудительно выставить галочку, указав тем самым, что устройство без батареи. После этого подключить устройство через тест поинт, но уже с батареей

2035 или 0x7F3 S_BROM_CMD_JUMP_DA_FAIL

После нажатия кнопки Download подключить к компьютеру выключенное устройство с предварительно зажатыми кнопками громкости

3001 или 0xBB9 S_DA_EXT_RAM_ERROR

Возможно ошибка связана с подключением. Проверьте кабель, переподключите кабель в другой порт USB

3012 или 0xBC4 NAND_FLASH_NOT_FOUND

Проблема связана с определением флеш памяти устройства. Воспользуйтесь другой версией прошивальщика, т.к. по мере выпуска разных версий обновляется информация о флеш памяти. Если не помог вышеуказанный вариант, попробуйте прошить устройство на другом компьютере, т.к. бывают проблемы, которые не позволяют корректно определить память на конкретной машине

3013 или 0xBC5 S_DS_SOC_CHECK_FAIL

Возможно, что в настройках прошивки Flash Tool не стоит галочка на Uboot . Uboot — загрузчик операционной системы и драйверов для инициализации основного оборудования, таких как дисплей, процессор, GPIO. Ошибка может возникать в том случае, если в строке пути, по которому расположена программа или прошивка, присутствует кириллица или некорректные символы, иероглифы. Допустимо размещение программы и файла прошивки только по тому пути, который полностью состоит из латинских символов. Пример, показывающий некорректное размещение файлов: C:\Users\Пользователь\Desktop\Прошивки\Прошивка планшета\

3054 или 0xBEE S_DA_NFB_BOOTLOADER_NOT_EXIST

Воспользуйтесь другой версией прошивальщика. Попробуйте заменить версию прошивальщика с пятой на третью версию

3066 или 0xBFA S_DA_HANDSET_FAT_INFO_NOT_FOUND

Возникает при автоматическом форматировании. Необходимо задать адреса форматирования вручную

3144 или 0xC48 S_DA_EMMC_FLASH_NOT_FOUND

Ошибка возникает, если есть проблемы с аппаратной частью устройства. Также может возникать в том случае, если Scatter файл не подходит к устройству. Например, в названии присутствует emmc, а устройство на самом деле с MTD флэш. Есть вероятность того, что проблема решится, если воспользоваться другим компьютером и операционной системой. Предпочтительно использовать компьютер с операционной системой Windows XP со вновь установленными драйверами

3149 или 0xC4D S_DA_SDMMC_WRITE_FAILED

Воспользуйтесь другой версией прошивальщика. Если прошиваете 3 версией, попробуйте 5 версию, либо наоборот. Выберите режим Format all + download. Необходимо переустановить драйвера для устройства и добиться того, чтобы в диспетчере устройств устройство правильно отображалось как MTK USB PORT. Запустите Flash Tool, снимите галочки со всех пунктов, кроме PRELOADER и прошейте в режиме Download. Если прогрес идёт но в конце возникает ошибка, то убеждаемся что прошивать будем только PRELOADER. В верхней части окна Flash Tool, рядом с кнопкой Download, нажмите кнопку Format. Откроется окно настроек форматирования с режимами форматирования Auto и Manual. В режиме Auto есть две настройки, поставить галочку на верхний пункт и нажать OK. Начнётся форматирование. После окончания форматирования, снова прошить PRELOADER. После удачной прошивки PRELOADER, прошить устройство полностью

3168 или 0xC60 S_CHIP_TYPE_NOT_MATCH

Некорректный scatter файл. Используйте Scatter файл от вашего устройства

4001 или 0xFA1 S_FT_DA_NO_RESPONSE

Смените порт USB и перенесите Flash Tool в корень диска. Возможно, в Download Agent нет информации о ЦП/флэш, поэтому воспользуйтесь более свежей версией прошивальщика. Ошибка может быть аппаратной, например при вышедшей из строя флеш-памяти

4008 или 0xFA8 S_FT_DOWNLOAD_FAIL

Воспользуйтесь другой версией прошивальщика. Есть вероятность, что поможет замена версии на более старую. Проблема может быть в кабеле USB, в этом случае замените кабель или порт USB. Возможно в процессе прошивки сел аккумулятор. Зарядите устройство и попробуйте выполнить прошивку заново. Можно попробовать вытащить из устройства аккумулятор и попробовать прошить без него. Попробуйте выполнить форматирование устройства

4009 или 0xFA9 S_FT_READBACK_FAIL

Кроме ошибок чтения в самом устройстве, ошибка может наблюдаться в случае ошибок в файловой системе компьютера. Например, недостаточно места на диске, либо файл невозможно перезаписать т.к. он заблокирован. Для того, чтобы понять причину, необходимо смотреть в лог Flash Tool

4010 или 0xFAA S_FT_FORMAT_FAIL

Рекомендуется сменить версию прошивальщика на 5 версию, крайне желательно начать с версии 5.1352.01 и попытаться прошить аппарат через режим Firmware upgrade. Прошивка должна быть оригинальной для аппарата и содержать все блоки. Попробуйте сменить кабель для прошивки на более качественный

4032 или 0xFC0 S_FT_ENABLE_DRAM_FAIL

Ошибка может возникнуть при прошивке на аппарате с процессором MT6589. Для ее устранения, отформатируйте устройство через кнопку Format. Не делайте форматирование, если у вас аппарат на процессоре MT6575 или 6577. После форматирования, прошейте устройство со всеми галочками, нажав кнопку Download. Можно попробовать переустанавить драйверы и выполнить форматирование повторно. Выполнить прошивку, если предыдущая попытка была неудачной. Если ничего не помогло, то попробуйте сменить версию прошивальщика. Рекомендуется начать с версии 5.1352.01. Ошибка связана с неверным блоком PRELOADER. Необходимо найти родной PRELOADER и прошить его. Если прошивка стандартным методом не приносит результата, то возможно придется прошивать аппарат через тестпоинт. Появлению данной ошибки может способствовать низкий заряд батареи. Можно попробовать решить проблему замкнув 4 и 5 контакт на разъеме USB

4037 или 0xFC5 S_FT_FS_READ_FAIL 0xFC5

Ошибка может возникать в том случае, если в строке пути, по которому расположена программа или прошивка, присутствует кириллица или некорректные символы, иероглифы. Допустимо размещение программы и файла прошивки только по тому пути, который полностью состоит из латинских символов. Пример, показывающий некорректное размещение файлов: C:\Users\Пользователь\Desktop\Прошивки\Прошивка планшета\

4050 или 0xFD2 S_FT_NEED_DOWNLOAD_ALL_FAIL

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

4058 или 0xFDA S_FT_GET_MEMORY_FAIL

Ошибка возникает при наличии проблем с флеш-памятью. Не рекомендуется решать проблему самостоятельно. Варианты устранения ошибки: прогрев чипа флеш-памяти паяльным феном при высокой температуре, примерно 400 градусов по цельсию. Вероятно, придется произвести замену чипа с донорской платы, либо на новый

5002 или 0x138A S_INVALID_DA_FILE

При настройке Flash Tool Download Agent необходимо выбирать прилагающийся к данной версии прошивальщика. Выбор других агентов приводит к данной ошибке

5007 или 0x138F S_FTHND_FILE_IS_NOT_LOADED_YET

Ошибка обычно возникает в том случае, если в программе Flash Tool стоит галочка на блоке, к которому некорректно указан путь, либо отсутствует. Для ее устранения, необходимо указать корректный путь к нужному блоку прошивки. Также при возникновении данной ошибки, воспользуйтесь другой версией прошивальщика, например v5.1352.01

5054 или 0x13BE S_DL_GET_DRAM_SETTINGS_FAIL

Ошибка заключается в том, что программе Flash Tool не удалось получить настройки оперативной памяти устройства. Может возникнуть в том случае, если был выполнен полный сброс через Flash Tool. Также ошибка может происходить при обмене данными между Download Agent и устройством. При некорректной работе драйвера сбой при передаче может произойти лишь в том случае, если у вас операционная система Windows XP с сервис-паком ниже третьего. Необходимо установить третий сервис-пак. В старших версиях драйвер usbser.sys обновлениям не подвергался и в переустановке не будет смысла

5066 или 0x13CA S_DL_PC_BL_INVALID_GFH_FILE_INFOR

Некорректный Scatter файл. Может возникнуть в том случае, если выбрали Scatter из папки с неподготовленными для Flash Tool файлами. Необходимо выбрать корретный Scatter файл

5069 или 0x13CD S_DL_PMT_ERR_NO_SPACE

Ошибка вероятнее всего возникает из-за особенности флеш-памяти. Случается так, что форматирование, даже низкоуровневое, не дает никакого эффекта. Т.е во флеш-памяти все остается как есть. Если делать Format, то может появиться ошибка 1037 и при этом выводится сообщение, с необходимостью выполнить Download для создания таблиц разделов. Firmware Upgrade выполнить не удается, из-за ошибки 1037. Можно сделать Download только PRELOADER. Загрузка любого другого раздела выдаст ошибку 5069. От версии Scatter, размера раздела FAT не зависит. Можно выполнить Manual Format, но в пределах UA Size. После форматирования, попытка залить любой раздел снова сводится к ошибке 5069

6045 или 0x179D S_SECURITY_SECURE_USB_DL_IMAGE_SIGN_HEADER_NOT_FOUND

Рекомендуется сменить версию прошивальщика на 5 версию, крайне желательно начать с версии 5.1352.01

6104 или 0x17D8 S_SECURITY_SECURE_USB_DL_DA_RETURN_INVALID_TYPE

Рекомендуется сменить версию прошивальщика на 5 версию, крайне желательно начать с версии 5.1352.01

6124 или 0x17EC S_SECURITY_INVALID_PROJECT (6124), MSP ERROE CODE: 0 x 00

Есть вероятность того, что ошибка пропадет после прошивки родного PRELOADER через кнопку Download. После этого выполнить прошивку модифицированного Recovery и полную прошивку

6126 или 0x17EE S_SECURITY_SECRO_HASH_INCORRECT

Ошибка часто встречается на аппаратах Huawei G610, Huawei G700, LG L60 Dual и на текущий момент не решаема в домашних условиях. Последствия: периодическая перезагрузка, в устройстве остаются удаленные файлы, при проверке памяти на запись возникает ошибка. Причина в том, что устройство имеет залоченный загрузчик, из-за чего необходимо прошить разлоченный SEC_RO для разблокировки и дальнейшей перепрошивки. Сводится все к тому, что именно при прошивке SEC_RO возникает эта ошибка. Рекомендуется заменить память в сервисе

8038 или 0x1F66 SP FLASH TOOL ERROR/PMT changed for the ROM; it must be downloaded

Для устранения ошибки необходимо использовать режим Firmware upgrade. Внимание! Прошивка должна быть конкретно для прошиваемого устройства и содержать абсолютно ВСЕ блоки, которые обычно есть в стоковых прошивках

8045 или 0x1F6D SP FLASH TOOL ERROR

Ошибка похожа на 8038, но на практике правка Scatter-файла не помогает. Для решения проблемы можно обратиться в сервисный центр для прошивки аппарата через программатор. В домашних условиях иногда срабатывает вариант прошивки через кнопку Download со всеми установленными галочками. Также можно попробовать сменить версию прошивальщика на 5 версию, крайне желательно начать с версии 5.1352.01. Проблема может быть аппаратная

8200 или 0x2008 SP FLASH TOOL ERROR

Ошибка возникает если вы пытаетесь прошить аппарат на одной платформе, прошивкой от другого. Например у вас MT6577, а вы пытаетесь прошить прошивкой от аппарата на MT6575. Можно попробовать сменить версию прошивальщика на 5 версию, крайне желательно начать с версии 5.1352.01

8417 или 0x20E1 SP FLASH TOOL ERROR: The load scatter file is invalid!

Ошибка может возникать в том случае, если в строке пути, по которому расположена программа или прошивка, присутствует кириллица или некорректные символы, иероглифы. Допустимо размещение программы и файла прошивки только по тому пути, который полностью состоит из латинских символов. Пример, показывающий некорректное размещение файлов: C:\Users\Пользователь\Desktop\Прошивки\Прошивка планшета\

Unrecognized ROM detected

Ошибка возникает в случае несоответствия разметки в Scatter файле и в устройстве. Чаще всего случается, когда над устройством производились действия по кастомной переразметке через изменение параметров разделов в EBR. При этом сам Scatter обычно никто не меняет. Для устранения ошибки необходимо выполнить принудительное форматирование с параметрами: Auto Format Flash и Format whole flash except Bootloader для того, чтобы инициализировать устройство. Не забудьте заранее сделать бэкап NVRAM, IMEI. После форматирования необходимо выполнить полную прошивку через Download

Приложение не было запущено, поскольку оно некорректно настроено. Повторная установка приложения может решить данную проблему

Установить пакет Microsoft Visual C++ 2005-2008-2010-2012-2013-2017 Redistributable Package. Также убедитесь, что вы распаковали прошивальшик в корень диска на компьютере, а не пытаетесь запустить его из архива

PMT changed for the ROM it must be downloaded

Автор Евгений На чтение 5 мин Опубликовано Обновлено

Во время прошивки своего мобильного устройства некоторые владельцы андроид-смартфонов могут встретиться с серьезной проблемой, о наличии которой расскажет соответствующее уведомление. Гаджет может выдать «PMT changed for the ROM it must be downloaded». В чем особенность этой ошибки, когда и почему она появляется и как можно ее исправить своими силами при прошивке гаджета?

Внимание. Делайте это на свой страх и риск, мы не несем ответственности за любые повреждения телефона. Если вы не являетесь техническим специалистом по мобильным технологиям и не имеете представления о перепрошивке мобильного телефона, не пытайтесь сломать свой телефон или он может сломаться.

В чем суть ошибки «PMT changed for the ROM it must be downloaded»

Любой электронный гаджет для обеспечения работы и нормального функционирования всегда использует специализированную таблицу разделов или разметку памяти. Как раз при помощи нее и производится оптимальная работа всей установленной на гаджет операционной системы.

В процессе перепрошивки гаджете используется специализированное программное обеспечение, которое использует свои собственные данные и информацию о разметке смартфона. Если же эта информация (она отображается в Scatter-файле) от разметок гаджета по факту (PMT). Как раз в таких случаях и появляется ошибка с идентификатором «PMT changed for the ROM».

Однако существует еще одна причина появления этой ошибки – это наличие одной или же нескольких поврежденных таблиц разделов в самом телефоне.

Идентификация ошибки

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

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

В тех случаях, когда телефон вообще отказывается запускать или запускается после запуска, а потом зависает на загрузке логотипа компании-производителя, проблема может быть немного другой. Касается это тех случаев, когда ошибка появляется после попытки пользователя перепрошить свое устройство с помощью ПО SP Flash Tool.

Иногда бывает и так, что некоторые файлы, являющиеся важной составляющей телефона и его прошивки, полностью или частично не соответствуют файлам, заявленным производителем. Это тоже может привести к проблеме PMT changed for the ROM.

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

Способы разрешения проблемы

Итак, для того, чтобы без выезда в сервисный центр справиться с выплывающим уведомлением PMT changed for the ROM, необходимо использовать один из перечисленных ниже способов (все способы подразумевают использование СП Флеш Тул):

  1. Помимо уже отмеченного в статье поиска необходимого ПО и иного софта, подходящего под версию телефона, пользователь также может на гаджете выбрать дополнительную функцию «Firmware Updrade» (стандартной в этом случае является режим Download Only) в программе SP Flash Tool в ходе прошивки. После выбора этого режима программа скачает загрузочный модуль, который, если он будет отличен от стандартного телефонного загрузчика, может привести к проблемам в телефоне вплоть до его программного сбоя. Однако происходит это очень редко, а сам способ позволит исправить проблему.
  2. Другой вариант разрешения ситуации с PMT changed for the ROM — это выбор подходящей прошивки с последующим форматированием телефона при помощи той же программы СП Флеш Тул (для этого достаточно выбрать Format Flash в Auto режиме). После этого необходимо скачать прошивку (это команда download flash) без пользовательского выбора загрузчика. После того, как прошивка будет завершена, пользователю следует исправить IMEI.
  3. Вот еще один хороший способ. Владельцу гаджета нужно полностью выключить телефон, а после этого запустить SP Flash Tool (специальная утилита, позволяющая прошивать телефон). После этого необходимо выбрать подменю «Format», а потом нажать на кнопку старта. Дальше следует подключить выключенный телефон к компьютеру, а потом дождаться окончания форматирования. Через некоторое время программа выдаст табличку Format OK и отключить телефон от компьютера. Дальше нужно перейти в раздел Download, выбрать файл-скаттер и нажать на кнопку загрузки. Остается только подключить аппарат и дождаться завершения процесса прошивки.
  4. И еще один интересный способ решить проблему – открыть СП Флеш Тул, выбрать скаттер-файл, а после этого нажать на Format. Дальше следует выбрать format all except bootloader. Дальше необходимо отформатировать телефон и перепрошить его еще раз. Иногда даже это может быть эффективно, особенно если другие способы не работают.

Это все популярные способы, позволяющие с помощью SP Flash Tool перепрошить смартфон.

Заключение

Чаще всего ошибка PMT changed for the ROM. является результатом несовпадения между телефонной разметкой и то, что отмечена в скаттер-файле. Все способы, перечисленные в данной статье, позволяют исправить проблему, однако стоит быть осторожным, особенно если нет уверенности в положительном результате.

Программа SP Flash Tool и её режимы прошивки

Доброго времени суток… Программа SP Flash Tool предназначена для прошивки программного обеспечения смартфонов работающих на базе процессоров Mediatek (MTK). Телефоны на этом процессоре довольно распространённые в наше время, а прошивок на них существует огромное количество. Каждая индивидуальна для своего гаджета. Для чего прошивают телефоны? Обычно это делают для улучшения работоспособности системы. Смены прошивки аппарата на более новую, а также некоторые пользователи устанавливают кастомные (сторонние) прошивки. Такие прошивки ещё называют пользовательские, то-есть созданные пользователем, а не разработчиком. Что такое прошивка в общем — это обновление программного обеспечения всех файлов телефона/планшета до новой версии ПО. Или откат до определённой версии программного обеспечения, самостоятельно.

И так, вернёмся к программе SP Flash Tool и к её трём режимам прошивки. Ранее их было четыре, в предыдущих (старых) версиях программы. Дело в том, что режим Like MOTA в обновлённых версиях программы отсутствует, скорее всего разработчики от него избавились, так как посчитали его бесполезным. Так вот, этот режим «шьёт» только три раздела Boot, Recovery и Android (System), что можно сделать и в других режимах (читаем ниже). В начале прошивки в этом режиме  форматируется три раздела, затем с его помощью заливаются новые файлы в телефон.

Format All + Download

Следующий режим Format All + Download — работая в этом режиме Вы должны чётко понимать то, что телефон полностью форматируется. Затирается вся его память, после чего он прошивает отмеченные для прошивки в скаттер — файле образы в определённые разделы для нормальной работы смартфона.

Обычно новички, пытаются прошивать телефоны именно в этом режиме. Тем самым затирают все важные разделы. Происходит удаление imei — кодов и других важных данных для нормальной работоспособности гаджета. После чего начинаются так называемые «танцы с бубном». Это восстановление прошивки после «окирпичивания телефона», восстановление имеев, и другой важной информации. Для каждого телефона  всё это индивидуальна.

Download Only

Следующий режим Download Only — с помощью этого режима Вы сможете прошить выбранные Вами образы в определённые разделы телефона. Главным является то, чтобы размеры и адреса в скаттер — файле прошиваемых образов должны соответствовать размерам и адресам в телефоне. Если это не соблюдается, то Flash Tool начинает так сказать «ругаться» и требовать «шить» телефон в режиме Firmware Upgrade (о котором ниже).

В процессе прошивки режим Download Only форматирует выбранные пользователем разделы. После чего записывает на их место новые прошиваемые образы. Этот режим будет полезен для прошивки (обновлении) одного или нескольких образов при не значительно — изменённом содержании в них. Ну например если Вы хотите прошить только рекавери, или только лого, ну или как вариант обновлённую систему (boot.img и system.img). Все остальные файлы остаются нетронутыми в самой прошивки.

Читайте также интересные статьи:

Как защитить телефон от взлома

Отличная клавиатура для Android — устройств это SwiftKey Keyboard

Firmware Upgrade

Этот режим производит защиту от потери важных данных при перепрошивки. Главное условие этого режима — это наличие и прошивка всех образов, отмеченных в скаттер — файле для прошивки.

Так же стоит быть внимательным с preloader.bin (в этом режиме его тоже нужно прошивать). Он обязательно должен быть от Вашего аппарата, иначе получите «кирпич», и опять же начнутся «танцы с бубном» по восстановлению телефона.

В этом режиме так же как и в режиме Format All + Download происходит форматирование всей памяти телефона. Только в этом режиме есть небольшое отличие. Все важные разделы в телефоне перед началом форматирования на время сохраняются в программе SP Flash Tool и заливаются с остальными прошиваемыми образами в оригинальном состоянии (сохраняя тем самым всю важную индивидуальную информацию Вашего телефона). Так же для этого режима без разницы отличие размеров образов и адресов разделов в телефоне и в скаттер — файле. Что опять же полезно при переразметки памяти.

Загрузить файл разброса MediaTek MTK | Android_Scatter.txt

Из этого сообщения вы можете загрузить файл MTK Scatter Text для своего устройства MediaTek. Устройства MTK мгновенно поднялись в чартах популярности. Он также выиграл от того факта, что такие устройства, как Xiaomi (включая Redmi и Mi), Samsung и Nokia, также могут похвастаться этим чипсетом.

Более того, не только для обычных пользователей, но и для собственной разработки.Будь то прошивка пользовательских двоичных файлов, ПЗУ и восстановление до получения прав администратора путем рутирования устройства через Magisk, есть что попробовать. Аналогичным образом, в некоторых настройках вам может потребоваться получить Scatter-файл вашего устройства.

Хотя этот файл также поставляется со стандартной прошивкой, загрузка всего 1 ГБ прошивки только для этого файла может быть не для всех чашкой чая. Ну, а если вы тоже того же мнения, то не расстраивайтесь. Из этого сообщения вы можете напрямую загрузить файл MTK Scatter Text для своего устройства MediaTek.Следуйте вместе.



Что такое файл разброса MediaTek

Стандартная прошивка вашего устройства MediaTek поставляется с файлом разброса. Названный MTxxxx_Android_scatter, это текстовый файл, который содержит важную информацию, связанную со схемой разделов устройства. К ним относятся, например, имя раздела, индекс, размер, макет, формат, адрес и другие.

В зависимости от набора микросхем, с которым поставляется ваше устройство, вы увидите этот файл с названиями MT6572, MT6577, MT6582, MT6589, MT6592, MT6595 и т. д.Что касается его использования, файл Android Scatter можно использовать для различных целей, включая удаление блокировки FRP на вашем устройстве MediaTek. Итак, теперь, когда вы знаете об использовании файла MediaTek MTK Scatter, давайте познакомимся с его ссылками для скачивания.

Загрузить файл MediaTek MTK Scatter

На этом мы завершаем это руководство о том, как загрузить файл MTK Scatter Text для вашего устройства MediaTek. Вскоре мы обновим эту таблицу ссылками для загрузки других устройств MTK.А пока, если у вас есть какие-либо вопросы относительно вышеупомянутых шагов, сообщите нам об этом в комментариях. Мы вернемся к вам с решением в ближайшее время.

О главном редакторе

Садик Хассан

администратор

Технический фанат по рождению, он всегда проявлял живой интерес к платформе Android с самого рождения HTC Dream. Среда с открытым исходным кодом, кажется, всегда заинтриговала его множеством вариантов, доступных на кончиках его пальцев.«MBA по профессии, блогер по выбору!»

Как прошить Scatter-файл с помощью SP Flash Tool

Здесь на странице вы узнаете, как прошить скаттер файлы с помощью SP Flash Tool. Это один из самых популярных инструментов для установки ПЗУ (прошивки) на мобильные устройства на базе MediaTek. Следуйте инструкциям ниже.

Осторожно: Перепрошивка стандартной прошивки с помощью SP Flash Tool сотрет ваши данные. Поэтому мы рекомендуем вам сделать полную резервную копию ваших данных с устройства.т. е. контакт, сообщение, фото, файл и т. д.

Scatter-файл Flash с использованием SP Flash Tool

1. Загрузите SP Flash Tool на свой компьютер. Если вы ищете последнюю версию инструмента, нажмите здесь , чтобы загрузить все и последние версии.

2. Загрузите и установите USB-драйвер MediaTek на свой компьютер. Если он уже установлен на вашем компьютере, пропустите этот шаг и выполните следующие шаги. Если вы ищете USB-драйвер MediaTek, то нажмите здесь .

3. Извлеките SP Flash Tool с помощью WinRAR или 7zip. После распаковки вы увидите следующие файлы.

4. Теперь откройте инструмент ( flash_tool.exe ).

5. После запуска SP Flash tool нажимаем Scatter-loading .

6. Теперь найдите точечный файл . Затем нажмите на открыть .

7. После успешного поиска прошивки нажмите Download .

8. Теперь подключите устройство к режиму прошивки.

9. Подождите несколько минут до полной прошивки. После того, как прошивка будет завершена, вы увидите зеленое сообщение о прохождении (Download OK).

10. Поздравляем! вы уже узнали, как прошивать стандартную прошивку с помощью SP Slash Tool на устройствах MediaTek.

Не волнуйтесь, если вы не совсем понимаете, как прошивать стоковую прошивку с помощью SP Flash Tool, потому что мы приложили для вас видеоруководство.Посмотрите следующее видео.

Пользовательский файл загрузки разброса Keil

Пользовательский файл загрузки разброса Keil

Распределенная нагрузка определяет 1 или несколько областей нагрузки, и каждая область нагрузки
может содержать 1 или более областей выполнения.
Описание области загрузки указывает область памяти, в которой
должны быть размещены дочерние области исполнения.
Ниже приведен пример файла разброса Keil uVision 5:
Он описывает 1 область нагрузки, а именно
LR_IROM1
и этот регион загрузки содержит 3 региона исполнения, а именно
ER_IROM1
RW_IRAM1
RW_IRAM2
Все вышеперечисленные 3 имени даются пользователем.

Регион определяется <имя пользователя>, например. LR_IROM1,
за которым следует начальный адрес, за которым следует размер.
По умолчанию регион является «регионом загрузки», то есть регионом LR_IROM1.
является «областью загрузки»
Если область определена в пределах этой области загрузки, это по умолчанию
регион исполнения.
В примере файла разбросанной загрузки «область загрузки» с именем LR_IROM1
определяет 3 области выполнения, а именно ER_IROM1, RW_IRAM1 и RW_IRAM2
Следовательно, в следующем примере есть только 1 область выполнения.
который существует в фигурных скобках определения первой загрузки
область, край.

LR_IROM1

0x00000000 0x00040000  {    ; область нагрузки
size_region
ER_IROM1 0x00000000 0x00040000  {  ; адрес загрузки
= адрес выполнения
*.o (СБРОС, +Первый)
*(В корневые разделы $$)
ЛЮБОЙ (+RO)
ЛЮБОЙ (+ХО)
}
RW_IRAM1 0x80000000 0x00020000  {  ; Данные RW
ЛЮБОЙ (+RW +ZI)
}
RW_IRAM2 0x40000000 0x00020000  {  ; Данные RW
.ЛЮБОЙ (+RW)
}
}

Другой пример файла Scatter-Load:


LR_IROM1
0x00000000 0x00040000  {    ; область нагрузки
size_region
ER_IROM1 0x00000000 0x00020000 {
*.o (СБРОС, +Первый)
*(В корневые разделы $$)
ЛЮБОЙ (+RO)
ЛЮБОЙ (+ХО)
}
RW_IRAM1 0x20000000 0x00020000  {  ; Данные RW
.ЛЮБОЙ (+RW +ZI)
}
NS_EXEC_BIN 0x20010000 0x00020000  {  ; NS
код начинается здесь. Первое значение — это значение ns sp.
ns_bin.o(section_ns_bin)
}
}

Приведенный выше файл можно сохранить как scatter.txt и использовать в Keil uVision.
5. На следующем снимке экрана показано, как использовать приведенный выше файл разброса.
в Кейле uVision5

Это позволит создать 2 региона RW.

Ключевые слова:
Пример Scatter файла
Пример файла Scatterload
Пример файла загрузки Scatter
Рабочий пример файла с разбросанной загрузкой.
Как использовать пользовательский файл разброса в Keil uVision
Загрузите свой собственный файл разброса.

Как создать файл разброса для устройств MTK

Обновлено 4 августа 2021 г.

Это инструкции по созданию файла разброса для устройств MTK, включая MT6572, MT6577, MT6582, MT6589, MT6592, MT6595.

Требования : У вас должно быть устройство Android на базе чипсета MTK, USB-кабель и немного здравого смысла для выполнения простых задач.

Создать Scatter-файл для устройств MTK

Шаг 1 : Включите на смартфоне режим отладки по USB. Для Включить отладку по USB : Настройки > Параметры разработчика > Отладка по USB (отметьте, чтобы включить).

(Параметры разработчика скрыты для Android 4.2.2 и выше. Перейдите к Настройки > О телефоне > Номер сборки > Коснитесь на нем 5-8 раз, чтобы отобразить этот параметр).

  • Загрузите и установите драйвер Android ADB на свой компьютер (совместим практически со всеми устройствами Android).
  • После завершения установки драйвера подключите устройство Android на базе чипсета MTK к компьютеру через USB-кабель.
  • Загрузите MTK Droid Tools и извлеките его в любое место на вашем компьютере.

    Шаг 5 : После извлечения вы сможете увидеть следующие файлы:

  • Теперь откройте файл MTKdroidTools.exe на своем компьютере и подождите, пока он загрузит информацию об устройстве Android.
  • После успешной загрузки информации об устройстве щелкните Карта блоков , чтобы продолжить.
  • В новом окне будет отображаться информация о блоках. Теперь вам нужно нажать на кнопку «Создать файл разброса».
  • Теперь он спросит, где сохранить файл разброса. Вы можете сохранить его в любом месте на вашем компьютере. Когда вы будете готовы, нажмите кнопку «Сохранить», чтобы начать процесс создания Scatter.
  • Вот и все. Вы успешно создали scatter-файл для своего устройства.Поздравляем.

    Однократное чтение:

    [*] Файл MtkDroidTools.exe, которым мы поделились на этой странице, содержит эксплойт для Android, который позволяет создавать Scatter, делать резервные копии и рутировать ваше устройство. Из-за этого эксплойта MtkDroidTools.exe определяется как троян почти всеми антивирусными программами.

    [*] Mtk Droid Tools также позволяет вам сделать полную резервную копию стоковой прошивки Android, чтобы вы могли прошить ее в любое время.

    [*] Кредиты : MTK Droid Tools создан компанией Mediatek, INC, поэтому все кредиты принадлежат им за инструмент.

  • Создание файла разброса для любого устройства Android MediaTek — инструкции

    Что вы знаете о Scatter File? Вы хотите создать Scatter File? Если у вас есть мобильное устройство с чипом Mediatek внутри. Похоже, вы тот, кто любит устанавливать пользовательские ПЗУ, рутировать, модифицировать патчи и настраивать свое мобильное устройство, чтобы получить от него максимальную отдачу.Что ж, если вы уже некоторое время занимаетесь подобными вещами на своем мобильном устройстве, то вы, должно быть, сталкивались с термином «Scatter File». Возможно при восстановлении IMEI/NVRAM или прошивке стоковой прошивки.

    Сегодня в этом руководстве вы узнаете о Scatter File txt? Как создать файл разброса для любого устройства Android MediaTek ?.

    См. также: Видеочат для детей: безопасен ли Omegle для подростков?

    Scatter File Txt Intro:

    Точечный файл — это .txt , который используется для объяснения загрузки регионов в мобильном устройстве, работающем на архитектуре MediaTek ARM. Обычно эти файлы нужны во время прошивки стоковой прошивки с помощью таких инструментов, как SP Flash Tool . В некоторых случаях мы можем легко разблокировать любое мобильное устройство после прошивки стандартной прошивки.

    Создать файл разброса для любого устройства Android MediaTek:

    Теперь, если вы хотите создать файл разброса для любого устройства Android MediaTek, вам потребуются некоторые предварительные условия.Давайте кратко рассмотрим их.

    Предпосылки

    • Ваше мобильное устройство должно быть основано на Mediatek ARM Structure.
    • USB-кабель.
    • Вы хотите, чтобы ПК выполнял эту настройку.
    • Установите или загрузите новую версию MTK Droid Tools на свой ПК с Windows. Вы также можете кратко ознакомиться с нашей статьей о Скачать MTK Droid Tool [доступна последняя версия]
    • Драйверы для вашего мобильного устройства должны быть установлены в вашей системе.[ Загрузить USB-драйверы для Android ]

    После выполнения вышеуказанных предварительных условий создайте файл разброса для своего устройства Android MediaTek.

    шагов по созданию файла разброса для любого устройства Android MediaTek:

    Теперь, если вы хотите создать файл разброса для своего устройства Android MediaTek, вам необходимо внимательно следовать этим инструкциям:

    • Убедитесь, что вы установили или загрузили MTK Droid Tools на свой компьютер сверху.
    • Теперь запустите файл MTK Droid Tool.exe в вашей системе.
    • Подключите устройство Android Mediatek к компьютеру с помощью USB-кабеля.
    • Теперь имейте в виду, что на вашем мобильном устройстве включена функция USB Debugging . Вы можете включить его, просто перейдя к Настройки  >>  О телефоне >> нажмите на номер сборки 7 раз  на мобильном устройстве. Теперь вернитесь к настройкам и нажмите Параметры разработчика и включите Отладка по USB .
    • Всякий раз, когда вы просматриваете информацию об устройстве в MTK Droid Tool, просто нажмите кнопку Карта блоков  .
    • Теперь вы можете просматривать новое окно. Здесь нажмите кнопку Create Scatter .
    • Теперь выберите каталог, в котором вы хотите сохранить файл разброса, и нажмите Сохранить
    • Вот и все, теперь отключите свой мобильный телефон от ПК.

    Теперь ваш scatter-файл будет успешно сохранен в выбранную вами папку.

    Заключение:

    Вот и все, это было наше введение в Scatter File txt и как создать Scatter File. Я надеюсь, что вы нашли эту статью полезной. На всякий случай, если вы застряли где-то между инструкциями или у вас есть какие-либо вопросы или вопросы, связанные с темой, не стесняйтесь оставлять их в разделе комментариев ниже.

    Читайте также:

    scatter-файл · GitHub

    scatter-файл · GitHub

    Мгновенно делитесь кодом, заметками и фрагментами.

    точечный файл

    Этот файл содержит двунаправленный текст Unicode, который может быть интерпретирован или скомпилирован не так, как показано ниже. Для просмотра откройте файл в редакторе, который показывает скрытые символы Unicode.
    Узнайте больше о двунаправленных символах Unicode

    ################################################## ################################################### #########
    #
    # Общие настройки
    #
    ################################################## ################################################### #########
    — общее: MTK_PLATFORM_CFG
    информация:
    — версия_конфигурации: V1.1.1
    Платформа

    : MT6582
    проект: phaeton_row
    хранилище: EMMC
    загрузочный_канал: MSDC_0
    размер_блока: 0x20000
    ################################################## ################################################### #########
    #
    # Настройка макета
    #
    ################################################## ################################################### #########
    — индекс_раздела: SYS0
    имя_раздела: PRELOADER
    имя_файла: preloader_phaeton_row.ящик
    is_download: правда
    тип: SV5_BL_BIN
    linear_start_addr: 0x0
    физический_старт_адрес: 0x0
    размер_раздела: 0x1400000
    регион: EMMC_BOOT_1
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ЗАГРУЗЧИКИ
    резерв: 0x00
    — индекс_раздела: SYS1
    имя_раздела: MBR
    имя_файла: MBR
    is_download: правда
    тип: NORMAL_ROM
    linear_start_addr: 0x1400000
    физический_старт_адрес: 0x0
    размер_раздела: 0x80000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS2
    имя_раздела: EBR1
    имя_файла: EBR1
    is_download: правда
    тип: NORMAL_ROM
    linear_start_addr: 0x1480000
    физический_начальный_адрес: 0x80000
    размер_раздела: 0x80000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS3
    имя_раздела: PRO_INFO
    имя_файла: НЕТ
    is_download: ложь
    тип: НЕТ
    linear_start_addr: 0x1500000
    физический_начальный_адрес: 0x100000
    размер_раздела: 0x300000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ЗАЩИЩЕНО
    резерв: 0x00
    — индекс_раздела: SYS4
    имя_раздела: NVRAM
    имя_файла: НЕТ
    is_download: ложь
    тип: НЕТ
    linear_start_addr: 0x1800000
    физический_начальный_адрес: 0x400000
    размер_раздела: 0x500000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ДВОЙНОЙ РЕГИОН
    резерв: 0x00
    — индекс_раздела: SYS5
    имя_раздела: PROTECT_F
    имя_файла: НЕТ
    is_download: ложь
    тип: НЕТ
    linear_start_addr: 0x1d00000
    физический_начальный_адрес: 0x

    0

    размер_раздела: 0xa00000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ЗАЩИЩЕНО
    резерв: 0x00
    — индекс_раздела: SYS6
    имя_раздела: PROTECT_S
    имя_файла: НЕТ
    is_download: ложь
    тип: НЕТ
    linear_start_addr: 0x2700000
    физический_старт_адрес: 0x1300000
    размер_раздела: 0xa00000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ЗАЩИЩЕНО
    резерв: 0x00
    — индекс_раздела: SYS7
    имя_раздела: SECCFG
    имя_файла: НЕТ
    is_download: ложь
    тип: НЕТ
    linear_start_addr: 0x3100000
    физический_старт_адрес: 0x1d00000
    размер_раздела: 0x20000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: НЕВИДИМЫЙ
    резерв: 0x00
    — индекс_раздела: SYS8
    имя_раздела: UBOOT
    имя_файла: lk.ящик
    is_download: правда
    тип: NORMAL_ROM
    linear_start_addr: 0x3120000
    физический_старт_адрес: 0x1d20000
    размер_раздела: 0x60000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS9
    имя_раздела: BOOTIMG
    имя_файла: загрузка.изображение
    is_download: правда
    тип: NORMAL_ROM
    linear_start_addr: 0x3180000
    физический_старт_адрес: 0x1d80000
    размер_раздела: 0x1000000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS10
    имя_раздела: ВОССТАНОВЛЕНИЕ
    имя_файла: восстановление.изображение
    is_download: правда
    тип: NORMAL_ROM
    linear_start_addr: 0x4180000
    физический_старт_адрес: 0x2d80000
    размер_раздела: 0xc00000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS11
    имя_раздела: SEC_RO
    имя_файла: секрет.изображение
    is_download: правда
    тип: YAFFS_IMG
    linear_start_addr: 0x4d80000
    физический_начальный_адрес: 0x3980000
    размер_раздела: 0x600000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS12
    имя_раздела: MISC
    имя_файла: НЕТ
    is_download: ложь
    тип: НЕТ
    linear_start_addr: 0x5380000
    физический_старт_адрес: 0x3f80000
    размер_раздела: 0x80000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: НЕВИДИМЫЙ
    резерв: 0x00
    — индекс_раздела: SYS13
    имя_раздела: ЛОГОТИП
    имя_файла: логотип.ящик
    is_download: правда
    тип: NORMAL_ROM
    linear_start_addr: 0x5400000
    физический_старт_адрес: 0x4000000
    размер_раздела: 0x300000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS14
    имя_раздела: EBR2
    имя_файла: EBR2
    is_download: правда
    тип: NORMAL_ROM
    linear_start_addr: 0x5700000
    физический_начальный_адрес: 0x4300000
    размер_раздела: 0x80000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS15
    имя_раздела: EXPDB
    имя_файла: НЕТ
    is_download: ложь
    тип: НЕТ
    linear_start_addr: 0x5780000
    физический_начальный_адрес: 0x4380000
    размер_раздела: 0xa00000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: НЕВИДИМЫЙ
    резерв: 0x00
    — индекс_раздела: SYS16
    имя_раздела: ПРЕДВАРИТЕЛЬНАЯ ЗАГРУЗКА
    имя_файла: предварительная загрузка.изображение
    is_download: правда
    тип: YAFFS_IMG
    linear_start_addr: 0x6180000
    физический_старт_адрес: 0x4d80000
    размер_раздела: 0x12c00000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS17
    имя_раздела: ANDROID
    имя_файла: система.изображение
    is_download: правда
    тип: YAFFS_IMG
    linear_start_addr: 0x18d80000
    физический_начальный_адрес: 0x17980000
    размер_раздела: 0x40000000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS18
    имя_раздела: КЭШ
    имя_файла: кеш.изображение
    is_download: правда
    тип: YAFFS_IMG
    linear_start_addr: 0x58d80000
    физический_начальный_адрес: 0x57980000
    размер_раздела: 0x7e00000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS19
    имя_раздела: USRDATA
    имя_файла: данные пользователя.изображение
    is_download: правда
    тип: YAFFS_IMG
    linear_start_addr: 0x60b80000
    физический_старт_адрес: 0x5f780000
    размер_раздела: 0x60000000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: правда
    is_reserved: ложь
    тип_операции: ОБНОВЛЕНИЕ
    резерв: 0x00
    — индекс_раздела: SYS20
    имя_раздела: BMTPOOL
    имя_файла: НЕТ
    is_download: ложь
    тип: НЕТ
    linear_start_addr: 0xFFFF00a8
    физический_начальный_адрес: 0xffff00a8
    размер_раздела: 0x1500000
    регион: EMMC_USER
    хранилище: HW_STORAGE_EMMC
    border_check: ложь
    is_reserved: правда
    тип_операции: ЗАРЕЗЕРВИРОВАНО
    резерв: 0x00

    Вы не можете выполнить это действие в данный момент.Вы вошли в другую вкладку или окно. Перезагрузите, чтобы обновить сеанс.
    Вы вышли на другой вкладке или в другом окне. Перезагрузите, чтобы обновить сеанс.

    Как создать файл разброса для телефона MediaTek Android

    Создайте файл разброса для телефона MediaTek Android: Если вы используете любой Android-смартфон на базе MediaTek и хотите получить root-права или установить любое пользовательское ПЗУ или файлы модов, вам следует следовать этому руководству. Между тем, во время прошивки или рутирования устройства MediaTek вы можете обнаружить, что требуется «Scatter File».Это текстовый (.txt) файл, очень важный для завершения процесса установки. Здесь, в этом руководстве, мы поделимся с вами Как легко создать файл разброса для телефона MediaTek Android .

    Теперь вы можете спросить, что такое Scatter File и зачем он нужен? Мы кратко рассмотрели все необходимые детали. Посмотри.

    Что такое Scatter File txt?

    Scatter File — это файл .txt, который добавляет регионы на устройство Android с архитектурой MediaTek ARM.Он также содержит структуру устройства, карту памяти файла изображения и т. Д. В основном это требуется во время прошивки или рутирования вашего устройства MediaTek Android с помощью SP Flash Tool. Поэтому мы можем легко разблокировать или разблокировать устройство, выполнив несколько шагов.

    Как создать файл разброса для телефона MediaTek Android

    Чтобы создать файл scatter.txt, необходимо выполнить все предварительные требования, указанные ниже.

    Предварительные требования:

    • Ваше Android-устройство должно работать на базе MediaTek ARM Structure.
    • Требуется ПК с Windows и USB-кабель.
    • Загрузите и установите последнюю версию MTK Droid Tool.
    • Загрузите и установите USB-драйверы Android на свой компьютер.

    Выполнив все указанные требования, теперь вы можете создать файл разброса для телефона MediaTek Android.

    шага по созданию файла разброса для телефона MediaTek Android

    • После загрузки и установки файла MTK Droid Tool на ПК запустите и запустите его.
    • Теперь подключите устройство Android Mediatek к компьютеру с помощью USB-кабеля.
    • Убедитесь, что на вашем устройстве включена отладка по USB.
    • Вы увидите Device Info в MTK Droid Tool, просто нажмите на опцию Blocks Map .
    • Откроется новое окно. Нажмите кнопку Create Scatter .
    • Выберите каталог, в котором вы хотите сохранить файл Scatter, и нажмите Сохранить .
    • Готово.Наслаждаться!

    Мы надеемся, что вы успешно создали точечный файл для своего Android-устройства MediaTek.

    rootmygalaxy.net — один из ведущих технических блогов, созданный в 2014 году. Наши истории были подхвачены такими изданиями, как Forbes, Foxnews, Gizmodo, TechCrunch, Engadget, The Verge, GSMAreana и многими другими.