summaryrefslogtreecommitdiffstats
path: root/drivers/mtd/dataflash.c
diff options
context:
space:
mode:
authorSergey Lapin <slapin@ossfans.org>2008-08-09 01:39:09 +0400
committerJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2008-08-09 00:15:06 +0200
commitf77d92a3f56d88e63cc02226a1204b3bdbac6961 (patch)
treec512bdc2609401e18cc625f6faf89d882bc64f6c /drivers/mtd/dataflash.c
parent81091f58f0c58ecd26c5b05de2ae20ca6cdb521c (diff)
downloadblackbird-obmc-uboot-f77d92a3f56d88e63cc02226a1204b3bdbac6961.tar.gz
blackbird-obmc-uboot-f77d92a3f56d88e63cc02226a1204b3bdbac6961.zip
DataFlash: AT45DB021 fix and AT45DB081 support
Fix for page size of AT45DB021. Also adding bigger AT45DB081 which comes with some newer boards. Signed-off-by: Sergey Lapin <slapin@ossfans.org>
Diffstat (limited to 'drivers/mtd/dataflash.c')
-rw-r--r--drivers/mtd/dataflash.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/drivers/mtd/dataflash.c b/drivers/mtd/dataflash.c
index 0ad48cdae9..049da69fec 100644
--- a/drivers/mtd/dataflash.c
+++ b/drivers/mtd/dataflash.c
@@ -56,7 +56,7 @@ int AT91F_DataflashInit (void)
switch (dfcode) {
case AT45DB021:
dataflash_info[i].Device.pages_number = 1024;
- dataflash_info[i].Device.pages_size = 263;
+ dataflash_info[i].Device.pages_size = 264;
dataflash_info[i].Device.page_offset = 9;
dataflash_info[i].Device.byte_mask = 0x300;
dataflash_info[i].Device.cs = cs[i].cs;
@@ -65,6 +65,19 @@ int AT91F_DataflashInit (void)
dataflash_info[i].id = dfcode;
found[i] += dfcode;;
break;
+
+ case AT45DB081:
+ dataflash_info[i].Device.pages_number = 4096;
+ dataflash_info[i].Device.pages_size = 264;
+ dataflash_info[i].Device.page_offset = 9;
+ dataflash_info[i].Device.byte_mask = 0x300;
+ dataflash_info[i].Device.cs = cs[i].cs;
+ dataflash_info[i].Desc.DataFlash_state = IDLE;
+ dataflash_info[i].logical_address = cs[i].addr;
+ dataflash_info[i].id = dfcode;
+ found[i] += dfcode;;
+ break;
+
case AT45DB161:
dataflash_info[i].Device.pages_number = 4096;
dataflash_info[i].Device.pages_size = 528;
OpenPOWER on IntegriCloud