Меню Рубрики

Flashrom linux как пользоваться

Обновление BIOS из под Ubuntu 10.10. Весь процесс от начала и до конца.

BIOS (базовая система ввода/вывода), позволяющая операционным системам и оборудованию корректно взаимодействовать друг с другом, присутствует в каждом современном компьютере и располагается в чипе на материнской плате.

Чтобы узнать версию BIOS , выполните в Ubuntu следующую команду:

$ sudo dmidecode -s bios-version

Чтобы посмотреть дату релиза BIOS вашего компьютера , выполните команду:

$ sudo dmidecode -s bios-release-date

04/09/2009

Узнаем марку нашей материнской платы :

$ sudo dmidecode —type baseboard

Handle 0x0002, DMI type 2, 8 bytes

Base Board Information

Manufacturer: Gigabyte Technology Co., Ltd.

Product Name: GA-MA770-UD3

Как видим в моем случаем материнская плата фирмы Gigabyte. Заходим на официальный сайт и смотрим есть ли обновления для моего биоса. Оказывается я давненько не следил за обновлениями: у меня самый первый релиз.

Для обновления версии Биоса из под Операционной системы Ubuntu понадобится следующая утилита: — flashrom.

$ sudo aptitude search flashrom

p flashrom — Identify, read, write, erase, and verify BIOS/ROM/flash chips

$ sudo aptitude install flashrom

Перед записью новой прошивки в БИОС, желательно сохранить старую версию , то есть скопировать прошивку, которая уже прошита в БИОСе, чтобы потом можно было легко восстановить все обратно:

/bios$ sudo flashrom -r bios_fa_09_04_2009.bin

Смотрим информация по нашему файлу:

/bios$ file bios_fa_09_04_2009.bin

Скачав последнюю версию Биоса обнаруживаем, что программа предназначена под операционную систему Windows, исправив это воспользуемся пакетом эмуляции wine, он поможет распаковать исполняемый файл.

Где файл MA77UD32.FKd — и есть сама прошивка с официального сайта (на сайте расположены exe-файлы, но это всего лишь SFX-RAR архив с самой прошивкой и программой-флэшером для ДОСа).

Записываем скачанную прошивку в Биос на свой собственный риск:

/bios$ sudo flashrom -w MA77UD32.FKd

flashrom v0.9.2-r1028 on Linux 2.6.35-32-generic (x86_64), built with libpci 3.0.0, GCC 4.4.4, little endian

flashrom is free software, get the source code at http://www.flashrom.org

Calibrating delay loop… OK.

No coreboot table found.

Found ITE Super I/O, id 8720

Found chipset «AMD SB700/SB710/SB750», enabling flash write… OK.

This chipset supports the following protocols: LPC,FWH,SPI.

Found chip «Macronix MX25L8005» (1024 KB, SPI) at physical address 0xfff00000.

This flash part has status UNTESTED for operations: ERASE

The test status of this chip may have been updated in the latest development

version of flashrom. If you are running the latest development version,

please email a report to flashrom@flashrom.org if any of the above operations

work correctly for you with this flash part. Please include the flashrom

output with the additional -V option for all operations you tested (-V, -Vr,

-Vw, -VE), and mention which mainboard or programmer you tested.

Thanks for your help!

Flash image seems to be a legacy BIOS. Disabling checks.

Writing flash chip… Erasing flash before programming… Erasing flash chip… SUCCESS.

Programming flash done.

Verifying flash… VERIFIED.

Теперь можно перезагрузиться с новым биосом .

Хм, после перезагрузки отказала мышка (USB), клавиатура (USB), выходом пока почему, так получилось буду разбираться, а пока поставил работать мышь и клавиатуру через переходники PS/2 на usb.

В ходе анализ экрана самотестирования устройств при загрузки и логов системы, причиной не работающих устройств подключенных к USB оказалось, что в БИОСЕ была отключена поддержка.

Включаем поддержку через BIOS:

Перезагружаем компьютер, F2Integrated PeripheralsUSB Controllers было DISABLED. Включаю :

USB Controllers — Enable

USB Legacy Function — Enable

USB Storage Funtion — Enable

Смотрим версию биоса и дату после обновления:

/bios$ sudo dmidecode -s bios-version && sudo dmidecode -s bios-release-date

Таким вот образом можно пере прошивать БИОС из под нашей системы Ubuntu. На этом всё. А пока обновлю на предыдущий релиз.

Используйте прокси ((заблокировано роскомнадзором, используйте vpn или proxy)) при использовании Telegram клиента:

Поблагодари автора и новые статьи

будут появляться чаще 🙂

Карта МКБ: 4432-7300-2472-8059
Yandex-деньги: 41001520055047

Большое спасибо тем кто благодарит автора за практические заметки небольшими пожертвованиями. С уважением, Олло Александр aka ekzorchik.

Источник

Прошиваем BIOS из линукса

