123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409 |
- #ifndef _DRV_SPI_FLASH_TABLE_H
- #define _DRV_SPI_FLASH_TABLE_H
- #if (CONFIG_CHIPID != 0x330)
- #define SPI_CONTROL_REG 0xbe000010
- #define SPI_READ_SR_REG 0xbe0000d5 //0xbe0000d4[8]
- #define Softmode_Select 12
- #define Clock 13
- #define CS 14 /*inverte*/
- #define Data 15
- #define WREN 0x06
- #define RDSR 0x05
- #define RDSR2 0x35
- #define RDSR3 0x15
- #define WRSR 0x01
- #define WRSR2 0x31
- #define WRSR3 0x11
- #define SFDP 0x5A
- #define ENOTP 0x3A //enter OTP
- #define WRDI 0x04 //exit OTP /write disable
- typedef struct {
- char Flashname[32];
- u32 ManufacturerID_and_Size;
- // u16 Code_Flash_size;
- u8 WRSR_Data_size;
- u8 WRSR_Data[5];
- char msg[32];
- }_NORFlash_SR_Table;
- #ifdef SISCONFIG_CPU1
- #define __cpu0_data
- #else
- #define __cpu0_data __attribute__((__section__(".cpu0.data")))
- #endif
- __cpu0_data _NORFlash_SR_Table NORFlash_SR_Table[] = {
- #if (CONFIG_CODE_FLASH_SIZE == 16384)
- #if (CONFIG_SPI_SIMFS_FLASHSIZE == 2048)
- {"EN25QH128", 0x1c7018, 2, {0x10, 0x8}, "000000h-dfffffh"}, //OTP
- {"GD25Q127C", 0xc84018, 2, {0x10, 0x40}, "000000h-dfffffh"},
- {"MX25L12835F/45G", 0xc22018, 2, {0x20, 0x8}, "000000h-7fffffh (unfit)"}, //0x8 is configuration register(CR)
- {"W25Q128JV", 0xef4018, 2, {0x10, 0x40}, "000000h-dfffffh"},
- {"XT25F128B", 0x0b4018, 2, {0x10, 0x40}, "000000h-dfffffh"},
- {"XM25QH128A", 0x207018, 2, {0x10, 0x8}, "000000h-dfffffh"}, //OTP
- {"ZB25VQ128A", 0x5e4018, 2, {0x10, 0x40}, "000000h-dfffffh"},
- {"XM25QH128C", 0x204018, 2, {0x10, 0x40}, "000000h-dfffffh"},
- //{"PY25Q128HA", 0x852018, 2, {0x10, 0x40}, "000000h-dfffffh"}
- #elif (CONFIG_SPI_SIMFS_FLASHSIZE == 1024)
- {"EN25QH128", 0x1c7018, 2, {0xc, 0x8}, "000000h-efffffh"},
- {"GD25Q127C", 0xc84018, 2, {0xc, 0x40}, "000000h-efffffh"},
- {"W25Q128JV", 0xef4018, 2, {0xc, 0x40}, "000000h-efffffh"},
- {"XT25F128B", 0x0b4018, 2, {0xc, 0x40}, "000000h-efffffh"},
- {"XM25QH128A", 0x207018, 2, {0xc, 0x8}, "000000h-efffffh"},
- {"ZB25VQ128A", 0x5e4018, 2, {0xc, 0x40}, "000000h-efffffh"},
- {"XM25QH128C", 0x204018, 2, {0xc, 0x40}, "000000h-efffffh"},
- //{"MX25L12835F/45G", 0xc22018, 2, {0x20, 0x8}, "000000h-7fffffh (unfit)"},
- //{"PY25Q128HA", 0x852018, 2, {0xc, 0x40}, "000000h-efffffh"}
- #elif (CONFIG_SPI_SIMFS_FLASHSIZE == 128)
- {"EN25QH128", 0x1c7018, 2, {0x4, 0x8}, "000000h-fbffffh (unfit)"},
- {"GD25Q127C", 0xc84018, 2, {0x4, 0x40}, "000000h-fbffffh (unfit)"},
- {"W25Q128JV", 0xef4018, 2, {0x4, 0x40}, "000000h-fbffffh (unfit)"},
- {"XT25F128B", 0x0b4018, 2, {0x4, 0x40}, "000000h-fbffffh"},
- {"XM25QH128A", 0x207018, 2, {0x4, 0x8}, "000000h-fbffffh (unfit)"},
- {"ZB25VQ128A", 0x5e4018, 2, {0x4, 0x40}, "000000h-fbffffh (unfit)"},
- {"XM25QH128C", 0x204018, 2, {0x4, 0x40}, "000000h-fbffffh (unfit)"},
- //{"MX25L12835F/45G", 0xc22018, 2, {0x20, 0x8}, "000000h-7fffffh (unfit)"},
- #elif (CONFIG_SPI_SIMFS_FLASHSIZE == 64)
- //{"EN25QH128", 0x1c7018, 2, {0x4, 0x8}, "000000h-fbffffh (unfit)"},
- //{"GD25Q127C", 0xc84018, 2, {0x4, 0x40}, "000000h-fbffffh (unfit)"},
- //{"MX25L12835F/45G", 0xc22018, 2, {0x20, 0x8}, "000000h-7fffffh (unfit)"},
- //{"W25Q128JV", 0xef4018, 2, {0x4, 0x40}, "000000h-fbffffh (unfit)"},
- //{"XT25F128B", 0x0b4018, 2, {0x4, 0x40}, "000000h-fbffffh"},
- //{"XM25QH128A", 0x207018, 2, {0x4, 0x8}, "000000h-fbffffh (unfit)"},
- //{"ZB25VQ128A", 0x5e4018, 2, {0x4, 0x40}, "000000h-fbffffh (unfit)"},
- //{"XM25QH128C", 0x204018, 2, {0x4, 0x40}, "000000h-fbffffh (unfit)"}
- #endif
- #elif (CONFIG_CODE_FLASH_SIZE == 8192)
- #if (CONFIG_SPI_SIMFS_FLASHSIZE == 2048)
- {"W25Q64DW", 0xef6017, 2, {0x14, 0x40}, "000000h-5fffffh"},
- {"W25Q64FV", 0xef4017, 2, {0x14, 0x40}, "000000h-5fffffh"},
- {"MX25L6436F", 0xc22017, 2, {0x28, 0x0}, "000000h-5fffffh"}, //0x0: CR; 8503, don't use MX25L6433F
- {"MX25L6406E", 0xc22017, 1, {0x28}, "000000h-5fffffh"},
- {"GD25Q64B", 0xc84017, 2, {0x14, 0x40}, "000000h-5fffffh"},
- {"EN25Q64", 0x1c3017, 1, {0x18}, "000000h-5fffffh"},
- {"EN25QH64", 0x1c7017, 1, {0x38}, "000000h-1fffffh"},
- {"EN25QH64A", 0x1c7017, 2, {0x20, 0x8}, "000000h-5fffffh"}, //OTP
- //{"EN25QX64A(2CPU)", 0x1c7117, 2, {0x14, 0x40}, "000000h-5fffffh"},
- {"BY25Q64AS", 0x684017, 2, {0x14, 0x40}, "000000h-5fffffh"},
- {"F25L64QA", 0x8c4117, 1, {0x28}, "000000h-5fffffh"},
- {"XM25QH64A", 0x207017, 2, {0x20, 0x8}, "000000h-5fffffh"}, //OTP
- {"XM25QH64C/D", 0x204017, 2, {0x14, 0x40}, "000000h-5fffffh"},
- {"XT25F64B", 0x0B4017, 2, {0x14, 0x40}, "000000h-5fffffh"}, //XT25F64F
- {"S25FL164K", 0x014017, 2, {0x14, 0x40}, "000000h-5fffffh"},
- {"ZB25VQ64A", 0x5e4017, 2, {0x14, 0x40}, "000000h-5fffffh"},
- {"PY25Q64HA", 0x852017, 2, {0x14, 0x40}, "000000h-5fffffh"},
- //{"MX25L12835F/45G", 0xc22018, 2, {0x1c, 0x8}, "000000h-3fffffh"},
- //{"W25Q128JV", 0xef4018, 2, {0x34, 0x0}, "000000h-3fffffh"},
- //{"MX25L6433F", 0xc22017, 2, {0x1c, 0x8}, "000000h-3fffffh"}, //0x8: CR; just for customer
- //{"GD25Q127C", 0xc84018, 2, {0x34, 0x0}, "000000h-3fffffh"},
- //{"EN25QH128", 0x1c7018, 2, {0x0, 0x8}, "None (unfit), consider TB bit"},
- //{"P25Q64H", 0x856017, 2, {0x14, 0x40}, "000000h-5fffffh"},
- //{"XM25QH128A", 0x207018, 2, {0x0, 0x0}, "None"}, //OTP
- //{"ZB25VQ128A", 0x5e4018, 2, {0x34, 0x0}, "000000h-3fffffh (unfit)"},
- //{"XM25QH128C", 0x204018, 2, {0x34, 0x0}, "000000h-3fffffh (unfit)"}
- #elif (CONFIG_SPI_SIMFS_FLASHSIZE == 1024)
- {"W25Q64DW", 0xef6017, 2, {0x10, 0x40}, "000000h-6fffffh"},
- {"W25Q64FV", 0xef4017, 2, {0x10, 0x40}, "000000h-6fffffh"},
- {"MX25L6436F", 0xc22017, 2, {0x2c, 0x0}, "000000h-6fffffh"},
- {"MX25L6406E", 0xc22017, 1, {0x2c}, "000000h-6fffffh"},
- {"GD25Q64B", 0xc84017, 2, {0x10, 0x40}, "000000h-6fffffh"},
- {"EN25Q64", 0x1c3017, 1, {0x14}, "000000h-6fffffh"},
- {"EN25QH64", 0x1c7017, 1, {0x38}, "000000h-1fffffh"},
- {"EN25QH64A", 0x1c7017, 2, {0x24, 0x8}, "000000h-6fffffh"},
- {"EN25QX64A(2CPU)", 0x1c7117, 2, {0x10, 0x40}, "000000h-6fffffh"},
- {"BY25Q64AS", 0x684017, 2, {0x10, 0x40}, "000000h-6fffffh"},
- {"F25L64QA", 0x8c4117, 1, {0x2c}, "000000h-6fffffh"},
- {"XM25QH64A", 0x207017, 2, {0x24, 0x8}, "000000h-6fffffh"},
- {"XM25QH64C/D", 0x204017, 2, {0x10, 0x40}, "000000h-6fffffh"},
- {"XT25F64B", 0x0B4017, 2, {0x10, 0x40}, "000000h-6fffffh"}, //XT25F64F
- {"S25FL164K", 0x014017, 2, {0x10, 0x40}, "000000h-6fffffh"},
- {"ZB25VQ64A", 0x5e4017, 2, {0x10, 0x40}, "000000h-6fffffh"},
- {"PY25Q64HA", 0x852017, 2, {0x10, 0x40}, "000000h-6fffffh"},
- //{"MX25L12835F/45G", 0xc22018, 2, {0x1c, 0x8}, "000000h-3fffffh"},
- //{"W25Q128JV", 0xef4018, 2, {0x34, 0x0}, "000000h-3fffffh"},
- //{"MX25L6433F", 0xc22017, 2, {0x1c, 0x8}, "000000h-3fffffh"},
- //{"GD25Q127C", 0xc84018, 2, {0x34, 0x0}, "000000h-3fffffh"},
- //{"EN25QH128", 0x1c7018, 2, {0x0, 0x8}, "None (unfit)"},
- //{"P25Q64H", 0x856017, 2, {0x10, 0x40}, "000000h-6fffffh"},
- //{"XM25QH128A", 0x207018, 2, {0x0, 0x0}, "None"},
- //{"ZB25VQ128A", 0x5e4018, 2, {0x34, 0x0}, "000000h-3fffffh (unfit)"},
- //{"XM25QH128C", 0x204018, 2, {0x34, 0x0}, "000000h-3fffffh (unfit)"}
- #elif (CONFIG_SPI_SIMFS_FLASHSIZE == 128)
- {"W25Q64DW", 0xef6017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- {"W25Q64FV", 0xef4017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- {"MX25L6436F", 0xc22017, 2, {0x38, 0x0}, "000000h-7dffffh"},
- {"MX25L6406E", 0xc22017, 1, {0x38}, "000000h-7dffffh"},
- {"GD25Q64B", 0xc84017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- {"EN25Q64", 0x1c3017, 1, {0x8}, "000000h-7dffffh"},
- {"EN25QH64", 0x1c7017, 1, {0x38}, "000000h-1fffffh"},
- {"EN25QH64A", 0x1c7017, 2, {0x30, 0x8}, "000000h-7dffffh"},
- {"EN25QX64A(2CPU)", 0x1c7117, 2, {0x4, 0x40}, "000000h-7dffffh"},
- {"BY25Q64AS", 0x684017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- {"F25L64QA", 0x8c4117, 1, {0x38}, "000000h-7dffffh"},
- {"XM25QH64A", 0x207017, 2, {0x30, 0x8}, "000000h-7dffffh"},
- {"XM25QH64C/D", 0x204017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- {"XT25F64B", 0x0B4017, 2, {0x4, 0x40}, "000000h-7dffffh"}, //XT25F64F
- {"S25FL164K", 0x014017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- {"ZB25VQ64A", 0x5e4017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- {"PY25Q64HA", 0x852017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- //{"W25Q128JV", 0xef4018, 2, {0x34, 0x0}, "000000h-3fffffh"},
- //{"MX25L12835F/45G", 0xc22018, 2, {0x1c, 0x8}, "000000h-3fffffh"},
- //{"MX25L6433F", 0xc22017, 2, {0x1c, 0x8}, "000000h-3fffffh"},
- //{"GD25Q127C", 0xc84018, 2, {0x34, 0x0}, "000000h-3fffffh"},
- //{"EN25QH128", 0x1c7018, 2, {0x0, 0x8}, "None (unfit)"},
- //{"P25Q64H", 0x856017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- //{"XM25QH128A", 0x207018, 2, {0x0, 0x0}, "None"},
- //{"ZB25VQ128A", 0x5e4018, 2, {0x34, 0x0}, "000000h-3fffffh (unfit)"},
- //{"XM25QH128C", 0x204018, 2, {0x34, 0x0}, "000000h-3fffffh (unfit)"}
- #elif (CONFIG_SPI_SIMFS_FLASHSIZE == 64)
- {"EN25Q64", 0x1c3017, 1, {0x4}, "000000h-7effffh"},
- {"XM25QH64A", 0x207017, 2, {0x34, 0x8}, "000000h-7effffh"},
- //{"W25Q64DW", 0xef6017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- //{"W25Q64FV", 0xef4017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- //{"MX25L6436F", 0xc22017, 2, {0x38, 0x0}, "000000h-7dffffh (unfit)"},
- //{"MX25L6406E", 0xc22017, 1, {0x38}, "000000h-7dffffh"},
- //{"GD25Q64B", 0xc84017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- //{"EN25QH64", 0x1c7017, 1, {0x38}, "000000h-1fffffh"},
- //{"EN25QH64A", 0x1c7017, 2, {0x34, 0x8}, "000000h-7effffh"},
- //{"EN25QX64A(2CPU)", 0x1c7117, 2, {0x4, 0x40}, "000000h-7dffffh (unfit)"},
- //{"BY25Q64AS", 0x684017, 2, {0x4, 0x40}, "000000h-7dffffh (unfit)"},
- //{"F25L64QA", 0x8c4117, 1, {0x38}, "000000h-7dffffh"},
- //{"XM25QH64C/D", 0x204017, 2, {0x4, 0x40}, "000000h-7dffffh (unfit)"},
- //{"XT25F64B", 0x0B4017, 2, {0x4, 0x40}, "000000h-7dffffh (unfit)"}, //XT25F64F
- //{"S25FL164K", 0x014017, 2, {0x4, 0x40}, "000000h-7dffffh"},
- //{"ZB25VQ64A", 0x5e4017, 2, {0x4, 0x40}, "000000h-7dffffh (unfit)"},
- //{"MX25L12835F/45G", 0xc22018, 2, {0x1c, 0x8}, "000000h-3fffffh"},
- //{"W25Q128JV", 0xef4018, 2, {0x34, 0x0}, "000000h-3fffffh"},
- //{"MX25L6433F", 0xc22017, 2, {0x1c, 0x8}, "000000h-3fffffh"},
- //{"GD25Q127C", 0xc84018, 2, {0x34, 0x0}, "000000h-3fffffh"},
- //{"EN25QH128", 0x1c7018, 2, {0x0, 0x8}, "None (unfit)"},
- //{"P25Q64H", 0x856017, 2, {0x4, 0x40}, "000000h-7dffffh (unfit)"},
- //{"XM25QH128A", 0x207018, 2, {0x0, 0x0}, "None"},
- //{"ZB25VQ128A", 0x5e4018, 2, {0x34, 0x0}, "000000h-3fffffh (unfit)"},
- //{"XM25QH128C", 0x204018, 2, {0x34, 0x0}, "000000h-3fffffh (unfit)"}
- #endif
- #elif (CONFIG_CODE_FLASH_SIZE == 4096)
- #if (CONFIG_SPI_SIMFS_FLASHSIZE == 256)
- {"W25Q32FV/JV", 0xef4016, 2, {0x0c, 0x40}, "000000h-3bffffh"},
- {"MX25L3236F", 0xc22016, 2, {0x30, 0x0}, "000000h-3bffffh"},
- {"MX25L3205D", 0xc22016, 1, {0x30}, "000000h-3bffffh"},
- {"GD25Q32B/C/E", 0xc84016, 2, {0x0c, 0x40}, "000000h-3bffffh"},
- {"EN25Q32B", 0x1c3016, 1, {0x0c}, "000000h-3bffffh"},
- {"EN25QH32A", 0x1c7016, 1, {0x38}, "000000h-1fffffh"},
- {"EN25QH32B", 0x1c7016, 2, {0x24, 0x8}, "000000h-3bffffh"},
- {"EN25QE32A(2PPU)", 0x1c4116, 2, {0xc, 0x40}, "000000h-3bffffh"}, //2PPU
- {"BG25Q32A", 0xe04016, 2, {0x0c, 0x40}, "000000h-3bffffh"},
- {"BY25Q32BS/BH25Q32BS", 0x684016, 2, {0x0c, 0x40}, "000000h-3bffffh"},
- {"XM25QH32C/D", 0x204016, 2, {0x0c, 0x40}, "000000h-3bffffh"},
- {"XT25F32B", 0x0B4016, 2, {0x0c, 0x40}, "000000h-3bffffh"}, //XT25F32F
- {"ZB25VQ32", 0x5e4016, 2, {0x0c, 0x40}, "000000h-3bffffh"},
- {"PY25Q32HB", 0x852016, 2, {0x0c, 0x40}, "000000h-3bffffh"},
- //{"FM25Q32BI3", 0xA14016, 2, {0x0c, 0x40}, "000000h-3bffffh"},
- //{"W25Q128JV", 0xef4018, 2, {0x30, 0x0}, "000000h-1fffffh"},
- //{"W25Q64DW", 0xef6017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"W25Q64FV", 0xef4017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"MX25L12835F/45G", 0xc22018, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"MX25L6436F", 0xc22017, 2, {0x0, 0x0}, "None"}, //OTP
- //{"MX25L6433F", 0xc22017, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"MX25L6406E", 0xc22017, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"GD25Q127C", 0xc84018, 2, {0x30, 0x0}, "000000h-1fffffh"},
- //{"GD25Q64B", 0xc84017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"EN25Q64", 0x1c3017, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"EN25QH128", 0x1c7018, 2, {0x0, 0x8}, "None (unfit)"},
- //{"EN25QH64", 0x1c7017, 1, {0x38}, "000000h-1fffffh"},
- //{"EN25QH64A", 0x1c7017, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"BY25Q64AS", 0x684017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"F25L64QA", 0x8c4117, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"P25Q64H", 0x856017, 2, {0x34, 0x0}, "000000h-1fffffh"},
- //{"P25Q32H", 0x856016, 2, {0xc, 0x40}, "000000h-3bffffh"},
- //{"S25FL164K", 0x014017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"XM25QH128A", 0x207018, 2, {0x0, 0x0}, "None"},
- //{"XM25QH64A", 0x207017, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"XM25QH64C", 0x204017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"XT25F64B", 0x0B4017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"ZB25VQ128A", 0x5e4018, 2, {0x30, 0x0}, "000000h-1fffffh (unfit)"},
- //{"ZB25VQ64A", 0x5e4017, 2, {0x34, 0x00}, "000000h-1fffffh (unfit)"},
- //{"XM25QH128C", 0x204018, 2, {0x30, 0x0}, "000000h-1fffffh (unfit)"}
- #elif (CONFIG_SPI_SIMFS_FLASHSIZE == 128)
- {"W25Q32FV/JV", 0xef4016, 2, {0x08, 0x40}, "000000h-3dffffh"},
- {"MX25L3236F", 0xc22016, 2, {0x34, 0x0}, "000000h-3dffffh"},
- {"MX25L3205D", 0xc22016, 1, {0x34}, "000000h-3bffffh"},
- {"GD25Q32B/C/E", 0xc84016, 2, {0x08, 0x40}, "000000h-3dffffh"},
- {"EN25Q32B", 0x1c3016, 1, {0x08}, "000000h-3dffffh"},
- {"EN25QH32B", 0x1c7016, 2, {0x28, 0x8}, "000000h-3dffffh"},
- {"EN25QE32A(2PPU)", 0x1c4116, 2, {0x8, 0x40}, "000000h-3dffffh"},
- {"BG25Q32A", 0xe04016, 2, {0x08, 0x40}, "000000h-3dffffh"},
- {"BY25Q32BS/BH25Q32BS", 0x684016, 2, {0x08, 0x40}, "000000h-3dffffh"},
- {"XM25QH32C/D", 0x204016, 2, {0x08, 0x40}, "000000h-3dffffh"},
- {"XT25F32B", 0x0B4016, 2, {0x08, 0x40}, "000000h-3dffffh"}, //XT25F32F
- {"ZB25VQ32", 0x5e4016, 2, {0x08, 0x40}, "000000h-3dffffh"},
- {"PY25Q32HB", 0x852016, 2, {0x08, 0x40}, "000000h-3dffffh"},
- //{"FM25Q32BI3", 0xA14016, 2, {0x08, 0x40}, "000000h-3dffffh"},
- //{"W25Q128JV", 0xef4018, 2, {0x30, 0x0}, "000000h-1fffffh"},
- //{"W25Q64DW", 0xef6017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"W25Q64FV", 0xef4017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"MX25L12835F/45G", 0xc22018, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"MX25L6436F", 0xc22017, 2, {0x0, 0x0}, "None"},
- //{"MX25L6433F", 0xc22017, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"MX25L6406E", 0xc22017, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"GD25Q127C", 0xc84018, 2, {0x30, 0x0}, "000000h-1fffffh"},
- //{"GD25Q64B", 0xc84017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"EN25Q64", 0x1c3017, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"EN25QH128", 0x1c7018, 2, {0x0, 0x8}, "None (unfit)"},
- //{"EN25QH64", 0x1c7017, 1, {0x38}, "000000h-1fffffh"},
- //{"EN25QH64A", 0x1c7017, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"EN25QH32A", 0x1c7016, 1, {0x38}, "000000h-1fffffh"},
- //{"BY25Q64AS", 0x684017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"F25L64QA", 0x8c4117, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"P25Q64H", 0x856017, 2, {0x34, 0x0}, "000000h-1fffffh"},
- //{"P25Q32H", 0x856016, 2, {0x8, 0x40}, "000000h-3dffffh"},
- //{"S25FL164K", 0x014017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"XM25QH128A", 0x207018, 2, {0x0, 0x0}, "None"},
- //{"XM25QH64A", 0x207017, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"XM25QH64C", 0x204017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"XT25F64B", 0x0B4017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"ZB25VQ128A", 0x5e4018, 2, {0x30, 0x0}, "000000h-1fffffh (unfit)"},
- //{"ZB25VQ64A", 0x5e4017, 2, {0x34, 0x00}, "000000h-1fffffh (unfit)"},
- //{"XM25QH128C", 0x204018, 2, {0x30, 0x0}, "000000h-1fffffh (unfit)"}
- #elif (CONFIG_SPI_SIMFS_FLASHSIZE == 64)
- {"W25Q32FV/JV", 0xef4016, 2, {0x04, 0x40}, "000000h-3effffh"},
- {"MX25L3236F", 0xc22016, 2, {0x38, 0x0}, "000000h-3effffh"},
- {"MX25L3205D", 0xc22016, 1, {0x38}, "000000h-3effffh"},
- {"GD25Q32B/C/E", 0xc84016, 2, {0x04, 0x40}, "000000h-3effffh"},
- {"EN25Q32B", 0x1c3016, 1, {0x04}, "000000h-3effffh"},
- {"EN25QH32B", 0x1c7016, 2, {0x2c, 0x8}, "000000h-3effffh"},
- {"EN25QE32A(2PPU)", 0x1c4116, 2, {0x4, 0x40}, "000000h-3effffh"},
- {"BG25Q32A", 0xe04016, 2, {0x04, 0x40}, "000000h-3effffh"},
- {"BY25Q32BS/BH25Q32BS", 0x684016, 2, {0x04, 0x40}, "000000h-3effffh"},
- {"XM25QH32C/D", 0x204016, 2, {0x04, 0x40}, "000000h-3effffh"},
- {"XT25F32B", 0x0B4016, 2, {0x04, 0x40}, "000000h-3effffh"}, //XT25F32F
- {"ZB25VQ32", 0x5e4016, 2, {0x04, 0x40}, "000000h-3effffh"},
- {"PY25Q32HB", 0x852016, 2, {0x04, 0x40}, "000000h-3effffh"},
- //{"FM25Q32BI3", 0xA14016, 2, {0x04, 0x40}, "000000h-3effffh"},
- //{"W25Q128JV", 0xef4018, 2, {0x30, 0x0}, "000000h-1fffffh"},
- //{"W25Q64DW", 0xef6017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"W25Q64FV", 0xef4017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"MX25L12835F/45G", 0xc22018, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"MX25L6436F", 0xc22017, 2, {0x0, 0x0}, "None"},
- //{"MX25L6433F", 0xc22017, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"MX25L6406E", 0xc22017, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"GD25Q127C", 0xc84018, 2, {0x30, 0x0}, "000000h-1fffffh"},
- //{"GD25Q64B", 0xc84017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"EN25Q64", 0x1c3017, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"EN25QH128", 0x1c7018, 2, {0x0, 0x8}, "None (unfit)"},
- //{"EN25QH64", 0x1c7017, 1, {0x38}, "000000h-1fffffh"},
- //{"EN25QH64A", 0x1c7017, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"EN25QH32A", 0x1c7016, 1, {0x38}, "000000h-1fffffh"},
- //{"BY25Q64AS", 0x684017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"F25L64QA", 0x8c4117, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"P25Q64H", 0x856017, 2, {0x34, 0x0}, "000000h-1fffffh"},
- //{"P25Q32H", 0x856016, 2, {0x4, 0x40}, "000000h-3effffh"},
- //{"S25FL164K", 0x014017, 2, {0x34, 0x00}, "000000h-1fffffh"},
- //{"XM25QH128A", 0x207018, 2, {0x0, 0x0}, "None"},
- //{"XM25QH64A", 0x207017, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"XM25QH64C", 0x204017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"XT25F64B", 0x0B4017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"ZB25VQ128A", 0x5e4018, 2, {0x30, 0x0}, "000000h-1fffffh (unfit)"},
- //{"ZB25VQ64A", 0x5e4017, 2, {0x34, 0x00}, "000000h-1fffffh (unfit)"},
- //{"XM25QH128C", 0x204018, 2, {0x30, 0x0}, "000000h-1fffffh (unfit)"}
- #elif (CONFIG_SPI_SIMFS_FLASHSIZE == 32)
- {"GD25Q32B/C/E", 0xc84016, 2, {0x58, 0x40}, "000000h-3f7fffh"},
- {"EN25QE32A(2PPU)", 0x1c4116, 2, {0x58, 0x40}, "000000h-3f7fffh"},
- {"BY25Q32BS/BH25Q32BS", 0x684016, 2, {0x50, 0x40}, "000000h-3f7fffh"},
- {"XM25QH32C/D", 0x204016, 2, {0x50, 0x40}, "000000h-3f7fffh"},
- {"XT25F32B", 0x0B4016, 2, {0x58, 0x40}, "000000h-3f7fffh"}, //XT25F32F
- {"ZB25VQ32", 0x5e4016, 2, {0x58, 0x40}, "000000h-3f7fffh"},
- {"PY25Q32HB", 0x852016, 2, {0x58, 0x40}, "000000h-3f7fffh"},
- //{"FM25Q32BI3", 0xA14016, 2, {0x50, 0x40}, "000000h-3f7fffh"},
- //{"BY25Q64AS", 0x684017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"P25Q64H", 0x856017, 2, {0x34, 0x0}, "000000h-1fffffh"},
- //{"P25Q32H", 0x856016, 2, {0x58, 0x40}, "000000h-3f7fffh"},
- //{"XM25QH128A", 0x207018, 2, {0x0, 0x0}, "None"},
- //{"XM25QH64A", 0x207017, 2, {0x18, 0x8}, "000000h-1fffffh"},
- //{"XM25QH64C", 0x204017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"XT25F64B", 0x0B4017, 2, {0x34, 0x0}, "000000h-1fffffh (unfit)"},
- //{"ZB25VQ128A", 0x5e4018, 2, {0x30, 0x0}, "000000h-1fffffh (unfit)"},
- //{"ZB25VQ64A", 0x5e4017, 2, {0x34, 0x00}, "000000h-1fffffh (unfit)"},
- //{"XM25QH128C", 0x204018, 2, {0x30, 0x0}, "000000h-1fffffh (unfit)"}
- #endif
- #elif (CONFIG_CODE_FLASH_SIZE == 2048)
- #if (CONFIG_SPI_SIMFS_FLASHSIZE == 64)
- {"GD25Q16E", 0xc84015, 2, {0x4, 0x40}, "000000h-1effffh"},
- {"GD25LQ16E", 0xc86015, 2, {0x4, 0x40}, "000000h-1effffh"},
- {"IS25LP016D", 0x9d6015, 1, {0x28}, "000000h-0fffffh (unfit)"},
- {"S25FL164K", 0x014017, 1, {0x30}, "000000h-0fffffh (unfit)"},
- {"ZB25VQ16C", 0x5e4015, 2, {0x4, 0x40}, "000000h-1effffh"},
- //{"W25Q64DW", 0xef6017, 2, {0x30, 0x00}, "000000h-0fffffh (unfit)"},
- //{"W25Q64FV", 0xef4017, 2, {0x30, 0x00}, "000000h-0fffffh (unfit)"},
- //{"W25Q32FV/JV", 0xef4016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- //{"MX25L6436F", 0xc22017, 2, {0x0, 0x0}, "Couldn't Find Protect Area"},
- //{"MX25L6406E", 0xc22017, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"MX25L3236F", 0xc22016, 2, {0x14, 0x8}, "000000h-0fffffh (unfit)"},
- //{"MX25L3205D", 0xc22016, 1, {0x0}, "Couldn't Find Protect Area"},
- //{"GD25Q64B", 0xc84017, 2, {0x30, 0x00}, "000000h-0fffffh (unfit)"},
- //{"GD25Q32B/C", 0xc84016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- //{"EN25Q64", 0x1c3017, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"EN25Q32B", 0x1c3016, 1, {0x0}, "Couldn't Find Protect Area"},
- //{"EN25QH64", 0x1c7017, 1, {0x34}, "000000h-0fffffh (unfit)"},
- //{"EN25QH64A", 0x1c7017, 2, {0x14, 0x8}, "000000h-0fffffh (unfit)"},
- //{"EN25QH32A", 0x1c7016, 1, {0x34}, "000000h-0fffffh (unfit)"},
- //{"EN25QH32B", 0x1c7016, 2, {0x14, 0x8}, "000000h-0fffffh (unfit)"},
- //{"BG25Q32A", 0xe04016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- //{"BY25Q64AS", 0x684017, 2, {0x30, 0x0}, "000000h-0fffffh (unfit)"},
- //{"BY25Q32BS/BH25Q32BS", 0x684016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- //{"F25L64QA", 0x8c4117, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"XM25QH64A", 0x207017, 2, {0x14, 0x8}, "000000h-0fffffh (unfit)"},
- //{"XM25QH32C", 0x204016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- //{"XT25F64B", 0x0B4017, 2, {0x30, 0x0}, "000000h-0fffffh (unfit)"},
- //{"XT25F32B", 0x0B4016, 2, {0x34, 0x40}, "000000h-0fffffh (unfit)"},
- //{"ZB25VQ64A", 0x5e4017, 2, {0x30, 0x00}, "000000h-0fffffh (unfit)"},
- //{"ZB25VQ32", 0x5e4016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- #elif (CONFIG_SPI_SIMFS_FLASHSIZE == 32)
- {"GD25Q16E", 0xc84015, 2, {0x50, 0x40}, "000000h-1f7fffh"},
- {"GD25LQ16E", 0xc86015, 2, {0x50, 0x40}, "000000h-1f7fffh"},
- {"IS25LP016D", 0x9d6015, 1, {0x28}, "000000h-0fffffh (unfit)"},
- {"S25FL164K", 0x014017, 2, {0x30, 0x00}, "000000h-0fffffh (unfit)"},
- {"ZB25VQ16C", 0x5e4015, 2, {0x50, 0x40}, "000000h-1f7fffh"},
- //{"W25Q64DW", 0xef6017, 2, {0x30, 0x00}, "000000h-0fffffh (unfit)"},
- //{"W25Q64FV", 0xef4017, 2, {0x30, 0x00}, "000000h-0fffffh (unfit)"},
- //{"W25Q32FV/JV", 0xef4016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- //{"MX25L6436F", 0xc22017, 2, {0x0, 0x0}, "Couldn't Find Protect Area"},
- //{"MX25L6406E", 0xc22017, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"MX25L3236F", 0xc22016, 2, {0x14, 0x8}, "000000h-0fffffh (unfit)"},
- //{"MX25L3205D", 0xc22016, 1, {0x0}, "Couldn't Find Protect Area"},
- //{"GD25Q64B", 0xc84017, 2, {0x30, 0x00}, "000000h-0fffffh (unfit)"},
- //{"GD25Q32B/C", 0xc84016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- //{"EN25Q64", 0x1c3017, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"EN25Q32B", 0x1c3016, 1, {0x0}, "Couldn't Find Protect Area"},
- //{"EN25QH64", 0x1c7017, 1, {0x34}, "000000h-0fffffh (unfit)"},
- //{"EN25QH64A", 0x1c7017, 2, {0x14, 0x8}, "000000h-0fffffh (unfit)"},
- //{"EN25QH32A", 0x1c7016, 1, {0x34}, "000000h-0fffffh (unfit)"},
- //{"EN25QH32B", 0x1c7016, 2, {0x14, 0x8}, "000000h-0fffffh (unfit)"},
- //{"BG25Q32A", 0xe04016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- //{"BY25Q64AS", 0x684017, 2, {0x30, 0x0}, "000000h-0fffffh (unfit)"},
- //{"BY25Q32BS/BH25Q32BS", 0x684016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- //{"F25L64QA", 0x8c4117, 1, {0x00}, "Couldn't Find Protect Area"},
- //{"XM25QH64A", 0x207017, 2, {0x14, 0x8}, "000000h-0fffffh (unfit)"},
- //{"XM25QH32C", 0x204016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- //{"XT25F64B", 0x0B4017, 2, {0x30, 0x0}, "000000h-0fffffh (unfit)"},
- //{"XT25F32B", 0x0B4016, 2, {0x34, 0x40}, "000000h-0fffffh (unfit)"},
- //{"ZB25VQ64A", 0x5e4017, 2, {0x30, 0x00}, "000000h-0fffffh (unfit)"},
- //{"ZB25VQ32", 0x5e4016, 2, {0x34, 0x0}, "000000h-0fffffh (unfit)"},
- #endif
- #endif
- };
- #endif
- #endif // _DRV_SPI_FLASH_TABLE_H
|