summaryrefslogtreecommitdiff
path: root/include/flash.h
diff options
context:
space:
mode:
authorAngelo Dureghello <sysamfw@gmail.com>2012-12-01 01:14:18 +0100
committerStefan Roese <sr@denx.de>2013-01-10 14:39:13 +0100
commit07b2c5c0e5abb8b6b996068471024410a7ef4bd4 (patch)
tree342e5c444db790da94d826f797cee723d9cfef21 /include/flash.h
parent642ef40bdc95bef829ae3aadc217f829c4c298c4 (diff)
downloadu-boot-imx-07b2c5c0e5abb8b6b996068471024410a7ef4bd4.zip
u-boot-imx-07b2c5c0e5abb8b6b996068471024410a7ef4bd4.tar.gz
u-boot-imx-07b2c5c0e5abb8b6b996068471024410a7ef4bd4.tar.bz2
mtd/cfi: add support for SST 4KB sector granularity
Add support for SST 4KB sector granularity. Many recent SST flashes, i.e. SST39VF3201B and similar of this family are declared CFI-conformant from SST. They support CFI query, but implement 2 different sector sizes in the same memory: a 64KB sector (they call it "block", std AMD erase cmd=0x30), and a 4KB sector (they call it "sector", erase cmd=0x50). Also, CFI query on these chips, reading from address 0x2dh of cfi query struct, detects a number of secotrs for the 4KB granularity (flinfo shows it). For all other aspects, they are CFI compliant, so, as Linux do, i think it's a good idea to handle these chips in the CFI driver, with a fixup to allow 4KB granularity, as should be expected, instead of 64KB. Signed-off-by: Angelo Dureghello <sysamfw@gmail.com> Signed-off-by: Stefan Rose <sr@denx.de>
Diffstat (limited to 'include/flash.h')
-rw-r--r--include/flash.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/flash.h b/include/flash.h
index 7db599e..c7acc97 100644
--- a/include/flash.h
+++ b/include/flash.h
@@ -44,6 +44,7 @@ typedef struct {
ulong buffer_write_tout; /* maximum buffer write timeout */
ushort vendor; /* the primary vendor id */
ushort cmd_reset; /* vendor specific reset command */
+ uchar cmd_erase_sector; /* vendor specific erase sect. command */
ushort interface; /* used for x8/x16 adjustments */
ushort legacy_unlock; /* support Intel legacy (un)locking */
ushort manufacturer_id; /* manufacturer id */