1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-04-27 07:02:34 +02:00

732 Commits

Author SHA1 Message Date
Carl-Daniel Hailfinger
0d5db9a8f8 Flashrom 0.9.1
Please refer to the release notes for a high-level overview of all the
amazing changes and added features since 0.9.0.

Corresponding to flashrom svn r709.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
v0.9.1
2009-09-02 13:47:36 +00:00
Carl-Daniel Hailfinger
9246ff4063 Don't abort if chipset init failed because the failing init may have been a warning only
Even a failing chipset init (maybe due to unknown chipset) could still
get us reasonable probe results or at least forced reads.

Corresponding to flashrom svn r708.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2009-09-02 13:43:56 +00:00
Carl-Daniel Hailfinger
84395ed69f Move the Asus A7V600-X out of the unsupported list
This is a followup to r705.

Corresponding to flashrom svn r707.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Luc Verhaegen <libv@skynet.be>
2009-09-02 00:24:26 +00:00
Carl-Daniel Hailfinger
174962dd29 Use correct name for SB700/SB710/SB750 instead of calling them SB700
Corresponding to flashrom svn r706.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Luc Verhaegen <libv@skynet.be>
2009-09-01 22:13:42 +00:00
Luc Verhaegen
7227291e87 Board enable for Asus A7V600-X
Raises GP32 on IT8712F, and comes with a more general routine to set
io lines on the IT8712F.

Corresponding to flashrom svn r705.

Signed-off-by: Luc Verhaegen <libv@skynet.be>
Acked-by: Udu Ogah <putlinuxonit@gmail.com>
2009-09-01 21:22:23 +00:00
Carl-Daniel Hailfinger
48e5e09cf7 Add the possibility to set the release name directly as makefile parameter
With this patch, make tarball and make export still work as expected,
but if you specify RELEASENAME=foo, then the directories and tarballs
are named flashrom-foo instead of flashrom-0.9.0-r703. This makes
release creation a lot easier. As an example, look at creating the 0.9.1
tarball: # make tarball RELEASENAME=0.9.1

Corresponding to flashrom svn r704.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-31 16:25:08 +00:00
Carl-Daniel Hailfinger
4dd5e080a1 Refine bad board list
Update bad board list and remove boards where either the chipset is
not supported (not a board issue) or where we have no report in the
archives.

Corresponding to flashrom svn r703.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2009-08-31 11:53:35 +00:00
Uwe Hermann
f8a06839d4 Board status updates
Marked as OK:

 - ASUS A8V Deluxe (reported by Joachim Ernst <Joachim.Ernst@web.de>)
   http://www.flashrom.org/pipermail/flashrom/2009-August/000448.html
   Tested with r701.

 - ASUS P5L-MX (reported by Vasiliy Vylegzhanin <6vasia@gmail.com>)
   http://www.flashrom.org/pipermail/flashrom/2009-August/000446.html
   Tested with v0.9.0.

 - Abit Fatal1ty F-I90HD (reported by Joachim Ernst <joachim.ernst@web.de>)
   http://www.flashrom.org/pipermail/flashrom/2009-August/000435.html

 - Trigem Lomita (reported by Udu Ogah <putlinuxonit@gmail.com>)
   Tested with r695.

 - GIGABYTE GA-MA790GP-DS4H (reported by Ralph Loader <suckfish@ihug.co.nz>)
   http://www.flashrom.org/pipermail/flashrom/2009-August/000414.html
   http://www.flashrom.org/pipermail/flashrom/2009-August/000417.html

 - GIGABYTE GA-MA78GPM-DS2H (reported by
                             Erik Haugen Bakke <erik_hb_mlist@yahoo.com.au>)
   http://www.flashrom.org/pipermail/flashrom/2009-August/000329.html

Corresponding to flashrom svn r702.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2009-08-30 14:14:59 +00:00
Joerg Mayer
871689e255 Update svn:ignore
Corresponding to flashrom svn r701.

Signed-off-by: Joerg Mayer <jmayer@loplof.de>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2009-08-24 13:29:25 +00:00
Joerg Mayer
7221d5f98d Update contact info
Corresponding to flashrom svn r700.

