From flashrom
Revision as of 12:11, 31 December 2017 by Nico (talk | contribs) (rewrite /dev/mem trouble section)
Jump to: navigation, search

flashrom doesn't work on my board, what can I do?

  • First of all, check if your chipset, ROM chip, and mainboard are supported (see Supported hardware, or use flashrom -L).
  • If your board has a jumper for BIOS flash protection (check the manual), disable it.
  • Should your BIOS menu have a BIOS flash protection option, disable it.
  • If you run flashrom on a Linux system with kernels >= 2.6.27 there are two issues you have to check:
    • See next question: X86_PAT and nopat
    • See next question: CONFIG_STRICT_DEVMEM
  • If you run flashrom on OpenBSD, you might need to obtain raw access permission by setting securelevel=-1 in /etc/rc.securelevel and rebooting, or rebooting into single user mode.
  • See this page for instructions on how to test flashrom support properly (this may be risky, make sure you have a working backup flash chip).

What can I do about /dev/mem errors?

  • If flashrom tells you '/dev/mem mmap failed: Operation not permitted':
    • Most common at the time of writing is a Linux kernel option, CONFIG_IO_STRICT_DEVMEM, that prevents even the root user from accessing hardware from user-space. Try again after rebooting with iomem=relaxed in your kernel command line.
    • Some systems with incorrect memory reservations (e.g. E820 map) may have the same problem even with CONFIG_STRICT_DEVMEM. In that case iomem=relaxed in the kernel command line may help too.
  • If it tells you '/dev/mem mmap failed: Resource temporarily unavailable':
    • This may be an issue with PAT (e.g. if the memory flashrom tries to map is already mapped in an incompatible mode). Try again after rebooting with nopat in the kernel command line.
  • If you see this message 'Can't mmap memory using /dev/mem: Invalid argument':
    • Your flashrom is very old, better update it. If the issue persists, try the kernel options mentioned above.
  • Generally, if your version of flashrom is very old, an update might help. Flashrom has less strict requirements now and works on more systems without having to change the kernel.

How do I use flashrom?

Please see the flashrom(8) manpage.

Is there a flashrom Live CD?

See Live CD.