Здравствуйте.
Возникла необходимость разобраться в принципах работы Embedded Controller'а (EC) встроенного в ноутбук Dell Latitude E5500. Модель EC: SMSC MEC5035-NU.
Из BIOS ноутбука была выдрана прошивка этого контроллера. Судя по всему, это код под 8051-й МП.
Даташиты или другую полезную информацию об этом контроллере найти не удалось, из за этого разобраться в его прошивке с помощью дизассемблера очень сложно. Кто-нибудь работал с этим контроллером?
С учетом деструктивной деятельности автора (hvmetal) удалил его авторство в данной теме и восстановил сообщения.
maco
Не могу сказать однозначно. Могу лишь описать процесс её извлечения.
С официального сайта скачан файл E5500A17.exe - утилита для обновления всего BIOS.
Способ 1.
Запуск утилиты с параметром -writekromfile. В результате запуска появится бинарный файл объёмом около 160 КБ (именно тот, что я выкладывал выше). Это и есть прошивка EC.
Способ 2.
Прогнать утилиту через phoenixtools.
Один из распакованных модулей будет идентичен бинарному файлу полученному способом 1.
Я понял, что извлечённый бинарник является прошивкой EC потому, что:
1) если его открыть в Иде выбрав систему команд процессора Intel 8051 (EC это 8051 совместимый микроконтроллер), то при разборе сразу видны участки кода, соответствующие тому что должно быть в подобном коде (обработчики прерываний согласно архитектуре 8051 и т.п.). Т.е. получается логически связанный и обоснованный код;
2) так сказать по контексту: в конце файла есть множество всяких текстовых строк, которые представляют собой идентификаторы производителей батарей, еще какой то лабуды связанной с ACPI, строки с отладочной информацией и т.п..
Отправить комментарий