Автор: ROMby Unknown , 24 августа 2012
Здравствуйте.
Возникла необходимость разобраться в принципах работы Embedded Controller'а (EC) встроенного в ноутбук Dell Latitude E5500. Модель EC: SMSC MEC5035-NU.

Из BIOS ноутбука была выдрана прошивка этого контроллера. Судя по всему, это код под 8051-й МП.
Даташиты или другую полезную информацию об этом контроллере найти не удалось, из за этого разобраться в его прошивке с помощью дизассемблера очень сложно. Кто-нибудь работал с этим контроллером?


С учетом деструктивной деятельности автора (hvmetal) удалил его авторство в данной теме и восстановил сообщения.
maco
Содержимое данного поля является приватным и не предназначено для показа.

BBCode

  • HTML-теги не обрабатываются и показываются как обычный текст
  • You may use the following BBCode tags:
    • [align]
    • [b]
    • [code]
    • [color]
    • [font]
    • [hr]
    • [i]
    • [img]
    • [list]
    • [quote]
    • [s]
    • [size]
    • [spoiler]
    • [sub]
    • [sup]
    • [table]
    • [u]
    • [url]
  • Адреса веб-страниц и email-адреса преобразовываются в ссылки автоматически.
Не могу сказать однозначно. Могу лишь описать процесс её извлечения.

С официального сайта скачан файл E5500A17.exe - утилита для обновления всего BIOS.

Способ 1.
Запуск утилиты с параметром -writekromfile. В результате запуска появится бинарный файл объёмом около 160 КБ (именно тот, что я выкладывал выше). Это и есть прошивка EC.

Способ 2.
Прогнать утилиту через phoenixtools.
Один из распакованных модулей будет идентичен бинарному файлу полученному способом 1.

Я понял, что извлечённый бинарник является прошивкой EC потому, что:
1) если его открыть в Иде выбрав систему команд процессора Intel 8051 (EC это 8051 совместимый микроконтроллер), то при разборе сразу видны участки кода, соответствующие тому что должно быть в подобном коде (обработчики прерываний согласно архитектуре 8051 и т.п.). Т.е. получается логически связанный и обоснованный код;
2) так сказать по контексту: в конце файла есть множество всяких текстовых строк, которые представляют собой идентификаторы производителей батарей, еще какой то лабуды связанной с ACPI, строки с отладочной информацией и т.п..