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

77 Commits

Author SHA1 Message Date
Nikolay Nikolaev
d07fde6884 Add support for AMIC A25LQ16 and A25LQ64
Also, refine unlocking of A25L032, A25LQ32A and A25LQ032.

Corresponding to flashrom svn r1689.

Signed-off-by: Nikolay Nikolaev <evrinoma@gmail.com>
Reviewed-by: Steven Zakulec <spzakulec@gmail.com>
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-06-28 21:29:21 +00:00
Nikolay Nikolaev
c08542b977 Add support for more Eon EN25QH chips
Add...
 - EN25QH64
 - EN25QH128
 - EN25QH256 (defunct due to addressing)

Corresponding to flashrom svn r1688.

Signed-off-by: Nikolay Nikolaev <evrinoma@gmail.com>
Reviewed-by: Steven Zakulec <spzakulec@gmail.com>
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-06-28 21:29:14 +00:00
Nikolay Nikolaev
d0e3ea1470 Add support for Eon EN25S series
Add...
 - EN25S10
 - EN25S20
 - EN25S40
 - EN25S80
 - EN25S16
 - EN25S32
 - EN25S64

Corresponding to flashrom svn r1687.

Signed-off-by: Nikolay Nikolaev <evrinoma@gmail.com>
Reviewed-by: Steven Zakulec <spzakulec@gmail.com>
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-06-28 21:29:08 +00:00
Nikolay Nikolaev
01dac17ec5 Add support for Numonyx M45PE series
Add...
 - M45PE10
 - M45PE20
 - M45PE40
 - M45PE80
 - M45PE16

Corresponding to flashrom svn r1686.

Signed-off-by: Nikolay Nikolaev <evrinoma@gmail.com>
Reviewed-by: Steven Zakulec <spzakulec@gmail.com>
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-06-28 21:29:03 +00:00
Nikolay Nikolaev
3f3390b22c Add support for some GigaDevice GD25* chips
Add...
 - GigaDevice GD25T80
 - GigaDevice GD25Q10
 - GigaDevice GD25Q512

Also, improve some others.

Corresponding to flashrom svn r1685.

Signed-off-by: Nikolay Nikolaev <evrinoma@gmail.com>
Reviewed-by: Steven Zakulec <spzakulec@gmail.com>
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-06-28 21:28:56 +00:00
Nikolay Nikolaev
384de8e745 Add support for all Sanyo LE25FW chips
Add...
 - Sanyo LE25FW403A
 - Sanyo LE25FW418A
 - Sanyo LE25FW806
 - Sanyo LE25FW808

Also, fix wrong description of Sanyo LE25FW203A.

Corresponding to flashrom svn r1684.

Signed-off-by: Nikolay Nikolaev <evrinoma@gmail.com>
Reviewed-by: Steven Zakulec <spzakulec@gmail.com>
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-06-28 21:28:49 +00:00
Stefan Tauner
b6b00e99aa Add support for Nantronics N25 series
Add...
 - N25S10
 - N25S20
 - N25S40
 - N25S80
 - N25S16

Corresponding to flashrom svn r1683.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2013-06-28 21:28:43 +00:00
Stefan Tauner
cecb2c56d0 Fix unlocking function for most Atmel AT2[56]D* chips
I broke unlocking them correctly in r1635 while refactoring (NB: the
commit log including the overly selfconfident statement about the
"bug in spi_disable_blockprotect_at25df()").

Affected chips have per sector protection bits and the write protection bits
in the status register do indicate if none, some or all sectors are protected.
It is possible to globally (un)lock all sectors at once but in a way that was
not anticipated when refactoring the spi25 unlocking functions into
spi_disable_blockprotect_generic(). To globally unprotect not only the
protection bits (2 and 3) have 0 to be written to them but also bits 4 and 5
which normally would not be touched by spi_disable_blockprotect_generic().
Some of the chips also support a permanent lockdown with fuses which we
do not handle yet.

To fix this without copying the whole method I introduce another mask
parameter to spi_disable_blockprotect_generic() namely unprotect_mask.
See verbose comments inline for details.

Also, prettyprint the status register after trying to disable the block
protection fails.

Corresponding to flashrom svn r1679.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Tested-by: Chi Zhang <zhangchi866@gmail.com>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-06-20 22:55:41 +00:00
Yung-Chieh Lo
b13d4e6992 Add W25Q...W series
- Use ".V" (and "_V" in macros) for 3.3V Winbond 25Q chips.
   Rename the existing chips and add a .voltage entry where it was missing.
 - Use ".W" (and "_W" in macros) for 1.8V Winbond 25Q chips.
 - Add W25Q20.W, W25Q40.W, W25Q80.W, W25Q16.W, W25Q32.W, W25Q64.W.
 Based on chromiumos' 469707f0d9b7d81b6c6bb2cace13f09db70f4382
 http://git.chromium.org/gitweb/?p=chromiumos/third_party/flashrom.git;a=commitdiff;h=469707f0d9b7d81b6c6bb2cace13f09db70f4382

Corresponding to flashrom svn r1677.

Signed-off-by: Yung-Chieh Lo <yjlou%chromium.org@gtempaccount.com>
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-06-09 14:00:46 +00:00
Stefan Tauner
f44516121a Add support for PMC Pm25LD series
This patch adds support for
 - Pm25LD256C
 - Pm25LD512(C)
 - Pm25LD010(C)
 - Pm25LD020(C)
 - Pm25LD040(C)

These seem to be the successors of the Pm25LV series.
The main difference seems to be the dual I/O and additional erase opcodes.
Some support an additional, complex locking register (maybe all of the
above, but available datahsheets do not indicate it for all).

The Pm25LD512C was tested by Chi Zhang:
http://paste.flashrom.org/view.php?id=1579

