diff options
| -rw-r--r-- | drivers/mtd/dataflash.c | 14 | ||||
| -rw-r--r-- | include/dataflash.h | 1 | 
2 files changed, 15 insertions, 0 deletions
| diff --git a/drivers/mtd/dataflash.c b/drivers/mtd/dataflash.c index 8247aa03b..a092dc634 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 = 263; +			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 f20c73868..80f0633aa 100644 --- a/include/dataflash.h +++ b/include/dataflash.h @@ -137,6 +137,7 @@ struct dataflash_addr {  /*-------------------------------------------------------------------------------------------------*/  #define AT45DB161	0x2c +#define AT45DB021	0x14  #define AT45DB321	0x34  #define AT45DB642	0x3c  #define AT45DB128	0x10 |