aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorEdward O'Callaghan <quasisec@google.com>2022-11-02 12:15:38 +1100
committerEdward O'Callaghan <quasisec@chromium.org>2022-11-11 07:40:02 +0000
commit3c44e12a287ce9a91cf97c3303bf4222f63d25c7 (patch)
tree5478f15fc0090fb5785023e4a6e9c6209bd48c11 /include
parent2f0e49c2abc0f8ce46eae9675db38eece066cb5e (diff)
downloadflashrom-3c44e12a287ce9a91cf97c3303bf4222f63d25c7.tar.gz
flashrom-3c44e12a287ce9a91cf97c3303bf4222f63d25c7.tar.bz2
flashrom-3c44e12a287ce9a91cf97c3303bf4222f63d25c7.zip
tree/: Convert flashchips db to use indirection for erase_block
This paves the way to allow for the conversion of flashchip erase_block func ptr to enumerate values. This change should be a NOP. TEST=`diff -u <(objdump -D flashchips.o_bk) <(objdump -D flashchips.o)`. Change-Id: I122295ec9add0fe0efd27273c9725e5d64f6dbe2 Signed-off-by: Edward O'Callaghan <quasisec@google.com> Reviewed-on: https://review.coreboot.org/c/flashrom/+/69131 Reviewed-by: Angel Pons <th3fanbus@gmail.com> Reviewed-by: Anastasia Klimchuk <aklm@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'include')
-rw-r--r--include/flash.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/include/flash.h b/include/flash.h
index 1456134a..03c1e2c6 100644
--- a/include/flash.h
+++ b/include/flash.h
@@ -268,6 +268,42 @@ enum read_func {
typedef int (read_func_t)(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
int read_flash(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+#define NO_BLOCK_ERASE_FUNC NULL
+#define SPI_BLOCK_ERASE_EMULATION &spi_block_erase_emulation
+#define SPI_BLOCK_ERASE_20 &spi_block_erase_20
+#define SPI_BLOCK_ERASE_21 &spi_block_erase_21
+#define SPI_BLOCK_ERASE_40 &spi_block_erase_40
+#define SPI_BLOCK_ERASE_50 &spi_block_erase_50
+#define SPI_BLOCK_ERASE_52 &spi_block_erase_52
+#define SPI_BLOCK_ERASE_53 &spi_block_erase_53
+#define SPI_BLOCK_ERASE_5C &spi_block_erase_5c
+#define SPI_BLOCK_ERASE_60 &spi_block_erase_60
+#define SPI_BLOCK_ERASE_62 &spi_block_erase_62
+#define SPI_BLOCK_ERASE_81 &spi_block_erase_81
+#define SPI_BLOCK_ERASE_C4 &spi_block_erase_c4
+#define SPI_BLOCK_ERASE_C7 &spi_block_erase_c7
+#define SPI_BLOCK_ERASE_D7 &spi_block_erase_d7
+#define SPI_BLOCK_ERASE_D8 &spi_block_erase_d8
+#define SPI_BLOCK_ERASE_DB &spi_block_erase_db
+#define SPI_BLOCK_ERASE_DC &spi_block_erase_dc
+#define S25FL_BLOCK_ERASE &s25fl_block_erase
+#define S25FS_BLOCK_ERASE_D8 &s25fs_block_erase_d8
+#define JEDEC_SECTOR_ERASE &erase_sector_jedec
+#define JEDEC_BLOCK_ERASE &erase_block_jedec
+#define JEDEC_CHIP_BLOCK_ERASE &erase_chip_block_jedec
+#define OPAQUE_ERASE &erase_opaque
+#define SPI_ERASE_AT45CS_SECTOR &spi_erase_at45cs_sector
+#define SPI_ERASE_AT45DB_BLOCK &spi_erase_at45db_block
+#define SPI_ERASE_AT45DB_CHIP &spi_erase_at45db_chip
+#define SPI_ERASE_AT45DB_PAGE &spi_erase_at45db_page
+#define SPI_ERASE_AT45DB_SECTOR &spi_erase_at45db_sector
+#define ERASE_CHIP_28SF040 &erase_chip_28sf040
+#define ERASE_SECTOR_28SF040 &erase_sector_28sf040
+#define ERASE_BLOCK_82802AB &erase_block_82802ab
+#define ERASE_SECTOR_49LFXXXC &erase_sector_49lfxxxc
+#define STM50_SECTOR_ERASE &erase_sector_stm50
+#define EDI_CHIP_BLOCK_ERASE &edi_chip_block_erase
+
struct flashchip {
const char *vendor;
const char *name;