aboutsummaryrefslogtreecommitdiffstats
path: root/flash.h
Commit message (Collapse)AuthorAgeFilesLines
* Add --list-supported option which lists the supported ROM chips, chipsets, ↵Uwe Hermann2008-03-121-0/+5
| | | | | | | | | and mainboards Corresponding to flashrom svn r199 and coreboot v2 svn r3133. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Ward Vandewege <ward@gnu.org>
* Handle JEDEC JEP106W continuation codes in SPI RDIDCarl-Daniel Hailfinger2008-02-061-1/+14
| | | | | | | | | | | | | Some vendors like Programmable Micro Corp (PMC) need this. Both the serial and parallel flash JEDEC detection routines would benefit from a parity/sanity check of the vendor ID. Will do this later. Add support for the PMC Pm25LV family of SPI flash chips. Corresponding to flashrom svn r191 and coreboot v2 svn r3091. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Chris Lingard <chris@stockwith.co.uk>
* Add ids and chip entry for Spansion S25FL016A, tested, workingPeter Stuge2008-01-251-0/+8
| | | | | | | Corresponding to flashrom svn r187 and coreboot v2 svn r3074. Signed-off-by: Peter Stuge <peter@stuge.se> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
* Further abstract SPI functions to allow chips bigger than 512 kB behind IT8716FsRonald Hoogenboom2008-01-191-0/+10
| | | | | | | | | | | Support SPI flash chips bigger than 512 kByte sitting behind IT8716F Super I/O performing LPC-to-SPI flash translation. Corresponding to flashrom svn r181 and coreboot v2 svn r3061. Signed-off-by: Ronald Hoogenboom <hoogenboom30@zonnet.nl> 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>
* Rename LinuxBIOS to corebootStefan Reinauer2008-01-181-2/+2
| | | | | | | Corresponding to flashrom svn r178 and coreboot v2 svn r3054. Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* Print at least the vendor for SPI flash chips if the exact chip ID is unknownCarl-Daniel Hailfinger2008-01-041-1/+4
| | | | | | | Corresponding to flashrom svn r173 and coreboot v2 svn r3032. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Ronald G. Minnich <rminnich@gmail.com>
* Unfortunately, EN29F002T, EN29F002AT, EN29F002ANT, EN29F002NT all have ↵Carl-Daniel Hailfinger2007-12-311-2/+2
| | | | | | | | | | | | | exactly the same ID Improve model number printing. Add EN29F002(A)(N)B support while I'm at it. Corresponding to flashrom svn r172 and coreboot v2 svn r3031. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Markus Boas <bios@ryven.de>
* Add continuation ID support to jedec.cCarl-Daniel Hailfinger2007-12-311-3/+20
| | | | | | | | | | | | | | | | | | | | | | | The continuation ID code does not go further than checking for IDs of the type 0x7fXX, but does this for vendor and product ID. The current published JEDEC spec has a list where the largest vendor ID is 7 bytes long, but all leading bytes are 0x7f. The list will grow in the future, and using a 64bit variable will not be enough anymore. Besides that, it seems that the location of the ID byte after the first continuation ID byte is very vendor specific, so we may have to revisit that code some time in the future. (Suggestion for a new encoding: Use a two-byte data type for the ID, the lower byte contains the only non-0x7f byte, the upper byte contains the number of 0x7f bytes used as prefix, which is the bank number minus 1 the vendor ID appears in.) Add support for EON EN29F002AT. Corresponding to flashrom svn r171 and coreboot v2 svn r3030. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Corey Osgood <corey.osgood@gmail.com>
* Refine various vendor ID annotationsCarl-Daniel Hailfinger2007-12-311-10/+20
| | | | | | | | | | | | | | This fixes a few vendor IDs to conform with JEDEC publication 106W (JEP106W), adds some device IDs and provides information about non-conforming IDs. The EON change is left to the patch adding EON chips. This patch should have no effect on code generation. Corresponding to flashrom svn r170 and coreboot v2 svn r3029. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Corey Osgood <corey.osgood@gmail.com>
* Add support for various ST M25P* chipsCarl-Daniel Hailfinger2007-12-171-0/+8
| | | | | | | | | | | | | Add support for ST M25P05-A, M25P10-A, M25P20, M25P40, M25P16, M25P32, M25P64, M25P128. ST M25P80 support is already there. Not tested, but conforming to data sheets and double checked. Corresponding to flashrom svn r166 and coreboot v2 svn r3012. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Rename SPI erase functions to include opcodeCarl-Daniel Hailfinger2007-12-171-1/+1
| | | | | | | | | | | | | | | To make it easier to add new SPI chips to flashchips.c, rename functions with multiple possible opcodes from linear numbering at the end (_1, _2) to include the opcode at the end (_60, _c7). That way, you only have to take a short look at the data sheet and choose the right function by appending the opcode listed in the data sheet. No functional changes. Corresponding to flashrom svn r165 and coreboot v2 svn r3009. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Ward Vandewege <ward@gnu.org>
* Add support for ST M25P80 chipsCarl-Daniel Hailfinger2007-12-161-0/+5
| | | | | | | | | | Detection was tested. Print status register before erase to help debugging block locks. Corresponding to flashrom svn r164 and coreboot v2 svn r3008. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Corey Osgood <corey.osgood@gmail.com>
* Add support for more atmel chipsFrederico Silva2007-12-101-0/+2
| | | | | | | | | | | | | | | AT49F002 AT49F002N AT49F002T AT49F002NT Only tested the read function on AT49F002T. datasheet @ http://www.atmel.com/atmel/acrobat/doc1017.pdf Corresponding to flashrom svn r163 and coreboot v2 svn r3003. Signed-off-by: Frederico Silva <frederico.silva@gmail.com> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
* Various coding style fixes, constification, fixed typosUwe Hermann2007-12-041-19/+26
| | | | | | | | | | Also, s/0xFF80/0xFFC0/ in the Acorp 6A815EPD board-enable, as per http://www.linuxbios.org/pipermail/linuxbios/2007-December/027750.html Corresponding to flashrom svn r162 and coreboot v2 svn r2997. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Add support for Intel 440MX and Fujitsu MBM29F400TCUwe Hermann2007-10-301-0/+1
| | | | | | | | | Detection and reading works, writing is not tested. Corresponding to flashrom svn r158 and coreboot v2 svn r2903. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Peter Stuge <peter@stuge.se>
* Add Am29LV040BPeter Lemenkov2007-10-251-0/+1
| | | | | | | | | | | | | Looking through the sources of Uniflash utility I found that this chip is no more no less than low-voltage variant of Am29F040B but with different ID. So I created a very quick patch (attached). Corresponding to flashrom svn r157 and coreboot v2 svn r2897. Signed-off-by: Peter Lemenkov <lemenkov@gmail.com> Acked-by: Peter Stuge <peter@stuge.se>
* Add more Vendor IDs and ensure correct sorting in flash.hPeter Lemenkov2007-10-221-27/+45
| | | | | | | Corresponding to flashrom svn r156 and coreboot v2 svn r2884. Signed-off-by: Peter Lemenkov <lemenkov@gmail.com> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
* Introduce block and sector erase routines, but do not use them yetCarl-Daniel Hailfinger2007-10-221-5/+15
| | | | | | | Corresponding to flashrom svn r155 and coreboot v2 svn r2881. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* Add generic SPI flash erase and write supportCarl-Daniel Hailfinger2007-10-181-0/+5
| | | | | | | | | | | | | The first chip the code was tested and verified with is the Macronix MX25L4005, but other chips should work as well. Timeouts are still hardcoded to data sheet maxima, but the status register checking code is already there. Thanks to Harald Gutmann for the initial code on which this is loosely based. Corresponding to flashrom svn r152 and coreboot v2 svn r2874. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* Convert the existing it8716f_* functions to generic_spi_* functionsCarl-Daniel Hailfinger2007-10-161-1/+1
| | | | | | | Corresponding to flashrom svn r147 and coreboot v2 svn r2863. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* Move SPI code out of board_enable.c where it started its lifeCarl-Daniel Hailfinger2007-10-151-0/+2
| | | | | | | | | | | | | | | The SPI chip finding and SPI chip accessor code is moved as well. This can be split later if we feel like it. The non-use of svn cp is intentional because the only history we'd have to preserve are a few commits which were early prototypes of chip identification code. For those who intend to look at that history, they can look at board_enable.c revision 2853. Corresponding to flashrom svn r145 and coreboot v2 svn r2857. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* This patch aims to restructure SPI flash support in a more reasonable wayCarl-Daniel Hailfinger2007-10-021-0/+27
| | | | | | | | | | | | | | | | | | It introduces a generic SPI host driver for the IT8716F Super I/O which will enable easy SPI programming without having to care for the peculiarities of the SPI host. To activate probing for the IT8716F, you have to use the gigabyte:m57sli mainboard override. SPI support will then use the gathered SPI host data to access the SPI flash. This has been tested sucessfully by Ward Vandewege <ward@gnu.org> on the GA-M57SLI v2.0, which has a MX25L4005 SPI flash part. Corresponding to flashrom svn r140 and coreboot v2 svn r2817. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Ward Vandewege <ward@gnu.org>
* Remove useless 'extern' keywordsUwe Hermann2007-09-091-54/+54
| | | | | | | Corresponding to flashrom svn r137 and coreboot v2 svn r2769. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Add '(C)' where it's missing (for consistency reasons)Uwe Hermann2007-09-091-3/+3
| | | | | | | Corresponding to flashrom svn r136 and coreboot v2 svn r2768. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Add support for the Winbond W29EE011Markus Boas2007-08-301-0/+4
| | | | | | | Corresponding to flashrom svn r133 and coreboot v2 svn r2753. Signed-off-by: Markus Boas <ryven@ryven.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Add support for the Winbond W29C040PMarkus Boas2007-08-301-0/+1
| | | | | | | Corresponding to flashrom svn r132 and coreboot v2 svn r2752. Signed-off-by: Markus Boas <ryven@ryven.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Change all flashrom license headers to use our standard formatUwe Hermann2007-08-291-13/+12
| | | | | | | | | No changes in content of the files. Corresponding to flashrom svn r131 and coreboot v2 svn r2751. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Drop a bunch of useless header files, merge them into flash.hUwe Hermann2007-08-231-2/+99
| | | | | | | Corresponding to flashrom svn r128 and coreboot v2 svn r2746. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* Add various ST flash chipsCarl-Daniel Hailfinger2007-07-251-0/+8
| | | | | | | | | | | | | | This patch adds support for the M50FLW040A, M50FLW040B, M50FLW080A, M50FLW080B, M50FW080, M50FW016, M50LPW116, M29W010B flash chips made by ST. The patch is based on the data sheets of the chips and has not been tested at all. Corresponding to flashrom svn r123 and coreboot v2 svn r2741. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* This patch adds support for ST M50FW040 and ST M29W040BCarl-Daniel Hailfinger2007-07-241-0/+2
| | | | | | | | | | | Only reading from the chips was tested; writing support is untested. Thanks to Gürkan Sengün <gurkan@linuks.mine.nu> for testing! Corresponding to flashrom svn r122 and coreboot v2 svn r2740. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Factor out register mapping codeStefan Reinauer2007-05-241-0/+2
| | | | | | | Corresponding to flashrom svn r113 and coreboot v2 svn r2691. Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* Big cosmetic offensive on flashromStefan Reinauer2007-05-231-2/+5
| | | | | | | | | | | | * Give decent names to virt_addr and virt_addr_2 * add some comments * move virtual addresses to the end of the struct, so they dont mess up the initializer. Corresponding to flashrom svn r111 and coreboot v2 svn r2689. Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* Add support for the Winbond W39V040FA chipUwe Hermann2007-05-211-0/+1
| | | | | | | Corresponding to flashrom svn r110 and coreboot v2 svn r2686. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* Fix coding style of flashrom by running indent on all filesUwe Hermann2007-05-091-5/+5
| | | | | | | | | | | | indent -npro -kr -i8 -ts8 -sob -l80 -ss -ncs *.[ch] Some minor fixups were required, and maybe a few more cosmetic changes are needed. Corresponding to flashrom svn r108 and coreboot v2 svn r2643. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Add initial support for the following flash chipsUwe Hermann2007-04-281-1/+4
| | | | | | | | | | | | | - Atmel AT29C020 - STMicroelectronics M29F002B - STMicroelectronics M29F002T - STMicroelectronics M29F002NT Corresponding to flashrom svn r105 and coreboot v2 svn r2621. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Signed-off-by: Roger Zauner <roger@eskimo.com> Acked-by: Peter Stuge <peter@stuge.se>
* Trivial (cosmetic) cleanupStefan Reinauer2007-04-061-9/+10
| | | | | | | | | | | | | * Only open /dev/mem once and do it early. * Drop extern for function prototypes. * Minimize ts5300 impact in probe_flash() This cleanup will making ICH7 SPI support quite some easier. Corresponding to flashrom svn r100 and coreboot v2 svn r2585. Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* Split flash_enable.c into chipset_enable.c and board_enable.cLuc Verhaegen2007-04-041-2/+10
| | | | | | | | | | | | | | | | | | | | This splits up the ROM Write enable code into chipset specific and board specific parts. This of course means that a lot of code is plainly moved about. * Allows for linuxbios name matching and pci-subsystem id matching. The latter uses a double set to properly distuinguish boards despite of some known vendors being lax about it. * Fixes GPIO15 being raised on every VT8235 southbridge, regardless of what that line actually controls; rom on EPIA-M, backlight on mitac 8999 laptop. * Adds flashrom support for Asus A7V400-MX (KM400 + VT8235) * Island aruma was renamed agami aruma, the board specific code now got adjusted. A set of pci-ids was retrieved from source code. Corresponding to flashrom svn r99 and coreboot v2 svn r2581. Signed-off-by: Luc Verhaegen <libv@skynet.be> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* Drop useless and partly even incorrect commentsUwe Hermann2007-04-011-49/+54
| | | | | | | Corresponding to flashrom svn r98 and coreboot v2 svn r2578. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Coding style fixesUwe Hermann2007-04-011-72/+71
| | | | | | | Corresponding to flashrom svn r97 and coreboot v2 svn r2577. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Add Winbond W39V080A supportDavid Hendricks2007-03-021-0/+1
| | | | | | | | Corresponding to flashrom svn r92 and coreboot v2 svn r2565. Signed-off-by: David Hendricks <david.hendricks@gmail.com> Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* This patch is a rework of Adam Kaufman's Solaris patchAdam Kaufman2007-02-061-0/+38
| | | | | | | | | | | | | | | | | | | | | | * flash.h: - add a license header - add system definitions * flash_enable.c: - put io priviledge access in one single place - add includes required for Solaris. * lbtable.c, flash_rom.c, 82802ab.c: - use MEM_DEV so it works on Solaris * sst49lfxxxc.c, sharplhf00l04.c, sst_fwhub.c, 82802ab.c - drop unneeded include to sys/io.h * Makefile - adapt to Solaris specifics. Corresponding to flashrom svn r88 and coreboot v2 svn r2550. Signed-off-by: Adam Kaufman <adam.kaufman@pinnacle.com> Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Adam Kaufman <adam.kaufman@pinnacle.com>
* Add support for the SST 49LF160CAlan Carvalho de Assis2007-01-271-0/+1
| | | | | | | Corresponding to flashrom svn r87 and coreboot v2 svn r2539. Signed-off-by: Alan Carvalho de Assis <acassis@gmail.com> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Add support for the SST-49LF004C, SST-49LF008C, SST-49LF016CYinghai Lu2007-01-221-0/+3
| | | | | | | | | | Also add suport for NVIDIA MCP55. Corresponding to flashrom svn r85 and coreboot v2 svn r2537. Signed-off-by: Yinghai Lu <yinghai.lu@amd.com> Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Peter Stuge <peter@stuge.se>
* Add support for ASD AE49F2008 Stefan Reinauer2006-11-211-0/+3
| | | | | | | Corresponding to flashrom svn r77 and coreboot v2 svn r2504. Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de>
* Rename SM_ID to SYNCMOS_IDUwe Hermann2006-11-211-1/+1
| | | | | | | Corresponding to flashrom svn r75 and coreboot v2 svn r2502. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Add support for the SyncMOS S29C51001T, S29C51004T, and S29C31004TUwe Hermann2006-11-211-1/+4
| | | | | | | Corresponding to flashrom svn r74 and coreboot v2 svn r2501. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Ronald G. Minnich <rminnich@gmail.com>
* Support for the 256K SyncMos S29C51002T flashGiampiero Giancipoli2006-11-201-0/+3
| | | | | | | Corresponding to flashrom svn r72 and coreboot v2 svn r2499. Signed-off-by: Giampiero Giancipoli <gianci@email.it> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
* Here's a small patch to add support for the SST 49LF020AUwe Hermann2006-10-071-0/+1
| | | | | | | Corresponding to flashrom svn r66 and coreboot v2 svn r2450. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> X-Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
* Add support for SST39SF040, SST39SF010A and W39V040BStefan Reinauer2006-07-311-6/+9
| | | | Corresponding to flashrom svn r58 and coreboot v2 svn r2354.
* Signed-off-by: Scott Tsai <scott.tsai@arima.com.tw>Stefan Reinauer2006-07-191-0/+1
| | | | | | | Data sheet: http://www.alldatasheet.com/datasheet-pdf/pdf/47674/WINBOND/W49V002FAP.html Corresponding to flashrom svn r56 and coreboot v2 svn r2341.