Hi all,
I would like to see the following feature added to flashrom:
https://github.com/flashrom/flashrom/issues/185
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 have a PC Engines apu2d4 running NetBSD 8 (amd64), and would like to
update coreboot/etc. on it. I searched the list (perhaps not well) and
didn't find any reports of success, although I realize things are
generally expected to work so success might well go unreported.
I am using flashrom 1.1 as built from pkgsrc.
I was able to read the existing bios without issues as:
flashrom --programmer internal -r 20200301-readflash.rom
Before I try to write, I am wondering if anyone has successfully done an
apu2 bios update with flashrom under NetBSD 8 amd64?
(I have a debricking adaptor (spi1a) and will prepare a Linux flashing
image on USB before trying myself, whether I not a get a report of
success.)
Thanks,
Greg
Hello,
I wanted to read/write a chip "p25q80h" with flashrom and a ch341a
programmer and flashrom told me to help you by mailing the attached
output to this address to add the chip.
If you need more information, feel free to reach out to me.
best regards,
Michael Kerscher
Greetings!
Thanks for creating such wonderful tool.
i would like to ask for a suggestion as developers of the tool will be the
best one to ask.
Basically i am trying to flash efi chip on imac,
micronix MX25L6406E/MX25L6408E but just can't get any readings....
i got an working macbook with same chip and once i connect to it,
everything works like charm. i was able to read file from working macbook
10 times(8/10 checksum matched!). So i can assume my setup is correct! But
no luck reading same chip from imac motherboard.
Could you please suggest anything?
Could it be that:
1) because chip is on password locked chip is not readable? (doesn't
make sense though, right?)
2) maybe chip is faulty? which is very unlikely
3) could it be because chip is on motherboard and unsoldering it
would help?
4) i am currently reading chip with sudo flashrom -r oldefi1.bin -V
-p linux_spi:dev=/dev/spidev0.0
maybe there is some additional arguments, i should try.
Regards,
Sergio
Hi
I need to reprogram the firmware on a WD HDD with SOIC8 Winbond chip supported by flashrom. I tried reading in-circuit but my programmer does not detect it (other chips work fine). Probably other components are drawing voltage so I disconnected Vcc and tried to power it through regular SATA connectors which didn't work. Do you have any recommendations how to workaround this issue? Will supplying power through 3.3V Vcc and SATA connector at same time fry the chip?
Thanks for your help
Tom
Hi I tried bios flashing and it ran perfectly till it verified at the end of writing the flash
C:\Users\Justin Hardy\Desktop\Flashrom_v1.2_St1cky>flashrom -w FLASH.ROM -p busp
irate_spi:dev=COM5,spispeed=1M
flashrom v1.2 on Windows 6.1 (x86_64)
flashrom is free software, get the source code at https://flashrom.org
Calibrating delay loop... OK.
Found Winbond flash chip "W25Q32.V" (4096 kB, SPI) on buspirate_spi.
Reading old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... FAILED at 0x00000060! Expected=0x00, Found=0x01, failed byte
count from 0x00000000-0x003fffff: 0xc0af
Your flash chip is in an unknown state.
Please report this on IRC at chat.freenode.net (channel #flashrom) or
mail flashrom(a)flashrom.org, thanks!
C:\Users\Justin Hardy\Desktop\Flashrom_v1.2_St1cky>
At first I got a fail reading because I disconnected it somehow, then it worked and got this at the very end thanks!
Hi,
I would like to ask about read parametr. I have PC HP All-in-one and after
change SSD disk PC blackout, not even logo shown up, so i found
instructions how to write newer bios(because led double flash and that me
bios corrupted) using Arduino UNO to ROM_RECOVER bus.Firstly I try backup
old ROM used command: sudo flashrom -p serprog:dev=/dev/ttyACM0:115200 -r
old.ROM and after that I saw serial line sending data but after 10 minutes
LED TX turn off and at Terminal is still Reading flash.... after 30minute
waiting nothing happend. Will you advise me?
Thank you,
in attachment is picture of terminal
Hi,
How are you?
I am trying to coreboot an Asus A88XM-E. The chip on that motherboard is GD25Q64(B), which I execute sudo flashrom --programmer ch341a_spi -w coreboot.rom, I got this error:
flashrom v1.2 on Linux 5.9.14-rockchip64 (aarch64)
flashrom is free software, get the source code at https://flashrom.org
Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Found GigaDevice flash chip "GD25Q64(B)" (8192 kB, SPI) on ch341a_spi.
Reading old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... FAILED at 0x00000000! Expected=0x5f, Found=0xff, failed byte count from 0x00000000-0x007fffff: 0x168
Your flash chip is in an unknown state.
Please report this on IRC at chat.freenode.net (channel #flashrom) or
mail flashrom(a)flashrom.org, thanks!
I got new GD25Q64 chips from aliexpress. The verbose version is like this:
Found GigaDevice flash chip "GD25Q64(B)" (8192 kB, SPI).
This chip may contain one-time programmable memory. flashrom cannot read
and may never be able to write it, hence it may not be able to completely
clone the contents of this chip (see man page for details).
Reading old flash chip contents... done.
Erasing and writing flash chip... Trying erase function 0... 0x000000-0x000fff:EFAILED at 0x00000000! Expected=0xff, Found=0x00, failed byte count from 0x00000000-0x00000fff: 0xd28
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Trying erase function 1... 0x000000-0x007fff:EFAILED at 0x00000000! Expected=0xff, Found=0x00, failed byte count from 0x00000000-0x00007fff: 0x7a0b
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Trying erase function 2... 0x000000-0x00ffff:EFAILED at 0x00000000! Expected=0xff, Found=0x00, failed byte count from 0x00000000-0x0000ffff: 0xf342
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Trying erase function 3... 0x000000-0x7fffff:EFAILED at 0x00000000! Expected=0xff, Found=0x00, failed byte count from 0x00000000-0x007fffff: 0x9dfd4
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
I have also made a post on reddit asking for answers.
https://www.reddit.com/r/coreboot/comments/krfjsn/question_about_how_to_cor…
Can you please let me know what I did wrong?
Thanks,
Hello,
I am rying to update the BIOS on my 10-yr-old laptop. Per the output of the flashrom command, I am including the output I received:
[root@Dilbert ~]# flashrom -p internal -V
flashrom v1.2 on Linux 5.8.18-350.vanilla.knurd.1.fc33.x86_64 (x86_64)
flashrom is free software, get the source code at https://flashrom.org
flashrom was built with libpci 3.6.4, GCC 10.2.1 20201125 (Red Hat 10.2.1-9), little endian
Command line (3 args): flashrom -p internal -V
Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Initializing internal programmer
/sys/class/mtd/mtd0 does not exist
No coreboot table found.
Using Internal DMI decoder.
DMI string chassis-type: "Notebook"
Laptop detected via DMI.
DMI string system-manufacturer: "Micro-Star International"
DMI string system-product-name: "GT680R/GX680R"
DMI string system-version: "To be filled by O.E.M."
DMI string baseboard-manufacturer: "Micro-Star International"
DMI string baseboard-product-name: "MS-16F2"
DMI string baseboard-version: "To be filled by O.E.M."
W836xx enter config mode worked or we were already in config mode. W836xx leave config mode had no effect.
Active config mode, unknown reg 0x20 ID: 00.
Found chipset "Intel HM67" with PCI ID 8086:1c4b.
This chipset is marked as untested. If you are using an up-to-date version
of flashrom *and* were (not) able to successfully update your firmware with it,
then please email a report to flashrom(a)flashrom.org including a verbose (-V) log.
Thank you!
Enabling flash write... Root Complex Register Block address = 0xfed1c000
Error accessing ICH RCRB, 0x4000 bytes at 0x00000000fed1c000
/dev/mem mmap failed: Operation not permitted
FAILED!
FATAL ERROR!
Error: Programmer
Can you help? Can I use this utility to flash my BIOS (I have the BIOS file from MSI)?
Mike
Sent with [ProtonMail](https://protonmail.com) Secure Email.