Универсальная утилита для чтения/записи flash-чипов - [flashrom]

Наиболее универсальная утилита для прошивки Flash ROM чипов в Linux и DOS - FlashROM:

Скачать актуальную версию для DOS: ra.openbios.org/~idwer/flashrom/dos


Скачать исходники:

Прикрепляю zip архив со свежей версией flashrom rom.by/files/flashrom_0.zip (периодически обновляется)

Особенности программы:

  • 300 семейств чипов flash ROM а также их варианты.
  • 220 поддерживаемых чипсетов
  • 401 поддерживаемых материнских плат
  • Parallel, LPC, FWH и SPI интерфейсы.
  • Поддержка прошивки на плате и внешних программаторов.
  • Flash chip package agnostic. DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32, TSOP40, TSOP48 and more have all been verified to work.
  • Специальный код включения прошивки для нестандартных материнских плат.
  • 50 PCI устройства, 9 USB, 1 параллельное устройство и все программаторы основанные на последовательном интерфейсе могут быть перепрошиты или использованы для перепрошивки.
  • Нет необходимости в физическом доступе. Доступа администратора достаточно для поддержки встроенных и PCI программаторов, прав пользователя достаточно для USB и основанных на последовательном интерфейсе программаторов.
  • Не нужны загрузочные дискеты, CD-ROM или флешки.
  • Не нужна клавиатура или монитор. Просто перепрошивайтесь через SSH.
  • Не нужна перезагрузка. Перепрошивайте ROM в запущенной системе, проверяйте правильность записи, радуйтесь жизни. Новый BIOS будет доступен в следующий раз.
  • "Горячая" перепрошивка.
  • Возможность использования в скриптах.
  • Скорость. flashrom намного быстрее чем программы от производителя.
  • Поддержка Linux, FreeBSD, NetBSD, DragonFly BSD, Nexenta, Solaris, Mac OS X и а DOS, частичная поддержка Windows (нет встроенных/PCI программаторов).

поддерживаемые устройства и чипы можно посмотреть командой "flashrom -L"

Спасибо всем, кто помогал проекту все эти годы.
Домашняя страница проекта flashrom.org/



Наиболее значимые улучшения в последней версии:
===== 0.9.6.1 =====
Указание программатора (может быть встроенный) теперь необхожимо явно с помощью опции -p
Опция записи логов -o
Проверка на дупликаты опций -i
===== 0.9.5 =====
Добавлена поддержка:
FTDI FT2232-based: Dangerous Prototypes Bus Blaster, TIAO/DIYGADGET USB Multi-Protocol Adapter (TUMPA), GOEPEL PicoTAP
Rayer-compatible: Xilinx parallel III (DLC5)
Linux SPI интерфейс (spidev)
AMD Hudson
Intel Tunnelcreek
RDC R6030 чипсет (bifferboard, в составе Vortex86)
Добавлена технология Intel Hardware Sequencing blogs.coreboot.org/blog/2011/06/11/gsoc-2011-flashrom-part-1/
Поддержка SPI в serprog, ускорение работы в dediprog
Начальная поддержка архитектур PPC, ARM
При вызове с флагом -LV печатает поддерживаемый вольтаж для всех чипов
Три уровня сообщений -V, -VV и -VVV
===== 0.9.4 =====
Добавлена поддержка:
OpenMoko Neo1973/Neo FreeRunner - отладочная плата версий 2 или 3 (FTDI FT2232-based (r1231))
Olimex ARM-USB-TINY, ARM-USB-TINY-H, ARM-USB-OCD, b ARM-USB-OCD-H, FTDI FT2232-based (r1331)
Open Graphics Project development card, OGD1 (r1241)
Angelbird Wings PCIe SSD/88SX7042 (r1258)
ITE IT85xx embedded controllers (r1262)
Intel NIC (r1297)
Множество новых чипов, чипсетов и материнских плат.
Улучшено взаимодествие с пользователем
Улучшена поддержка Dediprog SF100
Добавлен пакет для Mac OS X (с помощью DirectHW)
Улучшено отображение статуса разблокировки и защиты флеш-чипа.
Улучшена поддержка как payload для coreboot
Поддержка более одного Super I/O или EC на одном компьютере
Всегда проверяется читабельность чипа перед записью
Добавлена поддержка записи на NVIDIA MCP6x/MCP7x.
Добавлена поддержка эмуляции SPI флешек
Исправление множества ошибок и улучшения кода.
===== 0.9.3 =====
Поддержка новых материнских плат, чипсетов и чипов flash ROM.
Поддержка Dr. Kaiser PC-Waechter PCI устройств (FPGA).
Поддержка прошивки SPI чипов через Bus Pirate.
Поддержка программатора Dediprog SF100.
Выборочная блочная очистка для всех видов чипов flash ROM.
Автоматическая разблокировка.
Поддержка программаторов выбираема на этапе компиляции.
Автоматическое определение чипов flash ROM.
Возможности материнской платы определяются автоматически.
Определение материнской платы через DMI.
Определение ноутбуков предотвращает их порчу.
Поддержка тестового режима для всех операций.
Поддержка в Windows USB и последовательных внешних программаторов.
Поддержка NetBSD.
Поддержка DOS.
Изменены опции командной строки. Подробнее в помощи к программе.
Поддержка некоторых видеокарт NVIDIA.
Генерация процедур для тестирования новых чипов.
Поддержка bit-banging SPI.
Поддержка чипсетов Nvidia MCP6*/MCP7*.
Поддержка Highpoint ATA/RAID контроллеров.