Signed-off-by: Joerg Mayer <jmayer@loplof.de>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2009-08-24 13:24:52 +00:00
Carl-Daniel Hailfinger
fdb852f504 "3COM 3C90xB: PCI 10BASE-T (TPO)" (10b7:9004) works fine
Reported by Mark Panajotovic <panajotovic.marko@gmail.com>.

Corresponding to flashrom svn r699.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2009-08-24 01:47:33 +00:00
Mark Panajotovic
502a913791 Add support for MX29F001T and MX29F001B flash chips
Corresponding to flashrom svn r698.

Signed-off-by: Mark Panajotovic <panajotovic.marko@gmail.com>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2009-08-24 01:42:24 +00:00
Carl-Daniel Hailfinger
37181bebdd ASD AE29F2008 and Winbond W29C020C have the same ID
Reported by Mark Panajotovic <panajotovic.marko@gmail.com>.

Corresponding to flashrom svn r697.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2009-08-24 01:34:48 +00:00
Carl-Daniel Hailfinger
95baaadee5 Add support for ICH9 engineering sample
Anne Le Coq <annyvonne.le_coq@alcatel-lucent.fr> reported that flashrom
didn't recognize her ICH9 LPC controller on the Green City Intel
Customer Reference Board with ICH9 + Tylersburg Chipset. According to
http://pci-ids.ucw.cz/read/PC/8086/2910 the ID 0x8086/0x2910 was used
for engineering samples. No intel doc mentions this ID at all.

Corresponding to flashrom svn r696.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Anne Le Coq <annyvonne.le_coq@alcatel-lucent.fr>
2009-08-21 17:26:13 +00:00
Uwe Hermann
a02d666436 Various board status updates
Mark the following boards as OK (no board-enable needed):

 - Tyan S2466 (reported by Oliver Niesner <oli@servebbs.net>)
   http://www.flashrom.org/pipermail/flashrom/2009-August/000211.html

Mark the following boards as non-working for now:

 - ASRock K7VT4A+ (reported by Udu Ogah <putlinuxonit@gmail.com>)
   Chipset detect, but no chip.
 
 - ASUS M2N68 (reported by Udu Ogah <putlinuxonit@gmail.com>)
   Chipset detect, but no chip.
 
 - ASUS A7V600-X (reported by Udu Ogah <putlinuxonit@gmail.com>)
   Chipset and chip detected, writes don't work. Board-enable required.

Also, add some missing board URLs and fix incorrect board names.

Corresponding to flashrom svn r695.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2009-08-20 18:45:18 +00:00
Carl-Daniel Hailfinger
f5fb51c4ba Adept layout handling to new programmer infrastructure and fix off-by-one error
Flashrom has the ability to use layout files with romentries, but
this feature was not adapted to the programmer infrastructure and had
undefined behaviour for flasher!=internal. The romentry handling had an
off-by-one error which caused all copies to end up one byte short. Fix
these issues.

Corresponding to flashrom svn r694.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-19 15:19:18 +00:00
Carl-Daniel Hailfinger
664e7ad995 Change programmer options separator from = to :
Current programmer parameter syntax is -p programmer=parameter
Unfortunately, many parameters are of the form variable=val, so we get
commandlines like this.

flashrom -p it87spi=port=0x820 and this looks horrible.

Using : instead of = would make such parameters look better: flashrom -p
it87spi:port=0x820

As a side benefit, this patch mentions the programmer name in the error
message if it is unknown.

Corresponding to flashrom svn r693.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-19 15:03:28 +00:00
Carl-Daniel Hailfinger
8ab49e72af Disallow erase/write for known bad chips so people won't try without a clear understanding
Allow override with --force.

If write/erase failed, warn the user to get help and not shutdown/reboot
the computer.

Warn that the result of a forced read is often garbage. Too many users
believed that a forced read meant that everything was fine.

Wait 1 second between erase and verify. This fixes a few reports where
verify directly after erase had unpleasant side effects like corrupting
flash or at least getting incorrect verify results.

Corresponding to flashrom svn r692.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-19 13:55:34 +00:00
Carl-Daniel Hailfinger
3426ef6ab8 If FT2232H SPI is not enabled, it should be compiled out completely
We can't remove ft2232_spi.o from unconditional OBJS yet due to our
makefile structure (make features), but this patch adds #ifdefs around
all FT2232H code, so the net effect is the same.

