- 18 Jan, 2010 1 commit
-
-
Sean Nelson authored
Corresponding to flashrom svn r865. Thanks to hailfinger's self-check-erase routine for catching this. Signed-off-by:
Sean Nelson <audiohacked@gmail.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 12 Jan, 2010 1 commit
-
-
Michael Karcher authored
Tested with read/erase/write (including verify). I only wrote the image that was read before - don't want to brick my laptop. Corresponding to flashrom svn r862. Signed-off-by:
Michael Karcher <flashrom@mkarcher.dialup.fu-berlin.de> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 10 Jan, 2010 1 commit
-
-
Carl-Daniel Hailfinger authored
They previously had TIMING_IGNORED, but now they use probe_jedec directly or indirectly and that function does not ignore probe timing. Corresponding to flashrom svn r856. Signed-off-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by:
Sean Nelson <audiohacked@gmail.com>
-
- 09 Jan, 2010 2 commits
-
-
Sean Nelson authored
Convert chips to block_erasers: ASD AE49F2008 AMIC A25L40P(T/U) AMIC A49LF040A EMST F49B002UA Eon EN25B05 Eon EN25B10 Eon EN25B20 Eon EN25B40 Eon EN25B80 Eon EN25B16 Eon EN25B32 Eon EN25B64 Eon EN25D16 Eon EN25F05 Eon EN25F10 Eon EN25F20 Eon EN25F40 Eon EN25F80 Eon EN25F16 Eon EN25F32 Intel 28F001BX-B Intel 28F001BX-T Intel 82802AB Intel 82802AC Macronix MX25L1635D Macronix MX25L3235D Macronix MX25L6405 Macronix MX25L12805 Macronix MX29F001B Macronix MX29F001T Macronix MX29LV040 Added new chips (according to datasheets): Eon EN25B05T Eon EN25B10T Eon EN25B20T Eon EN25B40T Eon EN25B80T Eon EN25B16T Eon EN25B32T Eon EN25B64T Added minor Device IDs for Eon EN25Bxx{T,B} chips. Corresponding to flashrom svn r843. Signed-off-by:
Sean Nelson <audiohacked@gmail.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
Carl-Daniel Hailfinger authored
All functions which just call probe_jedec and then map flash registers are replaced by probe_jedec. All functions which call probe_jedec, map flash registers and do something else can at least eliminate mapping flash registers. Fix logic inversion in probe_jedec to map flash registers on success instead of on failure. Change a few TIMING_IGNORED to TIMING_FIXME where probe_jedec is used. Total savings: One probe function simplified, three probe functions eliminated. Corresponding to flashrom svn r839. Signed-off-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by:
Michael Karcher <flashrom@mkarcher.dialup.fu-berlin.de> Acked-by:
Sean Nelson <audiohacked@gmail.com>
-
- 07 Jan, 2010 1 commit
-
-
Carl-Daniel Hailfinger authored
- Add eraseblock definitions - Use correct eraseblock sizes (the datasheet is a bit ambiguous) - Use correct probe function - Fill in probe timing There is a lot more stuff left to clean up, but at least probe and erase should work now. Corresponding to flashrom svn r837. Signed-off-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by:
Sean Nelson <audiohacked@gmail.com>
-
- 04 Jan, 2010 1 commit
-
-
Sean Nelson authored
The patch converts jedec functions into mask-based generics which can be used for many chip provided the only changes are the addresses are converted from 0x5555/0x2AAA to 0x555/0x2AA or similar. The patch mostly changes jedec.c, but a few other files are changed because they use the jedec functions within their own functions. The patch also adds a copyright line to flashchips.c because of my recent work in converting AMD and Atmel chips to use struct erase_block. Corresponding to flashrom svn r828. Signed-off-by:
Sean Nelson <audiohacked@gmail.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 23 Dec, 2009 3 commits
-
-
Sean Nelson authored
AMIC_A29002B AMIC_A29002T EN_29F002B EN_29F002T MBM29F004BC MBM29F004TC MBM29F400BC MBM29F400TC MX_25L3205 MX_25L6405 MX_29F002B MX_29F002T Add block erasers for m29f400bt and mx29f002. Change programmer delays from 2 seconds to 10us in mx29f002 and am29f040b. Corresponding to flashrom svn r819. Signed-off-by:
Sean Nelson <audiohacked@gmail.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
Carl-Daniel Hailfinger authored
SST25VF040.REMS, SST25VF040B, SST25VF040B.REMS, SST25VF080B, SST25VF016B, SST25VF032B Corresponding to flashrom svn r818. Signed-off-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by:
Sean Nelson <audiohacked@gmail.com>
-
Sean Nelson authored
AT25DF021, AT25DF041A, AT25DF081, AT25DF161, AT25DF321, AT25DF321A, AT25DF641, AT25F512B, AT25FS010, AT25FS040, AT26DF041, AT26DF081A, AT26DF161, AT26DF161A, AT26F004, AT29C512, AT29C010A, AT29C020, AT29C040A, AT49BV512, AT49F002(N), AT49F002(N)T A possible future patch would to add spi_block_erase_d7 to spi.c as an alternate to spi_block_erase_20. Only some SPI chips support d7. Corresponding to flashrom svn r817. Signed-off-by:
Sean Nelson <audiohacked@gmail.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 22 Dec, 2009 1 commit
-
-
Sean Nelson authored
Am29F010A/B Am29F002(N)BB Am29F002(N)BT Am29F016D Am29F040B Am29F080B Am29LV040B Am29LV081B A29040B Pm29F002T Pm29F002B Change function signature of Am29 erase functions and JEDEC chip erase to be usable with block_erasers. Corresponding to flashrom svn r812. Signed-off-by:
Sean Nelson <audiohacked@gmail.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 27 Nov, 2009 1 commit
-
-
Michael Karcher authored
The deleted function in en29f002a.c is reintroduced as write_by_byte_jedec in jedec.c as it contains no chip-specific instructions. It is not yet used in other chip drivers, as key addresses (0x2AAA/0x5555) are often specified with less bits. After crosschecking datasheets, most of the fixmes can probably be resolved as indicated in them, causing significant code reduction. The common JEDEC code for bytewise programming does not program 0xFF at all. The chips that had a dedicated bytewise flash function which has been changed to write_jedec_1 thus changed flashing behaviour and the "write" test flag has been removed. This applies to: AMD Am29F002BB/Am29F002NBB AMD Am29F002BT/Am29F002NBT (TEST_OK_PREW before) AMIC A29002B AMIC A29002T (TEST_OK_PREW before) EON EN29F002(A)(N)B EON EN29F002(A)(N)T (TEST_OK_PREW before) Macronix MX29F001B (TEST_OK_PREW before) Macronix MX29F001T (TEST_OK_PREW before) Macronix MX29F002B Macronix MX29F002T (TEST_OK_PREW before) Macronix MX29LV040 Similar analysis should be performed for the read id stuff. Corresponding to flashrom svn r785. Signed-off-by:
Michael Karcher <flashrom@mkarcher.dialup.fu-berlin.de> Acked-by:
Sean Nelson <audiohacked@gmail.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 26 Nov, 2009 1 commit
-
-
Zheng Bao authored
The model_ids are already in the header. W25x32 has been successfully probed. W25x64 is not available, the entry is based on the datasheet. Corresponding to flashrom svn r782. Signed-off-by:
Zheng Bao <zheng.bao@amd.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 24 Nov, 2009 2 commits
-
-
Sean Nelson authored
This chip is sometimes labeled as 25FW203T. Corresponding to flashrom svn r775. Signed-off-by:
Sean Nelson <audiohacked@gmail.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
Sean Nelson authored
Corresponding to flashrom svn r774. Signed-off-by:
Sean Nelson <audiohacked@gmail.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 20 Nov, 2009 1 commit
-
-
Carl-Daniel Hailfinger authored
If a chip is not on the RDID generic vendor list nor on the REMS specific ID list, flashrom will claim that no chip is there. Handle these cases gracefully. flashrom will ignore generic matches if a specific chip was found, so this will have no impact on supported chips, but help a lot for a first quick analysis by the user or developer. The only drawback is that unknown chips may be recognized multiple times until they are added to flashchips.[ch]. Corresponding to flashrom svn r767. Signed-off-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by:
Marc Jones <marcj303@gmail.com>
-
- 14 Nov, 2009 1 commit
-
-
Carl-Daniel Hailfinger authored
The automatic retry in write_page_write_jedec didn't retry flashing the correct range, essentially rendering the functionality useless. This patch simplifies the code and fixes the bug. Thanks to Luke Dashjr for testing. Mark Winbond W29C040P as supported. Corresponding to flashrom svn r757. Signed-off-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by:
Luke Dashjr <luke_coreboot@dashjr.org>
-
- 06 Nov, 2009 1 commit
-
-
Carl-Daniel Hailfinger authored
Corresponding to flashrom svn r756. 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>
-
- 01 Oct, 2009 1 commit
-
-
Carl-Daniel Hailfinger authored
Cosmetics: Place curly brackets on a common line. Add MX25V512 as alias name to MX25L512. Add MX25V8005 as alias name to MX25L8005. Add erase block definitions for MX25L2005, MX25L4005, MX25L8005, MX25L1605 and change their status to TEST_OK_PRW where applicable. Corresponding to flashrom svn r738. Signed-off-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by:
Stefan Reinauer <stepan@coresystems.de>
-
- 25 Sep, 2009 1 commit
-
-
Peter Lemenkov authored
See http://www.coreboot.org/pipermail/coreboot/2009-July/050675.html . Corresponding to flashrom svn r733. Signed-off-by:
Peter Lemenkov <lemenkov@gmail.com> Acked-by:
Uwe Hermann <uwe@hermann-uwe.de>
-
- 23 Sep, 2009 2 commits
-
-
Carl-Daniel Hailfinger authored
Annotate SST49LF004B quirks for TBL#. Add TEST_OK_PRW which is useful when a PREW chip gets a new erase routine. Change a few erase function prototypes to use unsigned int instead of int. Corresponding to flashrom svn r731. Signed-off-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by:
Luc Verhaegen <libv@skynet.be>
-
Nils Jacobs authored
I tested it on the Wyse Winterm S50 see attached test results. Corresponding to flashrom svn r730. Signed-off-by:
Nils Jacobs <njacobs8@hetnet.nl> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 09 Sep, 2009 1 commit
-
-
Uwe Hermann authored
Corresponding to flashrom svn r721. Signed-off-by:
Uwe Hermann <uwe@hermann-uwe.de> Acked-by:
Uwe Hermann <uwe@hermann-uwe.de>
-
- 05 Sep, 2009 2 commits
-
-
Carl-Daniel Hailfinger authored
I decided to fill in the info for a few chips to illustrate how this works both for uniform and non-uniform sector sizes. struct eraseblock{ int size; /* Eraseblock size */ int count; /* Number of contiguous blocks with that size */ }; struct eraseblock doesn't correspond with a single erase block, but with a group of contiguous erase blocks having the same size. Given a (top boot block) flash chip with the following weird, but real-life structure: top 16384 8192 8192 32768 65536 65536 65536 65536 65536 65536 65536 bottom we get the following encoding: {65536,7},{32768,1},{8192,2},{16384,1} Although the number of blocks is bigger than 4, the number of block groups is only 4. If you ever add some flash chips with more than 4 contiguous block groups, the definition will not fit into the 4-member array anymore and gcc will recognize that and error out. No undetected overflow possible. In that case, you simply increase array size a bit. For modern flash chips with uniform erase block size, you only need one array member anyway. Of course data types will need to be changed if you ever get flash chips with more than 2^30 erase blocks, but even with the lowest known erase granularity of 256 bytes, these flash chips will have to have a size of a quarter Terabyte. I'm pretty confident we won't see such big EEPROMs in the near future (or at least not attached in a way that makes flashrom usable). For SPI chips, we even have a guaranteed safety factor of 4096 over the maximum SPI chip size (which is 2^24). And if such a big flash chip has uniform erase block size, you could even split it among the 4 array members. If you change int count to unsigned int count, the storable size doubles. So with a split and a slight change of data type, the maximum ROM chip size is 2 Terabytes. Since many chips have multiple block erase functions where the eraseblock layout depends on the block erase function, this patch couples the block erase functions with their eraseblock layouts. struct block_eraser { struct eraseblock{ unsigned int size; /* Eraseblock size */ unsigned int count; /* Number of contiguous blocks with that size */ } eraseblocks[NUM_ERASEREGIONS]; int (*block_erase) (struct flashchip *flash, unsigned int blockaddr, unsigned int blocklen); } block_erasers[NUM_ERASEFUNCTIONS]; Corresponding to flashrom svn r719. Signed-off-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by:
Stefan Reinauer <stepan@coresystems.de>
-
Udu Ogah authored
Corresponding to flashrom svn r718. Signed-off-by:
Udu Ogah <putlinuxonit@gmail.com> Acked-by:
Stefan Reinauer <stepan@coresystems.de> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 24 Aug, 2009 1 commit
-
-
Mark Panajotovic authored
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>
-
- 10 Aug, 2009 1 commit
-
-
Carl-Daniel Hailfinger authored
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>
-
- 24 Jul, 2009 1 commit
-
-
Carl-Daniel Hailfinger authored
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>
-
- 23 Jul, 2009 3 commits
-
-
Carl-Daniel Hailfinger authored
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>
-
Carl-Daniel Hailfinger authored
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>
-
Carl-Daniel Hailfinger authored
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>
-
- 11 Jul, 2009 1 commit
-
-
Hector Martin authored
Tested probing and reading only. The chip ID was already in flashchips.h. Corresponding to flashrom svn r648. Signed-off-by:
Hector Martin <hector@marcansoft.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 08 Jul, 2009 1 commit
-
-
Luc Verhaegen authored
Chip has now been properly tested in both my Jetway J7F5M and my EPIA-SP (known good board). Erase and write fail. Mark these operations as bad until i or someone else have time to fix this. Reported by Arvid Brodin <arvidb@kth.se>. M flashchips.c Corresponding to flashrom svn r643. Signed-off-by:
Luc Verhaegen <libv@skynet.be> Acked-by:
Uwe Hermann <uwe@hermann-uwe.de>
-
- 03 Jul, 2009 1 commit
-
-
Uwe Hermann authored
- VIA EPIA-M700 (reported by Jakob Bornecrantz <wallbraker@gmail.com>) http://www.coreboot.org/pipermail/coreboot/2009-July/050416.html - GIGABYTE GA-EX58-UD4P (reported by Warren Turkal <wt@penguintechs.org>) http://www.coreboot.org/pipermail/coreboot/2009-June/050199.html Mark as non-working: - ASUS Eee PC 701 4G (reported by Uwe Hermann <uwe@hermann-uwe.de>) There seems to be some SPI flash translation layer, likey done by the embedded controller on the laptop (ENE KB3310). The BIOS chip in this Eee PC model is Winbond 25X40VSIG btw. More info: http://beta.ivancover.com/wiki/index.php/Eee_PC_Research Mark this chip as tested: - ST M25P40 (reported by Jakob Bornecrantz <wallbraker@gmail.com>) http://www.coreboot.org/pipermail/coreboot/2009-July/050416.html Other: - Make the "Albatron PM266A" board detection print "Albatron PM266A*" as this enable will actually work for other PM266A* boards according to libv. However, the code was actually tested on "Albatron PM266A Pro". - Add some more board URLs / notes. - s/BioStar/Biostar/ as per vendor website. - Fix typo in print.c: s/A7V8-MX SE/A7V8X-MX SE/. Corresponding to flashrom svn r639. Signed-off-by:
Uwe Hermann <uwe@hermann-uwe.de> Acked-by:
Uwe Hermann <uwe@hermann-uwe.de>
-
- 28 Jun, 2009 1 commit
-
-
Urja Rannikko authored
Also noted as a comment if an FWH/LPC chip supports A/A Mux mode. Corresponding to flashrom svn r634. Signed-off-by:
Urja Rannikko <urjaman@gmail.com> Acked-by:
Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-
- 22 Jun, 2009 4 commits
-
-
Carl-Daniel Hailfinger authored
Thanks to Michael Stapelberg for the report. Corresponding to flashrom svn r622. 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>
-
Carl-Daniel Hailfinger authored
Thanks to Simon Brown for the report. Corresponding to flashrom svn r621. 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>
-
Carl-Daniel Hailfinger authored
Thanks to Harald Gutmann for testing. Corresponding to flashrom svn r620. 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>
-
Carl-Daniel Hailfinger authored
Thanks to Wangji for testing and pointing out that EN25* chips were unsupported, which was handled in r580 and r592. Corresponding to flashrom svn r619. 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>
-
- 19 Jun, 2009 1 commit
-
-
Uwe Hermann authored
Also, add support for the Silicon Image 3112(A) SATA controller. Both have been tested by Andrew Morgan <ziltro@ziltro.com> on hardware and work fine. Corresponding to flashrom svn r613. Signed-off-by:
Uwe Hermann <uwe@hermann-uwe.de> Acked-by:
Andrew Morgan <ziltro@ziltro.com>
-