Mainboard : http://www.biostar-europe.com/v4/app/de/mb/content.php?S_ID=380
OS : Ubuntu 9.10 x64
Flashrom : v0.9.1-r706
Output :
flashrom
No coreboot table found.
This chipset supports the following protocols: Non-SPI.
WARNING: No chipset found. Flash detection will most likely fail.
Error: Programmer initialization failed.
flashrom -V
flashrom v0.9.1-r706
No coreboot table found.
This chipset supports the following protocols: Non-SPI.
WARNING: No chipset found. Flash detection will most …
[View More]likely fail.
Error: Programmer initialization failed.
flashrom -r backup.bin
flashrom v0.9.1-r706
No coreboot table found.
This chipset supports the following protocols: Non-SPI.
WARNING: No chipset found. Flash detection will most likely fail.
Error: Programmer initialization failed.
[View Less]
Mystery things do not stop. Now I succeeded when flashing the original
BIOS with the patched version as one can see by flashrom's output:
flashrom v0.9.1-r845 (patched)
No coreboot table found.
Found chipset "AMD SB700/SB710/SB750", enabling flash write... OK.
This chipset supports the following protocols: LPC,FWH,SPI.
Calibrating delay loop... OK.
Found chip "SST SST25VF016B" (2048 KB, SPI) at physical address 0xffe00000.
===
This flash part has status UNTESTED for operations: ERASE
Please …
[View More]email a report to flashrom(a)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, -rV,
-wV, -EV), 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... done.
COMPLETE.
Verifying flash... VERIFIED.
A verification by reading the BIOS (via flashrom -r <file>) and comparing it with
the original bios (via diff) shows the NO difference.
For now I think we can say good night. But I would be very pleased if we fix
the problem tomorrow. The original job to flash a new bios isn't done up to
now ...
Best,
Parallix
[View Less]
If neither internal (old default) nor dummy (safe default) programmer
are selected, we must pick a sensible default programmer. Since there is
no reason to prefer a particular external programmer, we abort
compilation if more than one of them is selected. If only one is
selected, it is clear that the user wants that one to become the default.
This fixes single-programmer compilation.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006(a)gmx.net>
Index: flashrom-…
[View More]allow_single_programmer/flashrom.c
===================================================================
--- flashrom-allow_single_programmer/flashrom.c (Revision 837)
+++ flashrom-allow_single_programmer/flashrom.c (Arbeitskopie)
@@ -39,9 +39,38 @@
#elif DUMMY_SUPPORT == 1
enum programmer programmer = PROGRAMMER_DUMMY;
#else
-/* Activating the #error explodes on make dep. */
-//#error Neither internal nor dummy selected
+/* If neither internal nor dummy are selected, we must pick a sensible default.
+ * Since there is no reason to prefer a particular external programmer, we fail
+ * if more than one of them is selected. If only one is selected, it is clear
+ * that the user wants that one to become the default.
+ */
+#if NIC3COM_SUPPORT+GFXNVIDIA_SUPPORT+DRKAISER_SUPPORT+SATASII_SUPPORT+FT2232_SPI_SUPPORT+SERPROG_SUPPORT+BUSPIRATE_SPI_SUPPORT > 1
+#error Please enable either CONFIG_DUMMY or CONFIG_INTERNAL or disable support for all external programmers except one.
#endif
+enum programmer programmer =
+#if NIC3COM_SUPPORT == 1
+ PROGRAMMER_NIC3COM
+#endif
+#if GFXNVIDIA_SUPPORT == 1
+ PROGRAMMER_GFXNVIDIA
+#endif
+#if DRKAISER_SUPPORT == 1
+ PROGRAMMER_DRKAISER
+#endif
+#if SATASII_SUPPORT == 1
+ PROGRAMMER_SATASII
+#endif
+#if FT2232_SPI_SUPPORT == 1
+ PROGRAMMER_FT2232SPI
+#endif
+#if SERPROG_SUPPORT == 1
+ PROGRAMMER_SERPROG
+#endif
+#if BUSPIRATE_SPI_SUPPORT == 1
+ PROGRAMMER_BUSPIRATESPI
+#endif
+;
+#endif
char *programmer_param = NULL;
--
Developer quote of the year:
"We are juggling too many chainsaws and flaming arrows and tigers."
[View Less]
Author: hailfinger
Date: 2010-01-10 14:28:48 +0100 (Sun, 10 Jan 2010)
New Revision: 858
Modified:
trunk/flashrom.c
Log:
If neither internal (old default) nor dummy (safe default) programmer
are selected, we must pick a sensible default programmer. Since there is
no reason to prefer a particular external programmer, we abort
compilation if more than one of them is selected. If only one is
selected, it is clear that the user wants that one to become the
default.
This fixes single-programmer …
[View More]compilation.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006(a)gmx.net>
Acked-by: Sean Nelson <audiohacked(a)gmail.com>
Modified: trunk/flashrom.c
===================================================================
--- trunk/flashrom.c 2010-01-10 01:59:50 UTC (rev 857)
+++ trunk/flashrom.c 2010-01-10 13:28:48 UTC (rev 858)
@@ -39,9 +39,38 @@
#elif DUMMY_SUPPORT == 1
enum programmer programmer = PROGRAMMER_DUMMY;
#else
-/* Activating the #error explodes on make dep. */
-//#error Neither internal nor dummy selected
+/* If neither internal nor dummy are selected, we must pick a sensible default.
+ * Since there is no reason to prefer a particular external programmer, we fail
+ * if more than one of them is selected. If only one is selected, it is clear
+ * that the user wants that one to become the default.
+ */
+#if NIC3COM_SUPPORT+GFXNVIDIA_SUPPORT+DRKAISER_SUPPORT+SATASII_SUPPORT+FT2232_SPI_SUPPORT+SERPROG_SUPPORT+BUSPIRATE_SPI_SUPPORT > 1
+#error Please enable either CONFIG_DUMMY or CONFIG_INTERNAL or disable support for all external programmers except one.
#endif
+enum programmer programmer =
+#if NIC3COM_SUPPORT == 1
+ PROGRAMMER_NIC3COM
+#endif
+#if GFXNVIDIA_SUPPORT == 1
+ PROGRAMMER_GFXNVIDIA
+#endif
+#if DRKAISER_SUPPORT == 1
+ PROGRAMMER_DRKAISER
+#endif
+#if SATASII_SUPPORT == 1
+ PROGRAMMER_SATASII
+#endif
+#if FT2232_SPI_SUPPORT == 1
+ PROGRAMMER_FT2232SPI
+#endif
+#if SERPROG_SUPPORT == 1
+ PROGRAMMER_SERPROG
+#endif
+#if BUSPIRATE_SPI_SUPPORT == 1
+ PROGRAMMER_BUSPIRATESPI
+#endif
+;
+#endif
char *programmer_param = NULL;
[View Less]
I've never flashed a BIOS before and my board wasn't listed as working
but I saw the chipset when I did a flashrom -L so backed up, verified
the backup, erased it and then did the upgrade. That worked and
verified.
I did hit one 'issue' that's probably a non-issue because I seriously
had no idea what I was doing. You asked for an email with "the flashrom
output with the additional -V option for all operations you tested (-V,
-rV, -wV, -EV". I could not add the verify option on the command …
[View More]line;
it only accepted one command at a time. I did have to boot with the
nopat option added to my kernel (mandriva 2010.0 2.6.31.5-desktop-1mnb)
Anyway, I've attached the output from the bios write and the verify
I did afterwards. I didn't save the erase command I did before I
did the -w option - which included an erase - so I'm not quite
getting exactly how you're supposed to do this stuff but I've since
rebooted and seen that what had been my unrecognized CPU is showing up
just fine (that's what I flashed it for), everything seems stable and
no hangups like I had before. Does that make sense? :)
The motherboard was the ECS A780GM-M3, CPU is AMD Sempron 140.
And may I suggest - since I have no idea what I'm doing WRT flashing
bios, could someone add examples to the man page or add to the one
command line listed up on wikipedia of how to do it so us idiots would
know what to do to flash a bios. :) I looked around but all I found was
the 'how to do it with a dos boot disk and the exe utility' which I
couldn't use so I gambled on what I was doing with this which is
really kinda spooky.
Anyway, a huge thank you from this bios idjit!
[View Less]