Corresponding to flashrom svn r691.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-19 13:27:58 +00:00
Stefan Reinauer
173e3eaabe Support rdmsr/wrmsr operations on FreeBSD
So far, AMD Geode LX is the only user of this infrastructure. It needs
/dev/cpu0 from ports/sysutils on FreeBSD during runtime on Geode LX.

Corresponding to flashrom svn r690.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Idwer Vollering <vidwer@gmail.com>
Acked-by: <putlinuxonit@gmail.com>
2009-08-19 10:46:23 +00:00
Carl-Daniel Hailfinger
dfade10e39 Add serprog documentation to the manpage
Corresponding to flashrom svn r689.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2009-08-18 23:51:22 +00:00
Carl-Daniel Hailfinger
1ebf8451a7 Tidy up docs before release
Don't mention coreboot.org without context.

Corresponding to flashrom svn r688.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2009-08-18 23:50:14 +00:00
Carl-Daniel Hailfinger
10572fa08a Fix compilation on Nexenta which is Ubuntu with a Solaris kernel
Corresponding to flashrom svn r686.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
v0.9.1-rc1
2009-08-17 16:30:53 +00:00
Carl-Daniel Hailfinger
4449868623 Allow the user to override FWH IDSEL on ICH6 and later
Usage:
flashrom -p internal=fwh_idsel=0

Corresponding to flashrom svn r685.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>

Log:
flashrom v0.9.0-r670
coreboot table found at 0xcf7f3c00.
Vendor ID: KONTRON, part ID: 986LCD-M
Found chipset "Intel ICH7/ICH7R", enabling flash write...
Setting IDSEL=0 for top 8 MBOK.
This chipset supports the following protocols: LPC,FWH.
Disabling flash write protection for board "Kontron 986LCD-M"... OK.
Calibrating delay loop... OK.
Found chip "SST SST49LF016C" (2048 KB, FWH) at physical address
0xffe00000.
No operations were specified.

Acked-by: Chris Kinney <cmkinne@sandia.gov>
2009-08-13 23:23:37 +00:00
Carl-Daniel Hailfinger
204b076df7 Generate the usage message by walking the list of available programmers
This makes sure compiled out programmers are not listed.

Tested, usage output is identical to the hardcoded variant.

Corresponding to flashrom svn r684.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-13 11:38:44 +00:00
Stefan Reinauer
b4fe6648d1 Use MSR abstraction in all board enables
This was forgotten in flashrom svn r677 where some handcrafted MSR accesses
were still found in board-specific code.

Corresponding to flashrom svn r683.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-12 18:25:24 +00:00
Luc Verhaegen
4eeb713ed2 Board enable for Asus P4P800-E Deluxe
Raises what seems to be gpio21.

Uses host controller and Promise Raid Controller for a unique match.

Tested-by: Bojan Radakovic <crnibojan@gmail.com>

Corresponding to flashrom svn r682.

Signed-off-by:  Luc Verhaegen <libv@skynet.be>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-12 16:58:11 +00:00
Carl-Daniel Hailfinger
6be741114d Allow to compile out serprog completely
If CONFIG_SERPROG is not set, no stubs and no data of serprog will
remain.

Side benefit: This kills a few dozen lines of code.

r678, r679 and r680 made this possible. Once "Only list available
programers in usage()" is committed, even the usage message will be
adjusted automatically.

Corresponding to flashrom svn r681.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-12 16:17:41 +00:00
Carl-Daniel Hailfinger
37fc469ca2 Add a new field for the names of programmers and use it to match against user input
Use programmer.name to match the --programmer parameter instead of
hardcoding the name of every single programmer in main().

-p dummyfoo won't be mistaken for -p dummy anymore.

Corresponding to flashrom svn r680.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-12 14:34:35 +00:00
Carl-Daniel Hailfinger
ef58a9ce3f Use a common parameter variable for all programmers
This allows us to reduce #ifdef clauses a lot if we compile out some
programmers completely.

Corresponding to flashrom svn r679.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-12 13:32:56 +00:00
Carl-Daniel Hailfinger
415e513d90 Add fallback functions for programmer shutdown and memory mapping and fix FT2232 and IT87
FT2232 and IT87 programmers used functions of the dummy programmer
instead of fallback functions.

The dummy programmer is a "real" programmer with possible side effects
and its functions should not be abused by other programmers. Make
FT2232 and IT87 use official fallback functions instead. Create
fallback_shutdown(). Create fallback_chip_writeb(). Convert the
programmer #defines to an enum.

