diff options
author | adrian <adrian@FreeBSD.org> | 2013-06-08 20:12:14 +0000 |
---|---|---|
committer | adrian <adrian@FreeBSD.org> | 2013-06-08 20:12:14 +0000 |
commit | cc377d53e072258816f9038b4773f8c056cdf516 (patch) | |
tree | 821cf6fe42e41f2d936d377c16b3bf28067f5013 | |
parent | 8c2b3ff7836ad1192f01806cdd6df35d1ce8459b (diff) | |
download | FreeBSD-src-cc377d53e072258816f9038b4773f8c056cdf516.zip FreeBSD-src-cc377d53e072258816f9038b4773f8c056cdf516.tar.gz |
Add support for two new winbond SPI flash parts.
The 8devices carambola 2 board uses the 16MB part.
Here's how it looks:
spibus0: <spibus bus> on spi0
mx25l0: <M25Pxx Flash Family> at cs 0 on spibus0
mx25l0: w25q128, sector 65536 bytes, 256 sectors
Tested:
* 8devices Carambola 2 board
-rw-r--r-- | sys/dev/flash/mx25l.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/dev/flash/mx25l.c b/sys/dev/flash/mx25l.c index 9203a5b..8956c30 100644 --- a/sys/dev/flash/mx25l.c +++ b/sys/dev/flash/mx25l.c @@ -108,10 +108,14 @@ struct mx25l_flash_ident flash_devices[] = { { "s25s1032", 0x01, 0x0215, 64 * 1024, 64, FL_NONE }, { "s25sl064a", 0x01, 0x0216, 64 * 1024, 128, FL_NONE }, { "SST25VF032B", 0xbf, 0x254a, 64 * 1024, 64, FL_ERASE_4K | FL_ERASE_32K }, + + /* Winbond -- w25x "blocks" are 64K, "sectors" are 4KiB */ + { "w25x32", 0xef, 0x3016, 64 * 1024, 64, FL_ERASE_4K }, { "w25q32", 0xef, 0x4016, 64 * 1024, 64, FL_ERASE_4K }, { "w25q64", 0xef, 0x4017, 64 * 1024, 128, FL_ERASE_4K }, { "w25q64bv", 0xef, 0x4017, 64 * 1024, 128, FL_ERASE_4K }, - { "w25x32", 0xef, 0x3016, 64 * 1024, 64, FL_ERASE_4K }, + { "w25q128", 0xef, 0x4018, 64 * 1024, 256, FL_ERASE_4K }, + { "w25q256", 0xef, 0x4019, 64 * 1024, 512, FL_ERASE_4K }, }; static uint8_t |