]> git.karo-electronics.de Git - karo-tx-uboot.git/blobdiff - drivers/mtd/dataflash.c
nand: fsl_upm: convert to updated MTD NAND infrastructure
[karo-tx-uboot.git] / drivers / mtd / dataflash.c
index a092dc634fa7363e25cd1da93f404f522b4f7419..049da69fec3cc2bb2604b90cc7354b0713315045 100644 (file)
@@ -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;
@@ -173,7 +186,7 @@ void AT91F_DataflashSetEnv (void)
                        if((env & FLAG_SETENV) == FLAG_SETENV) {
                                start =
                                dataflash_info[i].Device.area_list[j].start;
-                               sprintf((char*) s,"%X",start);
+                               sprintf((char*) s,"%lX",start);
                                setenv((char*) area_list[part].label,(char*) s);
                        }
                        part++;