Corresponding to flashrom svn r678.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-12 11:39:29 +00:00
Stefan Reinauer
8fa64816ae Fix up MSR handling to support more OSes than Linux.
Corresponding to flashrom svn r677.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2009-08-12 09:27:45 +00:00
Stefan Reinauer
630c79d494 Make debug messages printf_debug().
Corresponding to flashrom svn r676.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-11 12:15:39 +00:00
Carl-Daniel Hailfinger
4c7ea38581 Add ICH6,ICH7,ICH8,ICH9,ICH10 FWH IDSEL settings and flash decode settings to the debug output
This can help debug cases where the BIOS does not set up a correct flash
decode for the given flash size. The Intel docs state that the decode
applies to FWH and SPI flash.

Corresponding to flashrom svn r675.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Chris Kinney <cmkinne@sandia.gov>
2009-08-10 23:30:45 +00:00
Carl-Daniel Hailfinger
6d5d2535a4 Add IDs for 25 AMD chips, 11 Hynix chips, 8 Sharp chips, and their variants
AM29DL400BB, AM29DL400BT, AM29DL800BB, AM29DL800BT, AM29F004BB
AM29F004BT, AM29F200BB, AM29F200BT, AM29F400BB, AM29F400BT
AM29F800BB, AM29F800BT, AM29LV002BB, AM29LV002BT, AM29LV004BB
AM29LV004BT, AM29LV008BB, AM29LV008BT, AM29LV080B, AM29LV200BB
AM29LV200BT, AM29LV400BB, AM29LV400BT, AM29LV800BB, AM29LV800BT
HY29F002, HY29F040A, HY29F080, HY29F400B, HY29F400T, HY29F800B
HY29F800T, HY29LV400B, HY29LV400T, HY29LV800B, HY29LV800T
LH28F008BJxxPB, LH28F008BJxxPT, LH28F008SA, LH28F008SC, LH28F800BVxxBTL
LH28F800BVxxBV, LH28F800BVxxTV, LHF00L02

Corresponding to flashrom svn r674.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-10 10:14:23 +00:00
Carl-Daniel Hailfinger
116081a224 Replace remaining explicit erases in SPI programmer drivers with auto-erases
Some SPI chip drivers and the generic 1-byte SPI chip write functions
didn't include the automatic erase present in other chip drivers.

Since the majority is definitely auto-erase, change the remaining
explicit-erase cases to be auto-erase as well.

Corresponding to flashrom svn r673.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Carlos Arnau Perez <cemede@gmail.com>
2009-08-10 02:29:21 +00:00
Carl-Daniel Hailfinger
db41c59e3b Releasing IO permissions was done by hand everywhere
Use a proper abstraction. Kill unneeded #include statements.

Corresponding to flashrom svn r672.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-09 21:50:24 +00:00
Carl-Daniel Hailfinger
be726817f7 Remove unnecessary #include files
Serprog compilation is now controlled by a Makefile variable.
Replace munmap with physunmap where appropriate.

Corresponding to flashrom svn r671.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-09 12:44:08 +00:00
Carl-Daniel Hailfinger
5b2f52fa6c Fix SPI multicommand endless loop in default_spi_send_multicommand
Corresponding to flashrom svn r670.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-08-03 09:35:20 +00:00
Stefan Reinauer
22ea8cd503 The project's new home is flashrom.org now
Change all occurences in the source code and documentation accordingly.

Corresponding to flashrom svn r669.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-07-30 13:32:26 +00:00
Carl-Daniel Hailfinger
bc25f947fe Boards with coreboot have a cbtable containing vendor and board name
Flashrom tries to match these with board enable entries in its database.
If no such board enable entry exists because the board doesn't need one,
flashrom complains. Silence that complaint.