Corresponding to flashrom svn r1671.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-04-19 01:59:15 +00:00
Stefan Tauner
3f5e35db4b Refine PMC Pm25LV series
- Add missing bits and resort chips
 - Refine Pm25LV512(A) and Pm25LV010
   Due to manufacturer ID continuation this one needs a new probing
   function: probe_spi_res3() which should be refactored in the future.
   The datasheet describes a very weird order of ID bytes:
   Vendor byte, model byte, vendor continuation byte. Let's pretend we did
   not read that or the datasheet is bogus (although the datasheet of the
   successor series describes the same but luckily additionally to RDID).
 - Add Pm25LV010A
   This was tested by Chi Zhang:
   http://paste.flashrom.org/view.php?id=1573

Corresponding to flashrom svn r1670.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-04-19 01:58:33 +00:00
Stefan Tauner
226037da3d Fix evil twins of Macronix MX25L1605, MX25L3205, MX25L6405
Similarly to the patch in r1647 this one updates the chips identified as above
with references to and data about their respective twins. Unlike previously this
one deals with the more evil details.

Helge Wagner from GE discovered some problems with chips sharing IDs
and proposed a patch to tackle (some of) them, see:
http://patchwork.coreboot.org/patch/3709/
That patch was bitrotting in our mailboxes for a long time and it is still not
ready for merge, but we increasingly get reports about problems (e.g.
http://paste.flashrom.org/view.php?id=1525) regarding these chips and
hence must act to ensure users' safety.

This patch splits the chip definitions of evil twins into separate ones which
correctly declare the respective attributes (the main problems are the erase
block sizes for the 0x20 opcode and hence my changes combine different
chips with partly different attributes apart from their names as long as the
erasers layout it the same). This forces the user to select the (right) chip
definition with the -c/--chip parameter and hence will break a number of
previously perfectly working environments.

0x2015 is used by and split to
 - MX25L1605 (64kB sectors in 0x20 erases)
 - MX25L1605A/MX25L1606E (4kB in 0x20 erases and an additional 0x52 opcode with 64kB blocks)
 - MX25L1605D/MX25L1608D (4k sectors in 0x20 erases)

0x2016 is used by and split to
 - MX25L3205/MX25L3205A (64kB 0x20)
 - MX25L3205D/MX25L3208D (4kB 0x20)
 - MX25L3206E (4k 0x20, 64k 0x52)

0x2017 is used by and split to
 - MX25L6405/MX25L6405D (64k 0x20)
 - MX25L6406E/MX25L6436E (4k 0x20)
 - MX25L6445E (4k 0x20, 64k 0x52)

Bonus: add some minor details to MX25L1635D, MX25L1635E, MX25L3235D,
MX25L12805D.

Tested with MX25L3206E, MX25L64036E.

Corresponding to flashrom svn r1657.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-03-16 01:22:12 +00:00
Kyösti Mälkki
c54adc5852 Add M25P20-old
This older (ST-branded) revision of M25P20 chip does not support RDID and
hence was not detected correctly. This patch adds a workaround similar
to M25P40-old.

Corresponding to flashrom svn r1652.

Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-03-04 01:20:28 +00:00
Stefan Tauner
352e50b79e Add a bunch of new/tested stuff and various small changes 17
Tested Mainboards:
OK:
 - Acer V75-M (used in IBM Aptiva 2170-G)
   http://www.flashrom.org/pipermail/flashrom/2012-December/010300.html
 - Acorp 6M810C
   http://www.flashrom.org/pipermail/flashrom/2013-January/010433.html
 - ASRock G31M-S rev 2.0
   http://www.flashrom.org/pipermail/flashrom/2013-February/010538.html
 - ASUS F1A75-V PRO
   http://paste.flashrom.org/view.php?id=1528
 - ASUS M5A97 (rev. 1.0)
   http://www.flashrom.org/pipermail/flashrom/2013-February/010483.html
 - ASUS P5KPL-AM IN/GB
   http://www.flashrom.org/pipermail/flashrom/2013-January/010455.html
 - GABYTE GA-H77M-D3H
   http://www.flashrom.org/pipermail/flashrom/2013-February/010538.html

NOT OK:
 - GIGABYTE GA-Z77MX-D3H
   http://paste.flashrom.org/view.php?id=1529
   http://paste.flashrom.org/view.php?id=1530

Tested flash chips:
 - Winbond W25X10 to PREW (+PREW)
   Reported on IRC(?)
 - Eon EN25Q32(A/B) to PREW (+REW)
   http://www.flashrom.org/pipermail/flashrom/2013-February/010533.html
 - Eon EN25Q64 to PREW (+PREW)
   http://www.flashrom.org/pipermail/flashrom/2013-January/010466.html

Miscellaneous:
- Fix superflouos line breaks in wiki mainboard and laptop output.
- Use the .nh (no hyphenation) command in the manpage to enforce
  single-line URLs where useful.
- Reference the manpage (besides the Laptops wiki page) in the laptop warning.
- Minor output and whitespace fixes.
- Add Fidelix IDs.
- Add ISSE clones of PMC chips.
- Fix typo: EMST -> ESMT.
- Add ID of ESMT F25D08QA.
- Refine GigaDevice GD25Q series (missing voltages and comments).
- Use underscore instead of lower-case x as wildcard in Sharp chip names.

Corresponding to flashrom svn r1650.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-02-22 15:58:45 +00:00
Stefan Tauner
f656e8088e Update Macronix MX25L512, MX25L1005, MX25L2005, MX25L4005, MX25L8005
Update MX25L512 with references to and data about
  MX25L512E, MX25V512, MX25V512C.
Update MX25L1005 with references to and data about
  MX25L1005C, MX25L1006E.
Update MX25L2005 with references to and data about
  MX25L2005C.
Update MX25L4005 with references to and data about
  MX25L4005A, MX25L4005C.
Update MX25L8005 with references to and data about
  MX25V8005.

Bonus: add chip IDs of MX25U1635E, MX25U3235E/F, MX25U6435E/F.

Corresponding to flashrom svn r1647.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-02-02 15:35:44 +00:00
Stefan Tauner
e34e3e8a49 Add a bunch of new/tested stuff and various small changes 16
Tested Mainboards:
OK:
 - Acer V75-M (used in IBM Aptiva 2170-G
   http://www.flashrom.org/pipermail/flashrom/2012-December/010300.html
 - ASRock 4CoreDual-VSTA with W39V040FB
   http://paste.flashrom.org/view.php?id=1446
 - ASRock 775Dual-VSTA
   http://www.flashrom.org/pipermail/flashrom/2012-December/010294.html
 - ASRock E350M1/USB3
   http://paste.flashrom.org/view.php?id=1465
 - ASUS P5B-VM
   http://www.flashrom.org/pipermail/flashrom/2012-December/010351.html
 - ASUS SABERTOOTH 990FX R2.0
   http://www.flashrom.org/pipermail/flashrom/2012-December/010210.html
 - Elitegroup A928 (including a laptop whitelist board enable)
   http://www.flashrom.org/pipermail/flashrom/2012-November/010119.html
 - EVGA 122-CK-NF68
   Reported by Stephanie Daugherty on IRC
   http://paste.flashrom.org/view.php?id=1431
 - GIGABYTE GA-A75M-UD2H
   Reported by Soul_keeper on IRC
   http://paste.flashrom.org/view.php?id=1490
 - Intel D945GCNL
   Add board enable to override laptop detection too.
   http://www.flashrom.org/pipermail/flashrom/2012-December/010276.html
 - MSI G33M (MS-7357)
   http://www.flashrom.org/pipermail/flashrom/2012-October/010056.html
 - Shuttle FB61
   http://www.flashrom.org/pipermail/flashrom/2012-November/010105.html
 - Tyan S4882 (Thunder K8QS Pro)
   Reported on IRC
NOT OK:
   Alienware Aurora-R2
   http://www.flashrom.org/pipermail/flashrom/2012-December/010225.html
   Biostar H61MU3
   http://www.flashrom.org/pipermail/flashrom/2012-November/010144.html
   Dell OptiPlex 7010
   http://paste.flashrom.org/view.php?id=1481
   Intel DH67CL
   http://www.flashrom.org/pipermail/flashrom/2012-November/010112.html
   Supermicro X9DRT-HF+
   http://www.flashrom.org/pipermail/flashrom/2012-November/010155.html
   Supermicro X9DRW
   http://www.flashrom.org/pipermail/flashrom/2012-November/010150.html

Tested flash chips:
 - Atmel AT25FS010 to PREW (+PREW)
   http://paste.flashrom.org/view.php?id=1484
 - Eon EN25F64 to PREW (+EW)
   http://www.flashrom.org/pipermail/flashrom/2012-December/010210.html
 - Spansion S25FL032A/P to PREW (+EW)
   http://paste.flashrom.org/view.php?id=1510
 - ST M29F002T/NT to PREW (+PREW)
   http://www.flashrom.org/pipermail/flashrom/2012-December/010300.html
 - Winbond W25X10 to PREW (+PREW)
   http://paste.flashrom.org/view.php?id=1486

Tested chipsets:
 - NVIDIA MCP78S http://www.flashrom.org/pipermail/flashrom/2012-November/010176.html
 - SiS 650 http://www.flashrom.org/pipermail/flashrom/2012-November/010119.html

Miscellaneous:
- Typo in GA-X58A-UDR3 (correct is GA-X58A-UD3R).
- Force 2-digit hex numbers in prints were it makes sense.
- Share code between enable_flash_sis530() and enable_flash_sis540().
- Some SST 25 series chips support both WRSR enable commands...
- S25FL032A and S25FL064A share the IDs with their P versions, so rename them.
- Fix a few memleaks in serprog.
- Dediprog uses UINT_MAX so include limits.h (fixes the Windows build of dediprog)
- Add (another) hint regarding the mandatory -p parameter to the manpage
  to make Debian bug #690478 happy.
  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=690478
- Fix whitespace issues.
- On shutdown, reset count of registered programmers (by Nico Huber)
- Fix atahpt.c shutdown.
  The order of pcidev_init, register_shutdown and rpci_write_* is important!
  Thanks to Roy for reporting the problem and testing the fix.

Corresponding to flashrom svn r1640.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2013-01-01 00:06:51 +00:00
Stefan Tauner
57794ac158 Add support for Atmel's AT25F series of SPI flash chips
This adds support for the following chips:
 - AT25F512, AT25F512A, AT25F512B
 - AT25F1024, AT25F1024A
 - AT25F2048
 - AT25F4096

Besides the definitions of the the chips in flashchips.c this includes
- a dedicated probing method (probe_spi_at25f)
- pretty printing methods (spi_prettyprint_status_register_at25f*), and
- unlocking methods (spi_disable_blockprotect_at25f*)

Corresponding to flashrom svn r1637.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2012-12-29 15:04:20 +00:00
Stefan Tauner
54aaa4ae2b Add support for Intel S33 series flash chips
This includes:
Bottom boot block:
* 16Mb/2MB:
  QB25F160S33B8, QB25F016S33B8, QH25F160S33B8, QH25F016S33B8
* 32Mb/4MB:
  QB25F320S33B8, QH25F320S33B8
* 64Mb/8MB:
  QB25F640S33B8, QH25F640S33B8

Top boot block:
* 16Mb/2MB:
  QB25F160S33T8, QB25F016S33T8, QH25F160S33T8, QH25F016S33T8
* 32Mb/4MB:
  QB25F320S33T8, QH25F320S33T8
* 64Mb/8MB:
  QB25F640S33T8, QH25F640S33T8

At least some seem to be marketed by other vendors (too?) but also with
Intel's vendor ID.

Besides a 0xC7 chip erase and a 0xD8 uniform 64kB block erase they
support also erasing the top/bottom 8 8kB blocks with opcode 0x40.
But since this command fails for all addresses outside those ranges,
it is not easily implemented with flashrom's current code base and
hence left out.

Corresponding to flashrom svn r1636.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2012-12-29 15:04:12 +00:00
Kyösti Mälkki
c31243e173 Add support for Winbond W39F010/W39L010/W39L020
W39F010 is a 128kB parallel 5V flash chip, 16k bootblocks.
W39L010 is a 128kB parallel 3.3V flash chip, 8k bootblocks.
W39L020 is a 256kB parallel 3.3V flash chip, 64k/16k bootblocks.

The W39F010 code was tested with a satasii programmer. The first write
attempt after an erase returned with verify failure, but the second
write attempt was succesful:
http://paste.flashrom.org/view.php?id=1418

Corresponding to flashrom svn r1620.

Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2012-10-28 01:50:08 +00:00
Stefan Tauner
d956f82249 Add support for Numonyx N25Q016 and N25Q032
The 32Mb version has 1.8V and 3.0V versions, the smaller one 1.8V only
(or Numonyx/Micron forgot to publish it). Another difference is that the
16Mb chip has 32 kB subsectors (erase opcode 0x52). As long as there
are no funky configurations like for the 128Mb chips, we got the smaller
parts covered with this change.

Corresponding to flashrom svn r1615.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2012-10-26 16:49:15 +00:00
David Hendricks
99f947ddc8 Differentiate Numonyx N25Q064 1.8V and 3.0V versions
This patch differentiates between the N25Q064 1.8V version and 3.0V
version which have different JEDEC IDs.

It extends the chip name to include more characters of the part
number. The first two of those characters indicate the process
technology (65nm) and feature set (hold pin etc.), neither of which
matter for flashrom at the moment. The third and fourth characters
specify voltage and block/sector size and uniformity, which are
important and hence included.

To abstract the irrelevant portions of the part number leading up to
the characters we care about, dots are used. This helps prevent
unwanted changes in chip name that can break fragile scripts and
confuse people. More about this schema here:
http://www.flashrom.org/pipermail/flashrom/2012-July/009595.html

Corresponding to flashrom svn r1612.

Signed-off-by: David Hendricks <dhendrix@google.com>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2012-10-04 14:41:20 +00:00
Bryan Freed
5bfef9d321 Add support for GigaDevice GD25LQ32
This is the low power version (vendor,device = 0xc8,0x6016) of
GD25Q32 (0xc8,0x4016) which matches that of W25Q32 (0xef,0x4016) and
W25Q32DW (0xef,0x6016).  All their datasheets look pretty much the
same with respect to commands, erase blocks, etc.

Stolen from chromiumos:
http://git.chromium.org/gitweb/?p=chromiumos/third_party/flashrom.git;a=commitdiff;h=9a0051f0ba0b67af6f08e052c31cba3e9dbbbdbf

Corresponding to flashrom svn r1598.

Signed-off-by: Bryan Freed <bfreed@chromium.org>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2012-09-17 00:05:44 +00:00
Stefan Tauner
d932fd0d8c Add support for Eon EN25F64
Its ID was spotted in an ICH descriptor region update by Jetway:
http://paste.flashrom.org/view.php?id=1217 and is used on ASUS P8B75-V
boards according to some forum posts (2 chips per board actually).

No datasheet was found, so most values are just guessed from the EN25F32.

Corresponding to flashrom svn r1594.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2012-09-06 17:37:16 +00:00
Andrew Morgan
8dd97f9c9e Add support for Atmel AT49(H)F010, AT49F080 and AT49F080T
Also, alter the page size of the other family members to indicate that it is
unused. Maybe this accelerates the deletion of this field... haha.

Corresponding to flashrom svn r1572.

Signed-off-by: Andrew Morgan <ziltro@ziltro.com>
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2012-08-13 23:43:46 +00:00
Stefan Tauner
2cef9164ef Add support for Eon EN25QH32
Its ID was spotted in an descriptor region update by Jetway:
http://paste.flashrom.org/view.php?id=1217

Corresponding to flashrom svn r1535.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2012-05-14 01:51:46 +00:00
David Borg
f5a30f65ad Add support for for the Atmel AT49F040 chip
Chip features an optional permanent boot block write protection.

Corresponding to flashrom svn r1522.

Signed-off-by: David Borg <borg.db@gmail.com>
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2012-04-15 13:16:32 +00:00
Rudolf Marek
47eff6b5b4 Add support for the Eon EN29LV640B chip
This chip needs special command sequences in 8 bit mode. Also, 8 bit
programming needs actually 16bit double byte program.

The chip is found on the Bifferos Bifferboard, for example.

Corresponding to flashrom svn r1521.

Signed-off-by: Rudolf Marek <r.marek@assembler.cz>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2012-04-14 22:51:40 +00:00
Justin Chevrier
1525b2ad16 Add GigaDevice GD25QXX series support
http://www.gigadevice.com/Product/SPI.php?WebPageTypeId=98&WebPageTypeId
2=151&WebPageTypeId3=134

The GD25Q80 has been successfully tested, the other ones are marked as
untested for now.

http://www.flashrom.org/pipermail/flashrom/2012-March/009028.html

Corresponding to flashrom svn r1520.

Signed-off-by: Justin Chevrier <jchevrier@gmail.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2012-04-14 21:59:23 +00:00
Niklas Söderlund
ae4294fa00 Add support for the Numonyx N25Q064 chip
All operations were successfully tested.
http://www.flashrom.org/pipermail/flashrom/2012-April/009048.html

Corresponding to flashrom svn r1518.

Signed-off-by: Niklas Söderlund <niklas.soderlund@ericsson.com>
Acked-by: Idwer Vollering <vidwer@gmail.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2012-04-14 21:04:03 +00:00
Stefan Tauner
ac1b4c8bd7 Add support for SFDP (JESD216)
Similar to modules using the opaque programmer framework (e.g. ICH Hardware
Sequencing) this uses a template struct flashchip element in flashchips.c with
a special probe function that fills the obtained values into that struct.

This allows yet unknown SPI chips to be supported (read, erase, write) almost
as if it was already added to flashchips.c.

Documentation used:
http://www.jedec.org/standards-documents/docs/jesd216 (2011-04)
W25Q32BV data sheet Revision F (2011-04-01)
EN25QH16 data sheet Revision F (2011-06-01)
MX25L6436E data sheet Revision 1.8 (2011-12-26)

Tested-by: David Hendricks <dhendrix@google.com>
on W25Q64CV + dediprog
Tested-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
on a 2010 MX25L6436E with preliminary (i.e. incorrect) SFDP implementation + serprog

Thanks also to Michael Karcher for his comments and preliminary review!

Corresponding to flashrom svn r1500.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2012-02-17 14:51:04 +00:00
Paul Menzel
ac427b22c4 Add a bunch of new/tested stuff and various small changes 10
Tested mainboards:
OK:
 - ABIT A-S78H
   http://www.flashrom.org/pipermail/flashrom/2012-January/008603.html
 - ASRock AM2NF6G-VSTA
   http://www.flashrom.org/pipermail/flashrom/2012-January/008534.html
 - ASUS KFSN4-DRE/SAS
   reported by ted on IRC
 - ASUS M2A-VM (HDMI variant)
   http://www.flashrom.org/pipermail/flashrom/2012-January/008509.html
 - ASUS M4N78 PRO
   http://www.flashrom.org/pipermail/flashrom/2012-January/008598.html
 - ASUS P5K-V
   http://www.flashrom.org/pipermail/flashrom/2012-February/008737.html
 - ASUS P5KPL-CM
   http://www.flashrom.org/pipermail/flashrom/2012-January/008522.html
 - ASUS P5N7A-VM
   http://www.flashrom.org/pipermail/flashrom/2012-January/008508.html
 - ASUS P5QPL-AM
   http://www.flashrom.org/pipermail/flashrom/2012-January/008557.html
 - ECS GF7100PVT-M3
   http://www.flashrom.org/pipermail/flashrom/2011-December/008412.html
 - ECS K7SEM
   http://www.flashrom.org/pipermail/flashrom/2011-December/008362.html
 - ECS P4M800PRO-M V2.0
   http://www.flashrom.org/pipermail/flashrom/2012-January/008478.html
 - Gigabyte 880GMA-USB3
   http://www.flashrom.org/pipermail/flashrom/2012-February/008715.html
 - Gigabyte GA-EP31-DS3L
   http://www.flashrom.org/pipermail/flashrom/2012-January/008601.html
 - Gigabyte GA-X58A-UDR3
   http://www.flashrom.org/pipermail/flashrom/2012-January/008572.html
 - Gigabyte GA-Z68XP-UD3
   http://paste.flashrom.org/view.php?id=1058
 - HP ProLiant N40L
   http://www.flashrom.org/pipermail/flashrom/2012-February/008650.html
 - MSI MS-7309 (K9N6PGM2-V2)
   http://www.flashrom.org/pipermail/flashrom/2011-December/008441.html
 - MSI MS-7548 (Aspen-GL8E used in HP Pavilion a6750f)
   http://www.flashrom.org/pipermail/flashrom/2012-February/008666.html
 - MSI MS-7676 (H67MA-ED55(B3))
   http://www.flashrom.org/pipermail/flashrom/2012-January/008547.html
 - PC Engines Alix.6f2
   Reported by Philip Prindeville on IRC
 - Shuttle AV18E2
   http://www.flashrom.org/pipermail/flashrom/2011-December/008459.html
 - Supermicro X8DTE-F
   http://www.flashrom.org/pipermail/flashrom/2011-November/008304.html
 - Supermicro X8DTT-HIBQF
   http://www.flashrom.org/pipermail/flashrom/2012-January/008520.html
NOT OK:
 - ASUS P8H61-M LE/USB3
   http://www.flashrom.org/pipermail/flashrom/2012-January/008491.html
 - ASUS P8H67-M PRO
   http://www.flashrom.org/pipermail/flashrom/2011-December/008321.html
 - ASUS P8Z68-V PRO
   http://www.flashrom.org/pipermail/flashrom/2012-January/008469.html
 - Clevo P150HM (laptop)
   http://www.flashrom.org/pipermail/flashrom/2012-February/008717.html
 - Intel D425KT
   http://www.flashrom.org/pipermail/flashrom/2012-January/008600.html
 - Supermicro X9SCA-F
   http://www.flashrom.org/pipermail/flashrom/2011-December/008313.html

Tested flash chips:
 - mark AT29C512 as TEST_OK_PREW
   http://paste.flashrom.org/view.php?id=977
 - mark M25P40 as TEST_OK_PREW
   http://www.flashrom.org/pipermail/flashrom/2011-December/008351.html
 - mark M25PE80 as TEST_OK_PREW
   http://paste.flashrom.org/view.php?id=1061
 - mark MX25L6405 as TEST_OK_PREW
   tested myself with an MX25L6436E variant on serprog
 - mark W39V080A as TEST_OK_PREW
   http://www.flashrom.org/pipermail/flashrom/2012-January/008509.html

Tested chipsets:
 - SiS 730 (:0730)
   http://www.flashrom.org/pipermail/flashrom/2011-December/008362.html
 - NVIDIA MCP61 (:03e0)
   http://www.flashrom.org/pipermail/flashrom/2012-January/008534.html
 - NVIDIA MCP73 (:07d7)
   http://www.flashrom.org/pipermail/flashrom/2011-December/008412.html
 - NVIDIA MCP79 (:0aac)
   http://www.flashrom.org/pipermail/flashrom/2012-January/008508.html
 - VIA VT82C69x (0691) and VT82C686A/B (:0686)
   http://www.flashrom.org/pipermail/flashrom/2011-December/008459.html

 - AMD's SB950 (and presumably also SB920) have the same PCI ID as previous
   generations, hence change the chipset enable device string. Thanks to
   Christian Ruppert for the suggestion.
 - Fix the board enable of the abit NF-M2 nView which had the IDs of its onboard
   graphics card in its pattern. Change this to the LPC controller.
 - Intel X79 SPI registers are identical to 6 Series', so use the chipsetenable
   wrapper of it (enable_flash_pch6).
 - Fix two paranoid checks for address < 0 in ichspi.c which became futile (and
   generate clang warnings) with the unsignify patch committed in r1470.
 - Rename AT25DF641 to AT25DF641(A). They are almost idencical, but could
   be distinguished by an extended RDID probe (Atmel's patented EDI procedure),
   which we do not support yet, hence handle them as one model for now.
 - Source format fixes and typos

Corresponding to flashrom svn r1499.

the addition of the ASRock AM2NF6G-VSTA to print.c is
Signed-off-by: Paul Menzel <paulepanter@users.sourceforge.net>
everything else is
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2012-02-16 21:07:07 +00:00
Carl-Daniel Hailfinger
532c717bcc Add opaque programmer registration infrastructure
An opaque programmer does not allow direct flash access and only offers
abstract probe/read/erase/write methods.
Due to that, opaque programmers need their own infrastructure and
registration framework.

Corresponding to flashrom svn r1459.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Michael Karcher <flashrom@mkarcher.dialup.fu-berlin.de>
2011-11-04 21:35:26 +00:00
Andrew Morgan
ca081461af Add probe/read support for the Catalyst CAT28F512 chip
Write and erase are NOT yet supported!

Probe and read are tested by Andrew Morgan and Uwe Hermann on Intel NICs.

Corresponding to flashrom svn r1439.

Signed-off-by: Andrew Morgan <ziltro@ziltro.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2011-09-13 22:05:44 +00:00
Uwe Hermann
c74e977627 Add initial Atmel AT49LH002 FWH/LPC chip support
The chip code is untested, only one erase function out of two is currently
implemented, and unlocking/printlocking is not yet supported.

Thanks Mattias Mattsson <vitplister@gmail.com> for the initial patch!

Corresponding to flashrom svn r1434.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2011-09-08 19:55:18 +00:00
Sylvain "ythier" Hitier
3093f8f75e Add a bunch of new/tested stuff and various small changes 7
- add Asus Crosshair IV Extreme to the list of supported boards
  http://www.flashrom.org/pipermail/flashrom/2011-August/007640.html
- add Biostar N68S3+ to the list of supported boards
  http://www.flashrom.org/pipermail/flashrom/2011-September/007788.html
- add P7H55-M LX to the list of supported boards
  although flashrom works correctly, it is marked as not ok, because flashing the
  vendor image will break the LAN interface.
- add GA-X58A-UD7 to the list of supported boards
  http://paste.flashrom.org/view.php?id=739
- add Asus P4P800-VM to print.c
  (has a working board enable)
- add Asus K8V-X to print.c
  reported by florz
  http://paste.flashrom.org/view.php?id=742
- add Intel D865GLC to print.c as non-working (ICH5 with BIOS lock enable)
  reported by jmd on IRC
  http://paste.flashrom.org/view.php?id=775
- add Intel DH67CF to print.c as non-working (H67 with BIOS lock enable and locked ME region)
  http://www.flashrom.org/pipermail/flashrom/2011-September/007789.html
- add ECS P4M800PRO-M (V1.0A) to the list of supported boards
  reported by dweg on IRC (hot flashed a SST49LF040B, original was W39V040B)
- add X8DTU-6TF+ to print.c (needs ME unlocking)
  http://www.flashrom.org/pipermail/flashrom/2011-August/007553.html
- add Shuttle FH67 (used in the SH67H3 barebone) to the list of supported boards
  http://www.flashrom.org/pipermail/flashrom/2011-August/007749.html
- add Tyan S2912 to the list of supported boards
  reported by erlan on IRC
- add ZOTAC GeForce 8200 to the list of supported boards
  http://www.flashrom.org/pipermail/flashrom/2011-August/007612.html

- mark AT25DF321A as TEST_OK_PROBE
  http://www.flashrom.org/pipermail/flashrom/2011-August/007553.html
- mark 28F001BN/BX-T as TEST_OK_PR
  http://www.flashrom.org/pipermail/flashrom/2011-July/007208.html
- rename MX29F002
  http://patchwork.coreboot.org/patch/2794/
- mark SST39SF040 as fully tested
  reported by Florian 'florz' Zumbiehl
  http://paste.flashrom.org/view.php?id=742
- mark SST49LF040B as fully tested
  reported by dweg on IRC and later by Armin on the ml:
  http://www.flashrom.org/pipermail/flashrom/2011-August/007764.html

- mark H55 chipset as OK
  http://www.flashrom.org/pipermail/flashrom/2011-July/007432.html
- mark H67 chipset as OK
  http://www.flashrom.org/pipermail/flashrom/2011-August/007749.html
- mark a MCP61 version as OK
  http://www.flashrom.org/pipermail/flashrom/2011-September/007788.html
- add preliminary X79 (patsburg) PCI IDs
  0x1d40 was reported already as working (not archived in our pipermail?)
  http://marc.info/?l=flashrom&m=130683026218257&w=2

- mark "82557/8/9/0/1 Ethernet Pro 100" in nicintel.c as working
  http://www.flashrom.org/pipermail/flashrom/2011-August/007480.html

- rename some chips that had gratuitous "probing" suffixes:
  - SST25VF010.REMS
  - SST25VF040.REMS
  - M25P05.RES
  - M25P10.RES
  some other chip names with suffixes are needed due to lack of support
  for multiple probe functions per chip. this is explained here:
  http://www.flashrom.org/pipermail/flashrom/2011-August/007597.html

- remove unneeded nicintel_spi-related function declarations in programmer.h

- typos and whitespace fixes

- fix Asus P4P800-E Deluxe detection
  The original board enable was added before DMI matching and used
  the IDs of a Promise controller as secondary PCI ID set. The
  controller could be disabled in the BIOS which would make the
  board not match. This patch uses the SMBus controller instead and
  adds a DMI pattern. This was
Tested-by: Michael Schneider <vdrportal_midas at gmx dot de>

Corresponding to flashrom svn r1425.

- add "Sealed-case PC" to the list of chassis type (as indicating "not a laptop")
This is
Acked-by: Idwer Vollering <vidwer@gmail.com>

the fix for the typo unusued -> unused is
Signed-off-by: Sylvain "ythier" Hitier <sylvain.hitier@gmail.com>

everything else is
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>

And everything was reviewed and
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2011-09-03 11:22:27 +00:00
David Hendricks
6d71530d43 Add support for EN25Q(H) series SPI flash chips
- EN25Q40
- EN25Q80
- EN25Q16 (half-evil twin of already supported EN25D16, hence merged)
- EN25Q32(A/B)
- EN25Q64
- EN25Q128

- EN25QH16

Corresponding to flashrom svn r1384.

Signed-off-by: David Hendricks <dhendrix@google.com>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2011-07-24 22:21:57 +00:00
Stefan Tauner
c0aaf95487 Whitespace, documentation and other small stuff
This patch combines three previously posted patches in a revised form.
one is even stolen from Stefan Reinauer (remove umlauts from man page).

Corresponding to flashrom svn r1317.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Signed-off-by: Stefan Reinauer <reinauer@google.com>

Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
2011-05-19 02:58:17 +00:00
Carl Worth
d1dd72c69d Add support for ST M25PX16 and mark it as supported
Tests were performed with write and verify operations to 4 different
M25PX16 chips with a Dediprog SF100.

Corresponding to flashrom svn r1270.

Signed-off-by: Carl Worth <carl.d.worth@intel.com>
Acked-by: Idwer Vollering <vidwer@gmail.com>
2011-03-06 18:45:40 +00:00
Carl-Daniel Hailfinger
c753e5bbf9 Add support for some AMD Am29LV* chips
Add support for AMD Am29LV001BB, Am29LV001BT, Am29LV002BB, Am29LV002BT,
Am29LV004BB, Am29LV004BT, Am29LV008BB, Am29LV008BT.

Thanks to Mark Pustjens for testing the Am29LV001BB.

Corresponding to flashrom svn r1260.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
2011-02-05 12:11:17 +00:00
Rudy Host
f4e57776ee Add support for Spansion S25FL004A, S25FL032A, and S25FL064A
Tested S25FL064A using a Bus Pirate.

Corresponding to flashrom svn r1237.

Signed-off-by: Rudy Host <segfault@committeeofdoom.com>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2010-11-29 00:37:49 +00:00
Mattias Mattsson
cbee4a7242 Make sure all chip variants are present in .name strings in flashchips.c
Strip package prefix in constant names (everything before "28F").

Prefix every constant name with INTEL_

Sort intel chip constants by ID.

Rename the following constants to their "canonical" name:

P28F400BT (0x70  -> INTEL_28F400T (28F400BV/BX/CE/CV-T)
P28F400BB (0x71) -> INTEL_28F400B (28F400BV/BX/CE/CV-B)
P28F004BT (0x78) -> INTEL_28F004T (28F004B5/BE/BV/BX-T)
P28F004BB (0x79) -> INTEL_28F004B (28F004B5/BE/BV/BX-B)
E_28F008S5 (0xA6) -> INTEL_28F008S3 (28F008S3/S5/SC)
E_28F004S5 (0xA7) -> INTEL_28F004S3 (28F008S3/S5/SC)
P28F001BXT (0x94) -> INTEL_28F001T (28F001BN/BX-T)
P28F001BXB (0x95) -> INTEL_28F001B (28F001BN/BX-B)
E_28F016S5 (0xAA) -> INTEL_28F016S3 (28F016S3/S5/SC)

Add chip IDs for the following chips:

28F320J5
28F640J5
28F320J3
28F640J3
28F128J3
28F256J3
28F200BL/BV/BX/CV-T
28F200BL/BV/BX/CV-B
28F002BL/BV/BX-B
28F008BE/BV-T
28F008BE/BV-B
28F800B5/BV/CE/CV-T
28F800B5/BV/CE/CV-B
28F016SA/SV
28F008SA
28F008S3/S5/SC
28F008S3/S5/SC
28F016XS
28F010
28F512
28F256A
28F020
28F016B3-T
28F016B3-B
28F008B3-T
28F008B3-B
28F004B3-T
28F004B3-B

Corresponding to flashrom svn r1189.

Signed-off-by: Mattias Mattsson <vitplister@gmail.com>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2010-10-05 20:28:36 +00:00
Mattias Mattsson
eaf5ead473 Add chip IDs for Alliance Semiconductor flash chips
Cross-checked with UniFlash 1.40 source, chip datasheets and
EZoFlash's chip database (http://www.ezoflash.com/chip_database.php).

Datasheets:
http://www.ezoflash.com/datasheets/flash/Alliance/AS29F002.pdf
http://www.alsc.com/pdf/flash.pdf/as29f010.pdf
http://www.alsc.com/pdf/flash.pdf/as29f040.pdf
http://www.alsc.com/pdf/flash.pdf/as29f200.pdf
http://www.ezoflash.com/datasheets/flash/Alliance/AS29LV160.pdf
http://www.ezoflash.com/datasheets/flash/Alliance/AS29LV400.pdf
http://www.ezoflash.com/datasheets/flash/Alliance/AS29LV800.pdf

Corresponding to flashrom svn r1179.

Signed-off-by: Mattias Mattsson <vitplister@gmail.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2010-09-18 23:42:36 +00:00
Joshua Roys
f1324e0063 Add chip definitions for the folowing chips
Bright BM29F040
Hyundai HY29F040A
Macronix MX29F040

Also add chip IDs for
Bright BM29F400T/B

Datasheets:
http://www.ezoflash.com/datasheets/flash/Winbond/BM29F040.pdf
http://www.ezoflash.com/datasheets/flash/Hyundai/HY29F040A.pdf
http://www.ezoflash.com/datasheets/flash/Macronix/MX29F040.pdf
http://www.ezoflash.com/datasheets/flash/Winbond/BM29F400T_B.pdf

Bright BM29F040 probe/read test report:
http://www.flashrom.org/pipermail/flashrom/2010-September/004805.html

Corresponding to flashrom svn r1176.

Signed-off-by: Joshua Roys <roysjosh@gmail.com>
Acked-by: Mattias Mattsson <vitplister@gmail.com>
2010-09-16 00:51:51 +00:00
Mattias Mattsson
6eabe282fe This patch changes the prefix of chip constant #defines in the following way
AM_* -> AMD_AM*
AT_* -> ATMEL_AT*
EN_* -> EON_EN*
HY_* -> HYUNDAI_HY*
MBM* -> FUJITSU_MBM*
MX_ID -> MACRONIX_ID
MX_* -> MACRONIX_MX*
PMC_* -> PMC_PM*
SST_* -> SST_SST*

It leaves the Intel #defines alone because there is another pending
patch for that:
http://patchwork.coreboot.org/patch/1937/

Some background discussion here:
http://www.flashrom.org/pipermail/flashrom/2010-July/004059.html

Corresponding to flashrom svn r1175.

Signed-off-by: Mattias Mattsson <vitplister@gmail.com>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2010-09-15 23:31:03 +00:00
Mattias Mattsson
a745cf4660 Various style/consistency fixes mainly for Winbond chips
Rename constants W_nnnn -> WINBOND_Wnnnn W_25nnn -> WINBOND_NEX_W25nnn.

Kill incorrect ASD chip and vendor id.

Group Winbond SPI and parallel chips separately (they have different
vendor IDs).

Change constant names to the "canonical" chip name for the following
ids:

W_29C020C (0x45)
 -> WINBOND_W29C020 (Same as W29C020C, W29C022 and ASD AE29F2008)

W_29C040P (0x46)
 -> WINBOND_W29C040 ("P" is for package type [32-pin PLCC], irrelevant)

W_29C011 + W_29EE011 (0xC1)
 -> WINBOND_W29C010 (Same as W29C010M, W29C011A, W29EE011, W29EE012,
    and ASD AE29F1008)


List all chip variants in the .name strings in flashchips.c


Have two identical entries for Winbond
W29C010(M)/W29C011A/W29EE011/W29EE012 but with different probe functions
in flashchips.c as sometimes (for newer revisions of these chips?) the
standard jedec probe seems to work. E.g. see test report here:
http://patchwork.coreboot.org/patch/1476/


Also add ids for the following Winbond chips:
W25Q40
W25Q128
W19B160BB
W19B160BT
W19B320SB/W19L320SB
W19B320ST/W19L320ST
W19B322MB
W19B322MT
W19B323MB
W19B323MT
W19B324MB
W19B324MT
W29C512A/W29EE512
W39L010
W39L040A
W39L512
W49F002/W49F002B

Corresponding to flashrom svn r1168.

Signed-off-by: Mattias Mattsson <vitplister@gmail.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2010-09-14 23:56:56 +00:00
Jason Shriver
4119e9b609 Add support for ST M25PX32 and M25PX64 flash chips
Probe, read, erase and write have been tested and all are functional.

Corresponding to flashrom svn r1165.

Signed-off-by: Jason Shriver <j.shriver@f5.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2010-09-14 13:16:01 +00:00
Stephan Guilloux
3611b80b40 Add support for the Macronix MX251635E chip
Corresponding to flashrom svn r1162.

Signed-off-by: Stephan Guilloux <stephan.guilloux@free.fr>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2010-09-13 19:59:28 +00:00
Mattias Mattsson
4c06650aff Add definitions for the following chips
Mosel Vitelic Corporation:
V29C51000B, V29C51000T, V29C51400B, V29C51400T, V29LC51000, V29LC51001,
V29LC51002

SyncMOS / Mosel Vitelic Corporation:
{F,S,V}29C51001B, {F,S,V}29C51001T, {F,S,V}29C51002B, {F,S,V}29C51002T,
{F,S,V}29C51004B, {F,S,V}29C51004T, {V,S}29C31004B, {V,S}29C31004T

Modify earlier definitions of
S29C31004T/S29C51001T/S29C51002T/S29C51004T to change name and correct
page size.

Corresponding to flashrom svn r1124.

Signed-off-by: Mattias Mattsson <vitplister@gmail.com>
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2010-07-29 20:01:13 +00:00
Dan Lenski
116171275c Add support for various AMIC A25L* chips
Add support for AMIC A25L512, A25L010, A25L020, A25L040, A25L080,
A25L016, A25L032 AMIC A25LQ032 (quad-rate read).

Corresponding to flashrom svn r1118.

Signed-off-by: Dan Lenski <dlenski@gmail.com>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2010-07-29 15:00:40 +00:00
Carl-Daniel Hailfinger
fd7075ae75 Add detailed status register printing and unlocking for all ATMEL AT25* chips
Add support for Atmel AT25DF081A and AT25DQ161.

Some chips require EWSR before WRSR, others require WREN before WRSR,
and some support both variants. Add feature_bits to select the correct
SPI command, and default to EWSR.

Corresponding to flashrom svn r1115.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Tested-by: Steven Rosario
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
2010-07-29 13:09:18 +00:00