Some boards based on AT91SAM926X-EK use smaller DF chips to keep
bootstrap, u-boot and its environment, using NAND or other external
storage for kernel and rootfs. This patch adds support for
small 1024x263 chip.

Signed-off-by: Sergey Lapin <[EMAIL PROTECTED]>
---
 drivers/mtd/dataflash.c |   14 ++++++++++++++
 include/dataflash.h     |    2 +-
 2 files changed, 15 insertions(+), 1 deletions(-)

diff --git a/drivers/mtd/dataflash.c b/drivers/mtd/dataflash.c
index 8247aa0..1730cee 100644
--- a/drivers/mtd/dataflash.c
+++ b/drivers/mtd/dataflash.c
@@ -54,6 +54,17 @@ int AT91F_DataflashInit (void)
                                &dataflash_info[i].Desc);
 
                switch (dfcode) {
+               case AT45DB021:
+                       dataflash_info[i].Device.pages_number = 1024;
+                       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;
@@ -178,6 +189,9 @@ void dataflash_print_info (void)
                if (dataflash_info[i].id != 0) {
                        printf("DataFlash:");
                        switch (dataflash_info[i].id) {
+                       case AT45DB021:
+                               printf("AT45DB021\n");
+                               break;
                        case AT45DB161:
                                printf("AT45DB161\n");
                                break;
diff --git a/include/dataflash.h b/include/dataflash.h
index 6fdc4bb..9acd28e 100644
--- a/include/dataflash.h
+++ b/include/dataflash.h
@@ -135,7 +135,8 @@ struct dataflash_addr {
        int cs;
 };
 
/*-------------------------------------------------------------------------------------------------*/

+#define AT45DB021      0x14
 #define AT45DB161      0x2c
 #define AT45DB321      0x34
 #define AT45DB642      0x3c
-- 
1.5.4.1


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
U-Boot-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/u-boot-users

Reply via email to