- #1
Автор Темы
Разбираемся с FUSE, eFUSE, BROM Disabled и Anti-Rollback. Почему не помогают полная прошивка и замена дампа?
Приветствую, коллеги! В логах прошивочных программ мы то и дело натыкаемся на аббревиатуры: FUSE, eFUSE, BROM Disabled, SEC CTRL STATUS 0, Anti-Rollback (ARB). Многие проходят мимо, так и не поняв сути. А ведь именно эти вещи часто являются причиной "кирпичей" после, казалось бы, правильных манипуляций.
Давайте разложим по полочкам, что это такое и почему это так важно.
О чем все эти термины?
Коротко: все они относятся к системе безопасности, вшитой прямо в процессор (CPU) вашего аппарата. Это не часть прошивки в памяти UFS/eMMC. Это "прошивка" самого чипа, которая диктует, что можно, а что нельзя делать телефону: разрешить ли прошивку, запустить ли старую версию ПО, войти ли в аварийный режим BROM.
1. FUSE (Предохранитель) — что это?
Не путайте с физическим предохранителем! В мобильных процессорах это цифровая ячейка-флаг, которую CPU читает при каждой загрузке.
Она сообщает процессору:
· Какие режимы загрузки разрешены (например, BROM).
· Какая версия прошивки является минимально допустимой.
· Включена ли безопасная загрузка (Secure Boot).
Простая аналогия:
Представьте умный замок на двери. Вы можете сменить код (это как прошивка), но настройка "блокировать дверь через минуту после открытия" жёстко вшита в механизм и не меняется. FUSE — это и есть такое аппаратное правило.
2. eFUSE (Электронный предохранитель) — главный страж
Это развитие идеи FUSE. Ключевое свойство — eFUSE является OTP (One Time Programmable) — программируемым один раз.
Что это значит?
Производитель один раз меняет значение eFUSE — и его невозможно вернуть обратно.
· Не поможет перепрошивка.
· Не поможет форматирование UFS.
· Не поможет запись полного дампа.
· Не поможет сброс к заводским настройкам.
Простая аналогия:
Скретч-карта. Как только вы стираете защитный слой, обратно он не налезет. То, что проявилось, остаётся навсегда. Так работает eFUSE.
3. Почему не работают "Форматирование UFS" и "Запись полного дампа"?
Многие думают: "Сотру всё подчистую и запишу новую прошивку — устройство оживёт". Ошибка в том, что eFUSE находится не в памяти UFS, а внутри самого процессора.
Даже если вы полностью замените содержимое флеш-памяти, процессор при запуске первым делом спросит: "А что мне говорят мои eFUSE?" И если там стоит запрет — он просто не даст устройству загрузиться.
Простая аналогия:
Если банк заблокировал вашу карту на сервере, можно хоть поменять чип, хоть перекрасить пластик — карта останется нерабочей. Блокировка не в карте, а в системе. eFUSE — это такая "система" внутри процессора.
4. Anti-Rollback (ARB) — защита от отката
ARB — это один из самых частых eFUSE. В него записывается номер версии безопасности. Самое главное правило: этот номер можно только увеличить, но нельзя уменьшить.
Пример:
· В вашем телефоне в eFUSE записан ARB = 3.
· Вы пытаетесь прошить более старую прошивку, где ARB = 2.
· Процессор видит, что вы пытаетесь откатиться, и блокирует загрузку.
Телефон не сломан. Он просто следует правилу, вшитому в "железо".
Простая аналогия:
Если в правилах дома сказано, что минимальная версия операционной системы — Android 12, то установить Android 11 у вас не получится, как бы вы ни старались. Система просто откажется работать.
5. Что такое BROM Disabled?
BROM (Boot ROM) — это аварийный режим загрузчика, через который работают все прошивочные программы и боксы. В новых аппаратах производители стали отключать доступ к BROM через eFUSE.
Если этот eFUSE прошит, процессор навсегда отказывается входить в этот режим. Это нельзя исправить прошивкой или программными методами.
Простая аналогия:
Автопроизводитель наглухо отключает в машине "сервисный режим". Даже официальный дилер не сможет в него войти. BROM Disabled — это именно так.
6. Когда и как выставляются FUSE/eFUSE?
Обычно это происходит в ключевые моменты:
· Во время обновления прошивки по воздуху (OTA).
· При установки обновления безопасности.
· При первой загрузке после обновления.
· На этапе загрузки preloader/XBL/SBL.
Если смотреть логи UART, то как раз в них можно увидеть строки типа FUSE, SEC_CTRL, ARB Count, которые показывают, что процессор проверяет эти предохранители.
7. Что же можно сделать.
Изменить то, что записано в eFUSE, — НЕВОЗМОЖНО. Это нужно принять как факт.
Но вы МОЖЕТЕ:
1. Избегать несовместимой прошивки. Всегда проверяйте версию ARB прошивки, которую собираетесь ставить.
2. Понимать причину отказа. Теперь, когда телефон не грузится после отката, вы знаете, что виноват не "кривой дамп", а защита ARB.
3. Предотвращать "окирпичивание". Работая в рамках разрешенного eFUSE, вы не получите трудноустранимых последствий.
4. Использовать правильные инструменты для безопасной работы с разделами в обход ограничений (там, где это возможно).
Итог: eFUSE и другие предохранители — это стена, о которую можно биться, а можно просто её обойти, действуя по правилам. Удачи в ремонте
Приветствую, коллеги! В логах прошивочных программ мы то и дело натыкаемся на аббревиатуры: FUSE, eFUSE, BROM Disabled, SEC CTRL STATUS 0, Anti-Rollback (ARB). Многие проходят мимо, так и не поняв сути. А ведь именно эти вещи часто являются причиной "кирпичей" после, казалось бы, правильных манипуляций.
Давайте разложим по полочкам, что это такое и почему это так важно.
О чем все эти термины?
Коротко: все они относятся к системе безопасности, вшитой прямо в процессор (CPU) вашего аппарата. Это не часть прошивки в памяти UFS/eMMC. Это "прошивка" самого чипа, которая диктует, что можно, а что нельзя делать телефону: разрешить ли прошивку, запустить ли старую версию ПО, войти ли в аварийный режим BROM.
1. FUSE (Предохранитель) — что это?
Не путайте с физическим предохранителем! В мобильных процессорах это цифровая ячейка-флаг, которую CPU читает при каждой загрузке.
Она сообщает процессору:
· Какие режимы загрузки разрешены (например, BROM).
· Какая версия прошивки является минимально допустимой.
· Включена ли безопасная загрузка (Secure Boot).
Простая аналогия:
Представьте умный замок на двери. Вы можете сменить код (это как прошивка), но настройка "блокировать дверь через минуту после открытия" жёстко вшита в механизм и не меняется. FUSE — это и есть такое аппаратное правило.
2. eFUSE (Электронный предохранитель) — главный страж
Это развитие идеи FUSE. Ключевое свойство — eFUSE является OTP (One Time Programmable) — программируемым один раз.
Что это значит?
Производитель один раз меняет значение eFUSE — и его невозможно вернуть обратно.
· Не поможет перепрошивка.
· Не поможет форматирование UFS.
· Не поможет запись полного дампа.
· Не поможет сброс к заводским настройкам.
Простая аналогия:
Скретч-карта. Как только вы стираете защитный слой, обратно он не налезет. То, что проявилось, остаётся навсегда. Так работает eFUSE.
3. Почему не работают "Форматирование UFS" и "Запись полного дампа"?
Многие думают: "Сотру всё подчистую и запишу новую прошивку — устройство оживёт". Ошибка в том, что eFUSE находится не в памяти UFS, а внутри самого процессора.
Даже если вы полностью замените содержимое флеш-памяти, процессор при запуске первым делом спросит: "А что мне говорят мои eFUSE?" И если там стоит запрет — он просто не даст устройству загрузиться.
Простая аналогия:
Если банк заблокировал вашу карту на сервере, можно хоть поменять чип, хоть перекрасить пластик — карта останется нерабочей. Блокировка не в карте, а в системе. eFUSE — это такая "система" внутри процессора.
4. Anti-Rollback (ARB) — защита от отката
ARB — это один из самых частых eFUSE. В него записывается номер версии безопасности. Самое главное правило: этот номер можно только увеличить, но нельзя уменьшить.
Пример:
· В вашем телефоне в eFUSE записан ARB = 3.
· Вы пытаетесь прошить более старую прошивку, где ARB = 2.
· Процессор видит, что вы пытаетесь откатиться, и блокирует загрузку.
Телефон не сломан. Он просто следует правилу, вшитому в "железо".
Простая аналогия:
Если в правилах дома сказано, что минимальная версия операционной системы — Android 12, то установить Android 11 у вас не получится, как бы вы ни старались. Система просто откажется работать.
5. Что такое BROM Disabled?
BROM (Boot ROM) — это аварийный режим загрузчика, через который работают все прошивочные программы и боксы. В новых аппаратах производители стали отключать доступ к BROM через eFUSE.
Если этот eFUSE прошит, процессор навсегда отказывается входить в этот режим. Это нельзя исправить прошивкой или программными методами.
Простая аналогия:
Автопроизводитель наглухо отключает в машине "сервисный режим". Даже официальный дилер не сможет в него войти. BROM Disabled — это именно так.
6. Когда и как выставляются FUSE/eFUSE?
Обычно это происходит в ключевые моменты:
· Во время обновления прошивки по воздуху (OTA).
· При установки обновления безопасности.
· При первой загрузке после обновления.
· На этапе загрузки preloader/XBL/SBL.
Если смотреть логи UART, то как раз в них можно увидеть строки типа FUSE, SEC_CTRL, ARB Count, которые показывают, что процессор проверяет эти предохранители.
7. Что же можно сделать.
Изменить то, что записано в eFUSE, — НЕВОЗМОЖНО. Это нужно принять как факт.
Но вы МОЖЕТЕ:
1. Избегать несовместимой прошивки. Всегда проверяйте версию ARB прошивки, которую собираетесь ставить.
2. Понимать причину отказа. Теперь, когда телефон не грузится после отката, вы знаете, что виноват не "кривой дамп", а защита ARB.
3. Предотвращать "окирпичивание". Работая в рамках разрешенного eFUSE, вы не получите трудноустранимых последствий.
4. Использовать правильные инструменты для безопасной работы с разделами в обход ограничений (там, где это возможно).
Итог: eFUSE и другие предохранители — это стена, о которую можно биться, а можно просто её обойти, действуя по правилам. Удачи в ремонте
Последнее редактирование: