Вопрос восстановления CMU после неудачного обновления поднимался не один раз. Внесу свой вклад по изучению данного вопроса.
Стоить отдать должное всем кто ранее изучал данный вопрос, приведу некоторые источники:
1. www.2x4logic.com/jci-failsafe.html
2. yms.livejournal.com/3006373.html
3. mzdonline.wordpress.com/2…nnect-mission-impossible/
4. mazda3revolution.com/foru…reen-mzd.html#post2401643
5. www.drive2.ru/c/3110055/%C2%A0#_=_
Подход к восстановлению заключается в следующем:
- Разобрать CMU модуль.
- Найти микросхему SPI NOR Flash памяти — MX25L6445E
- Выгрузить из неё содержимое (сделать дамп)
- Подкорректировать полученный дамп
- Загрузить обратно исправленный дамп
- Повторить процедуру обновления с помощью USB-флешки
Что за микросхема SPI NOR Flash в CMU?
Это микросхема памяти на плате CMU, содержащая загрузчики, конфигурацию, прошивку Fail-Safe. Именно с неё начинается грузиться система.

Вблизи микросхема выглядит так:

Структура памяти микросхемы SPI NOR Flash

Небольшая цитата из первого источника:
Образ bootstrap соответствует образу Программы загрузочных устройств, задокументированному Freescale для i.MX6. В зависимости от состояния раздела boot-select он либо выполняет код из ibc1 (нормальная работа) или ibc2 (операция обновления, fail-safe).
Выполнение ibc1 приводит к загрузке системы в NAND-flash image (~ 5 ГБ памяти). Выполнение ibc2 переходит к выполнению 7-мегабайтного «отказоустойчивому» образа.
«Отказоустойчивое» изображение (Fail-Safe) — это то, что заставляет ЖК-дисплей отображать индикатор выполнения во время длительного процесса обновления. Он считывает образ обновления с USB-накопителя и перепрограммирует флэш-память NAND, а также встроенное ПО встроенных периферийных устройств.
Для пользователя обновление прошивки состоит из двух частей: «отказоустойчивая» (bootstrap, ibc2 и fail-safe) и приложение (ibc1, NAND-flash и периферийная прошивка).
Аргументация JCI была явно основана на (ошибочном) убеждении, что это сделало его отказоустойчивым, поскольку устройство будет загружаться только в ibc2 + безотказно до полного обновления прошивки. Однако, как всегда, дьявол кроется в деталях.
Подробней о байте по адресу 0x10000 (boot-select)
Если он равен 0xFF, то загружается основная система,
Если 0x00, то загружается fail-safe, чтобы после запустить обновление с USB-флешки.
Иногда достаточно поменять этот байт на 0x00 для перезапуска процесса обновления. Именно этот случай описан в источнике №4
Из выше приведенных источников было установлено, что файл обновление с окончанием _failsafe.up содержит искомые bootstrap, ibc2 и fail-safe.
Кстати, если кто не знал, то файлы обновления *.up ничто иное как запакованные zip-архивы.
Отсюда следует, что в случае повреждения bootstrap, ibc2 и fail-safe их можно восстановить в дампе, что и было проделано в источнике №2.

Для упрощения процесса извлечения прошивок из файлов обновления fail-safe и внедрения данных в дамп была написана небольшая утилита — Mazda Fail-Safe Extractor

Mazda Fail-Safe Extractor
Как это работает можете посмотреть на видео:
Как считать и записать микросхему памяти SPI NOR Flash:
Оборудование:
CH341A programmer: https://aliexpress.ru/item/32725360255.html
SOIC16 SOP16 Clip: https://aliexpress.ru/item/32956814786.html

PS:
Вот и первые отзывы: www.drive2.ru/l/523032459726553163/
Здравствуйте, скажите если при прошивке устройство стало кирпичем, машина будет на ходу? Можно ли ею пользоваться и ездить до того момента пока решится вопрос с ремонтом этой проблемы ? А это скорее всего несколько недель может быть.
Да, можно пользоваться авто. Просто вместо ГУ будет черный экран и будет только радио работать.
Where can I download .up files and test folder with the rom.bin you show in your mazda firmware exractor video? When I try to open my own .bin files it states the files are not 8mb.
You need to check the size of a dump file you dowloaded from SPI NOR.