Corresponding to flashrom svn r668.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Slightly updated and
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-07-30 13:30:17 +00:00
Carl-Daniel Hailfinger
350a0c348e Add IDs for 51 new flash chips
AMIC A29400T
AMIC A29400U
AMIC A29800T
AMIC A29800U
AMIC A29L004T
AMIC A29L004U
AMIC A29L008T
AMIC A29L008U
AMIC A29L040
Macronix MX29F004B
Macronix MX29F004T
Macronix MX29F022T
Macronix MX29F080
Macronix MX29F800B
Macronix MX29F800T
Macronix MX29LV081
Spansion MBM29DL400BC
Spansion MBM29DL400TC
Spansion MBM29DL800BA
Spansion MBM29DL800TA
Spansion MBM29F002BC
Spansion MBM29F002TC
Spansion MBM29F040C
Spansion MBM29F080A
Spansion MBM29F200BC
Spansion MBM29F200TC
Spansion MBM29F800BA
Spansion MBM29F800TA
Spansion MBM29LV002BC
Spansion MBM29LV002TC
Spansion MBM29LV004BC
Spansion MBM29LV004TC
Spansion MBM29LV008BA
Spansion MBM29LV008TA
Spansion MBM29LV080A
Spansion MBM29LV200BC
Spansion MBM29LV200TC
Spansion MBM29LV400BC
Spansion MBM29LV400TC
Spansion MBM29LV800BA
Spansion MBM29LV800TA
SST 49LF030A
ST M29F080
ST M29F200BB
ST M29F200BT
ST M29F400BB
ST M29F800DB
ST M29F800DT
Winbond W39L020
Winbond W39L040
Winbond W49F020

These still need to be added to flashchips.c, but if we ever encounter
them in real life, the ID->name lookup will be a lot easier.

Corresponding to flashrom svn r667.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2009-07-24 13:59:27 +00:00
Carl-Daniel Hailfinger
0a3e5aeaf6 If writing failed, verifying is pointless
Abort instead.

Corresponding to flashrom svn r666.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Oliver Niesner <oli@rhce.servebbs.net>
2009-07-24 12:18:54 +00:00
Carl-Daniel Hailfinger
21eedec3a6 Improve flashchip comments to be more readable and precise
Corresponding to flashrom svn r665.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Luc Verhaegen <libv@skynet.be>
2009-07-23 12:42:01 +00:00
Carl-Daniel Hailfinger
da65432eb6 Fix erase for SST49LF020A
The chip supports multiple erase functions, but the function we use has
an eraseblock size of 4k.

Corresponding to flashrom svn r664.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-07-23 01:44:38 +00:00
Carl-Daniel Hailfinger
49b9cab392 Continue erase/write verification after the first error
The first error is printed in detail and all subsequent errors are
listed in statistics. This allows users to check if there was just one
error or if the failure was widespread.

Corresponding to flashrom svn r663.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-07-23 01:42:56 +00:00
Carl-Daniel Hailfinger
32961be12d Add support for ST M25P05/M25P10 chips that only respond to RES and not RDID
Unfortunately, either the datasheets are wrong or both chips have
exactly the same ID.

Corresponding to flashrom svn r662.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-07-23 01:40:20 +00:00
Carl-Daniel Hailfinger
f8555e24a4 This is a workaround for a bug in SB600 and SB700
If we only send an opcode and no additional data/address, the SPI
controller will read one byte too few from the chip. Basically, the
last byte of the chip response is discarded and will not end up in the
FIFO. It is unclear if the CS# line is set high too early as well. That
hardware bug is undocumented as of now, but I'm working with AMD to add
a detailed description of it to the errata.

Add loads of additional debugging to SB600/SB700 init.

Add explanatory comments for unintuitive code flow.

Thanks go to Uwe for testing quite a few iterations of the patch.

Kill the SB600 flash chip status register special case, which was a
somewhat misguided workaround for that hardware erratum.

Note for future added features in the SB600 SPI driver: It may be
possible to read up to 15 bytes of command response with overlapping
reads due to the ring buffer design of the FIFO if the command can be
repeated without ill effects. Same for skipping up to 7 bytes between
command and response.

Corresponding to flashrom svn r661.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-07-23 01:36:08 +00:00
Carl-Daniel Hailfinger
414bd320ac Verbose probe output is split across multiple lines for some probe functions
This makes visual inspection and grepping a lot harder than necessary.
Remove line breaks where appropriate. Some error messages should end up
on stderr instead of just being displayed in verbose mode.

Thanks to Maciej Pijanka for testing.

Corresponding to flashrom svn r660.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-07-23 01:33:43 +00:00
Carl-Daniel Hailfinger
a80cfbc3d7 Eliminate version string duplication
Corresponding to flashrom svn r659.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
2009-07-22 20:13:00 +00:00