From 51c83fb2b204a369e1b1825b66c56e5babcf8022 Mon Sep 17 00:00:00 2001 From: Sean Nelson Date: Wed, 20 Jan 2010 20:55:53 +0000 Subject: Convert various SST chips to use block_erasers Convert the following chips to block_erasers: SST28SF040A SST29EE010 SST29LE010 SST29EE020A SST29LE020 SST39SF010A SST39SF020A SST39SF040 SST39VF512 SST39VF010 SST39VF020 SST39VF040 SST39VF080 SST49LF002A/B SST49LF003A/B SST49LF004C SST49LF008A SST49LF008C SST49LF016C SST49LF020 SST49LF020A SST49LF040 SST49LF040B SST49LF080A SST49LF160C . Extend sst28sf040 to include chip and sector functions for block_eraser. Extend sst49lfxxxc to include chip, sector, block erasers functions for block_erasers. Extend sst_fwhub to include chip and sector functions for block_erasers. Add copyrights to changed files. Killed erase_sst_fwhub. Killed erase_49lfxxxc. NULL A/A mux mode full chip erasers. Ignore block locks in erase/write. Change comments from "PP mode" to "A/A mux mode" Corresponding to flashrom svn r877. Signed-off-by: Sean Nelson Acked-by: Michael Karcher --- chipdrivers.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'chipdrivers.h') diff --git a/chipdrivers.h b/chipdrivers.h index 6e2edc6..c5062ca 100644 --- a/chipdrivers.h +++ b/chipdrivers.h @@ -126,7 +126,8 @@ void protect_lhf00l04(chipaddr bios); /* sst28sf040.c */ int probe_28sf040(struct flashchip *flash); -int erase_28sf040(struct flashchip *flash); +int erase_chip_28sf040(struct flashchip *flash, unsigned int addr, unsigned int blocklen); +int erase_sector_28sf040(struct flashchip *flash, unsigned int address, unsigned int sector_size); int write_28sf040(struct flashchip *flash, uint8_t *buf); /* sst39sf020.c */ @@ -140,12 +141,16 @@ int write_49lf040(struct flashchip *flash, uint8_t *buf); /* sst49lfxxxc.c */ int probe_49lfxxxc(struct flashchip *flash); int erase_49lfxxxc(struct flashchip *flash); +int erase_sector_49lfxxxc(struct flashchip *flash, unsigned int address, unsigned int sector_size); +int erase_block_49lfxxxc(struct flashchip *flash, unsigned int address, unsigned int sector_size); +int erase_chip_49lfxxxc(struct flashchip *flash, unsigned int addr, unsigned int blocksize); int write_49lfxxxc(struct flashchip *flash, uint8_t *buf); /* sst_fwhub.c */ int probe_sst_fwhub(struct flashchip *flash); int erase_sst_fwhub(struct flashchip *flash); int erase_sst_fwhub_block(struct flashchip *flash, unsigned int offset, unsigned int page_size); +int erase_sst_fwhub_sector(struct flashchip *flash, unsigned int offset, unsigned int page_size); int write_sst_fwhub(struct flashchip *flash, uint8_t *buf); /* w39v040c.c */ -- cgit v1.1