I would like to see the following feature added to flashrom:
If someone implemented it, would the idea (at least) be accepted?
Is anyone interested in implementing it and claiming the $100 bounty?
Text of the issue, for people too lazy to click:
Some chips require certain bits (and similar features) be set before the hardware write-protect pins can be used. Flashrom doesn't currently support setting these bits, which makes it impossible to e.g hardware write-protect a BIOS chip after flashing Coreboot. I would like to see Flashrom add support for this.
Attached is a patch which was written by someone else (they can identify themselves if they like) to toggle the relevant bits for a particular flash chip, each time flashrom is run, and tell the user what's going on.
Your task, if you want to claim the bounty, is to:
1- Add some UI sugar so that the user can choose to set the appropriate bits (or not), and any other "features" needed to enable hardware write-protect, via the command line
2- Ensure the necessary bits and features can be set for a specified set of chips (see below), so Flashrom supports hardware write protect for at least all of the listed chips, and
3- Get your patch accepted and merged (it may be wise to first check with the maintainers that they are willing to add this feature) using Gerrit or the mailing list as per the official process
If $100 isn't enough to make this attractive, I am open to increasing the bounty. I am also happy to escrow it if need be. Payment will be in Bitcoin.
I should have been more patient, but I used flashrom to attempt to install
a bios update from MSI, and it kept looping through the attempt giving an
error message about "unable to erase". I eventually got the pid # with top,
and killed the job. Everything seemed OK, so it was late and I shut the
computer down with the normal Ubuntu shutdown. The next day, it would not
boot. By not boot, the fan & lights came on, I thought I heard hard drives,
but absolutely no video. I messed with it for several days, then ordered a
new motherboard. After installing the new mb, hopefully correctly, I have
the same problem. I can't think of anything left undone. Is it possible a
failed flash can fry the video card? I re-used memory, etc, but the monitor
shows no activity.
When I built this computer in September 2019, the motherboard worked out of
the box, and already had a bios installed. I am assuming the new
motherboard has a bios installed too.
Any help appreciated,
If you suspect that your BIOS is infected (BadBIOS?), I could only
suggest doing a hardware ISP flashing with one of the
flashrom-supported programmers (i.e. green PCB ch341a) and a test clip
like SOIC8 (to be able to attach to a chip without any soldering)
while the board is turned off of course. This should be the most
reliable. Before flashing a new known good BIOS image that you might
obtain i.e. by extracting from a manufacturer's update utility, please
dump the previous contents with a programmer: so that you'll be able
to recover from it just in case, and maybe even look through it for
any hard evidence of a BIOS virus to share it with the community (if
that's really true, could be quite interesting for research purposes).
Also I copy this message to a flashrom mailing list, in case someone
else could also advise you.
On Wed, Apr 7, 2021 at 2:05 PM Rahngue NGARIERA <youetonam(a)gmail.com> wrote:
>> Hi Mike. I didn't mention it in my previous email, but I used also flashrom 0.9.6 on Ubuntu 14.4 Which failed on both Probe and Read with "Hardware sequencing was requested but the flash descriptor is not valid. Aborting". While using version 0.9.4 (on DOS) I did both Probe and Read. As You said, the 2 chips FlashRom 0.9.4 found (AT25DF081A and AT26DF081A) are the same and one chip. And checking on the main board I did see that chip. It's AT26DF081A. I did try to read on FlashRom 0.9.4 (on DOS) using the -c parameter with AT26DF081A first (as in -c AT26DF081A) but that failed. Then just to see, I tried to read with -c AT25DF081A ( since 0.9.4 was seeing two chips). But it also failed. I'm sending you again the Probe log and the Read logs using FlashRom 0.9.4 : READ1.TXT (AT25DF081A)
> and READ2.TXT (AT26DF081A).
> FlashRom 0.9.6 (Ubuntu14.4) and FlashRom 1.2 (on DOS) both failed whether reading or probing even with -c AT26DF081A ( -c AT25DF081A) with the same message at the end saying that flash descriptor is invalid.
> This Dell system I want to read from, I think, has its bios infected. When It comes to bios, I prefer to operate from DOS: I think it's safer and maybe help avoid any action from the virus.
> Please Mike, what do I do for FlashRom to successfully read this chip?
> I need to confirm if this bios chip is infected.
> Thanks for your help,
Best regards, Mike Banon
Open Source Community Manager of 3mdeb - https://3mdeb.com/
Hello! I'm try to build flashrom 1.2 for windows with FTDI support, but i
I'm try on debian with i686-w64-mingw32-gcc, i'm put ftdi files in
/usr/...mingw32/bin|include|lib, but 'make' tell me "Checking for FTDI
support... not found." and many errors in the end (ich_descriptors.c).
Maybe you can give me advice on how to build them or share a compiled
binary with me. I'm sorry for disturbing, many thanks and sorry for stupid
Thanks for your email. Unfortunately, I did not specifically write down the changes I made in a document. However, you may check the commit history at my “flashrom for DOS” port repository here <https://github.com/HowardHo2021/flashrom-DOS-port> . If you wish, you can clone that repository and follow the instructions I wrote in “README_DOS” to compile your own copy.
For future correspondence, please use howardho2021(a)gmail.com <mailto:email@example.com> instead.
From: Rahngue NGARIERA <youetonam(a)gmail.com>
Sent: Saturday, April 3, 2021 11:58 PM
Subject: Changes made for FlashRom DOS port
Hi HowardHo. I haven't seen your list of changes to the original FlashRom (to get a working DOS port) on your Git pages. Could you please post them there or email it to me? I'd very much like to know. 'Cause I wasn't able to get it done with the original FlashRom.
Thanks for your help,
PS: As you advised me, I sent my Read/Probe failure email to FlashRom.org And I'm waiting for their answer.
Thanks for flashrom!
Had a question about using "JTAG-lock-pick Tiny 2" (https://distortec.com/jtag-lock-pick-tiny-2/) as flashrom programmer. It is a FT232H based openocd jtag programmer so I figured I could use it like so:
$ flashrom -p ft2232_spi:type=232H -r dump.rom$ flashrom -p ft2232_spi:type=232H -w bios.rom
But the PID is not the standard FT232H of 0x6014 so I adjusted the 232H PID value in ft2232_spi.c to match: 0x6014 --> 0x8220. Then re-compiled and now flashrom seems to recognize the device. But still not able to read any spi eeproms.
Would be great to get any input on how I could make this work or things I could try.