Универсальная утилита для чтения/записи 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 КБ
Аватар пользователя XVilka

bomz: этот чип точно поддерживается flashrom: см вывод команды flashrom -L

Если что-то не работает - логи в студию

да есть но мне не удалось ниче сделать - пишет неправильно PCI устройства чета типа такого. но я вполне возможно неправильно строку набирал, тут хелп такой куцый, что я сначала вообще не рискнул ей чета делать и стал на унифлеш напирать. щас на виртуалке потыкался вроде что то в принципе получается. как лог сделать не знаю. подскажи что в строку набить:
BUS 02 DEV 0B FUNCTION 00h Vendor 8086h DEV 1229
текс а надо было в шестнадцатиричном или в десятиричном формате устройство указывать?

но вообще хоть чип и поддерживается из писиай устройств она только гигабитные карты поддерживает, а у меня Intel 82557/82558/82559 EtherExpress PRO/100B Adapter

Цитата:

Supported devices for the nicintel_spi programmer:

PCI devices:
Intel 82571EB Gigabit Ethernet Controller [8086:105e]
Intel 82541PI Gigabit Ethernet Controller [8086:107c]
Intel 82572EI Gigabit Ethernet Controller [8086:10b9]

главное на материнке биос не стереть и самое главное в видео карте.
у меня версий несколько какая последняя непонятно набивал чета типа
flashrom -r intel.rom -p nicintel_spi:pci=02:11.0
ERROR: No supported PCI device found
сейчас попробовал и так 02:0B.0

блин у меня такая Realtek RTL8139 Family PCI Fast Ethernet NIC сетевая карта есть, а в ней чипа нет. только краватка или как её

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

правильно в шестнадцатеричном виде. Если не работает - нужны полные логи
lspci -nnvvvxxxx и flashrom -VV

lspci -nnvvvxxxx - что вот это означает не с первого раза, но понял. а вот что это еще не понял flashrom -VV

flashrom -r INTEL.ROM -p nicintel_spi:pci=02:0B.0 -VV>LOG.LOG

Цитата:

flashrom v0.9.3-r1250 on MS-DOS 8 (i786), built with libpci 3.1.5, GCC 4.3.2, little endian
flashrom is free software, get the source code at flashrom.org

Calibrating delay loop... OS timer resolution is 50000 usecs, 1589M loops per second, 10 myus = 0 us, 100 myus = 0 us, 1000 myus = 0 us, 10000 myus = 0 us, 200000 myus = 220000 us, OK.


Initializing nicintel_spi programmer

ERROR: No supported PCI device found
ну я бы не сказал что карта редкая, очень даже наоборот. я вот даже купил ее вместо реалтека, хотя тоже карта нормальная roll

ВложениеРазмер
LSPCI.zip 2.83 КБ
Аватар пользователя XVilka

flashrom -VV -r intel.rom -p nicintel_spi:pci=02:ob.0

порядок роль играл? а то я тут гляжу играет роль заглавные незаглавные буквы, а без параметров написано она пытаетсяя что то прожечь
спасибо тебе, даже если ниче не получица я все равно очен рад. :)

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

делал на 8-ом "голом досе". это которые создается загрузочная дискетка под ХП. образ с досом запускал GRUB-ом без мапинья в память - с диска то есть. восьмой дос без менеджеров памяти видит всю память и поддерживает прерывания XMS. HIMEM.SYS под него в принципе не ставится и соответсвенно с UMA он не работает

это родной интеловский прошивальщик и две прошивки, та которая сразу была и обновленная - пока экспериментировал обновил заодно. никогда не пробовал ставить ниче по сети
BOOTUTIL -nic=1 -restoreimage -file=INTEL.ROM
без XMS памяти он не работает - разжатый упсом весит 1.44 мб

ВложениеРазмер
BootUtil.zip 515.65 КБ
Аватар пользователя XVilka

Кстати логов самого flashrom я так и не дождался:)

я думал, что это логи.

Цитата:

flashrom -r INTEL.ROM -p nicintel_spi:pci=02:0B.0 -VV>LOG.LOG

flashrom v0.9.3-r1250 on MS-DOS 8 (i786), built with libpci 3.1.5, GCC 4.3.2, little endian
flashrom is free software, get the source code at flashrom.org

Calibrating delay loop... OS timer resolution is 50000 usecs, 1589M loops per second, 10 myus = 0 us, 100 myus = 0 us, 1000 myus = 0 us, 10000 myus = 0 us, 200000 myus = 220000 us, OK.
Initializing nicintel_spi programmer

ERROR: No supported PCI device found

щас так попробую
flashrom -VV>LOG.LOG

тоже самое в принципе

Цитата:

flashrom v0.9.3-r1250 on MS-DOS 8 (i786), built with libpci 3.1.5, GCC 4.3.2, little endian
flashrom is free software, get the source code at flashrom.org

Calibrating delay loop... OS timer resolution is 50000 usecs, 1589M loops per second, 10 myus = 0 us, 100 myus = 0 us, 1000 myus = 0 us, 10000 myus = 0 us, 200000 myus = 220000 us, OK.


Initializing internal programmer
No coreboot table found.

DMI pipe open error

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

Вот прикрепляю модифицированные исходники с тестовой поддержкой этой карты.

ВложениеРазмер
flashrom.7zip 146.68 КБ

а чем компилировать? у меня из С только ТСС есть

так будет??? модуль появился - nicintel
flashrom -r INTEL.ROM -p nicintel:pci=02:0B.0

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

Содержание этого поля является приватным и не предназначено к показу.
  • Разрешённые 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.

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

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