Полный перечень поддерживаемых устройств в файле rom.by/files/list.txt (сгенерирован командой flashrom -L)

ВложениеРазмер
pciutils-3.1.7-DOS.rar122.34 КБ
list.txt58.34 КБ
flashrom-0.9.4.zip163.45 КБ

А что тут непонятного? Человек предлагает написать программу, которая позволит запустить виртуальную машину с BIOS на определённой микросхеме. Например у вас стационарный компьютер Acer с 1 МБ микросхемой BIOS и вам нужно получить дамп для 8 МБ микросхемы BIOS ноутбука Toshiba для прошивки на программаторе. А у вас есть только утилита для прошивки и сама прошивка в виде fd-файла, скачанные со странички поддержки данной модели ноутбука. Конвертация fd-файла в бинарник пригодный для прошивки на программаторе довольно сложная задача. А так вы запускаете в этой виртуальной машине прошивку эмулируемой 8 МБ микросхемы BIOS и без проблем получаете нужный вам бинарник.

ну так надо делать бекап до того как она испортиться.

а поддержка сетевых карт Marvel ожидаеца?

а у то у меня она бесхозная на матплате болтается, я хочу в нее прошить прошивку для загрузки по сети по хттп протоколу
s56.radikal.ru/i154/1205/55/ec0e74faaf8b.jpg

Аватар пользователя XVilka

bomz: нужен стандартный набор данных: lscpi/rom image, etc для этой карты
-----------------------------------------------------------------------------
Rom: для EasyPro нужны сниффы USB - идеально, если получится завести винду в VirtualBox/QEMU и пробросить USB, дамп снять утилитой Wireshark. Или напрямую из винды с помощью USBSnoop (нежелательный вариант). Нужны сниффы:
1) Включение и выключение прибора


2) Определения чипов, переходы в разные режимы
3) Чтение чипов
4) Стирание чипов
5) Запись чипов
6) Дополнительные, по-желанию

Дампы желательны для нескольких чипов, разных - LPC, SPI, etc
Прошу прощения, что все так затянулось, но времени мало остается на проект. Надеюсь на понимание.
-----------------------------------------------------------------------------
По-поводу эмуляции флеш-чипов - она есть. В flashrom есть поддержка (dummy) эмуляции нескольких чипов, а в qemu есть поддержка CFI через параметр -pflash. Мы хотели реализовать полноценную эмуляцию еще LPC/FWH/SPI в qemu, но что-то не срослось (пока). Если есть желание - берите код из flashrom, интегрируйте в qemu, присылайте патчи.

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

ps насчет марвел карты облом: там флеш чипа нету видимо вообще, он как бы отзывается но в него ничего не пишется а читаются нулики, прошивка для загрузки по сети этой карты встроена в биос матплаты

Проект еще живой ? =). Я все бьюсь над откатом биоса на MSI windpad 110w. Так и не могу вопрос решить. Писал flashrom суппорт. Ответ не получил. Возможна ли поддержка MX25L1606E ?

Аватар пользователя XVilka

Да, конечно, живой! И активно развивающийся! Что за flashrom support? Надо писать на . Да, конечно.

Цитата:
Надо писать на .
так вот туда то я и писал. Неделя уж прошла. Писал: Мол так и так .. такой то аппарат ... такой то биос (оба биоса приложил)... такой то чип... хочу откатится.....не могу... вы самые лучшие ..помогите.

Цитата:
Flashrom related mails are welcome on the flashrom mailing list at . Please do NOT send any BIOS images or F segment dumps to the list! Please note that the list is moderated for non-subscribers and we recommend to subscribe first.

Похоже смодерировали меня =((

Аватар пользователя XVilka

Да, потому что я не видел в рассылке этого сообщения - надо послать еще раз, только используя ссылки и paste.flashrom.org для загрузки логов и образа bios.

Отправил. Спасибо за помощь.
Правда сообщение отправил в этот раз на русском. Надеюсь, что все получится :)

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • You can use BBCode tags in the text. URLs will automatically be converted to links.

Подробнее о форматировании текста

Антибот - введите цифру.
Ленты новостей