столкнулся с такой проблемой.
шеф дал ноут, который принес из сервиски.
грит, поставь вынь.
ставлю вынь — не хочет ибо установщик не находит хард, который есть sata.
в сервиске биос поставили старый, без поддержки usb что сильно зарудняет работу и возможности определения в ручную типа соединения харда.
через диск биос не обновить ибо в досе он не видит привод почемуто.
но вот линь поставился на ура и все увидел(хотя usb все таки проигнорировал)
ноут Acer Aspire 5110
пришла мысля поставить линь и через него прошить bios.
порылся в и-нете и наткнулся на статью.
думаю пригодиться.

Для прошивания БИОСа в линуксе требуется только две вещи — сама прошивка БИОСа и программа, которая будет этот самый БИОС прошивать. Программу можно скачать в исходниках отсюда: http://openbios.info/FlashRom или же в Debian-based (например в Ubuntu) дистрибутивах поставить с помощью APT:

#apt-get install flashrom

Перед записью новой прошивки в БИОС, желательно сохранить старую версию, то есть скопировать прошивку, которая уже прошита в БИОСе, чтобы потом можно было легко восстановить все обратно:

#flashrom -r MyBIOS.bin

Где MyBIOS.bin — это имя файла, в который сохранится старая версия прошивки. После сохранения, можно уже на свой страх и риск записывать скачанную прошивку в БИОС:

#sudo flashrom -w NewBIOS.bin

Где NewBIOS.bin — это имя скачанной прошивки. Также, можно добавить ключ -v чтобы программа проверила записанную прошивку и еще можно добавить ключ -V чтобы вывод работы был более информативным:

#sudo flashrom -Vvw NewBIOS.bin

С остальными же ключами можно ознакомиться с помощью —help

$flashrom —help

На примере была испытана материнская плата GIGABYTE GA-965P-DQ6 rev2.0 с Ubuntu 8.04 GNU/Linux на борту
FlashRom при первом запуске без ключей показал вот такую информацию:

[email protected]:

/temp$ sudo flashrom
[sudo] password for krik:
Calibrating delay loop. OK.
No coreboot table found.
Found chipset «Intel ICH8/ICH8R», enabling flash write. OK.
Found chip «Macronix MX25L8005» (1024 KB) at physical address 0xfff00000.
Found chip «Macronix unknown Macronix SPI chip» (0 KB) at physical address 0x0.
Multiple flash chips were detected: MX25L8005 unknown Macronix SPI chip
Please specify which chip to use with the -c option.

На материнской плате установлено два чипа BIOS. Один главный, второй — запасной (в случае повреждения первого, прошивка восстанавливается со второго). Флэшер нашел оба этих чипа и предложил выбрать, который использовать. Чтобы выбрать чипсет — надо использовать ключ -c. Для этой материнской платы, чтобы прочитать уже стоящею прошивку БИОСа в файл, пришлось запустить ее с такими параметрами:

/temp$ sudo flashrom -r MyBIOS.bin -c MX25L8005

Где MyBIOS.bin — это файл, куда сохранялась прошивка, а MX25L8005 — выбранный чипсет. После того, как прошивка была забекапена, можно уже приступать непосредственно к записи новой прошивки, которую можно скачать для этой материнской платы отсюда — http://www.gigabyte.ru/products/mb/bios/ga-965p-dq6_20.html но перед записью прошивки в БИОС можно проверить, ту ли прошивку вы скачали — достаточно сравнить размер MyBIOS.bin и 965PDQ6.12K или открыть оба файла в hex-редакторе и сравнить начало и конец. Если все в порядке, приступаем:

/temp$ sudo flashrom -Vvw -c MX25L8005 965PDQ6.12K

Где файл 965PDQ6.12K — и есть сама прошивка с официального сайта (на сайте расположены exe-файлы, но это всего-лишь SFX-RAR архив с самой прошивкой и программой-флэшером для ДОСа). Теперь можно перезагрузиться с новым биосом.
Настройки NVRAM (CMOS)

Источник

Используем flashrom

Сборка flashrom под ARM на примере OrangePi One

Для прошивки SPI Flash можно пользоваться специализированными программаторами но при отсутствии таковых можно применить случайно оказавшийся под рукой микрокомпьютер с Linux на борту. Например OrangePi One с Armbian или RaspberryPi.

Подключение

Внимание! все соединения необходимо производить при отключенном питании.

Так что сделаем это заранее.

TODO Здесь должно быть фото

TODO А здесь табличка

Сборка

Качаем свежие исходники flashrom. На данный момент это версия 0.9.9.

Распаковываем полученный файл:

В armbian уже установлен компилятор, так что можем сразу запустить сборку:

Параметры указывают не использовать PCI и USB программаторы.

Если же поддержка USB программаторов нужна, то предварительно установим библиотеку для работы с USB:

И библиотеку для работы с устройствами на базе FTDI если ваш программатор основан на этой микросхеме:

В случае успеха у нас появится бинарный файл.

Прошивка

Для начала проверим видит ли программатор подключённый чип.

TODO запись

На сладкое

Во flashrom наконец добавили поддержку “народного” программатора на базе микросхемы CH341A

К сожалению поддерживается только SPI но не I2C.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Mac cursors os x
  • Mac carbon copy cloner mac os
  • Mac blu ray player mac os
  • Mac app store для mac os
  • Mac address change mac os