mirror of
				https://xff.cz/git/u-boot/
				synced 2025-10-31 10:26:10 +01:00 
			
		
		
		
	DataFlash AT45DB021 support
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 <slapin@ossfans.org>
This commit is contained in:
		
				
					committed by
					
						 Jean-Christophe PLAGNIOL-VILLARD
						Jean-Christophe PLAGNIOL-VILLARD
					
				
			
			
				
	
			
			
			
						parent
						
							4109df6f75
						
					
				
				
					commit
					c6457e3b8b
				
			| @@ -54,6 +54,17 @@ int AT91F_DataflashInit (void) | |||||||
| 				&dataflash_info[i].Desc); | 				&dataflash_info[i].Desc); | ||||||
|  |  | ||||||
| 		switch (dfcode) { | 		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: | 		case AT45DB161: | ||||||
| 			dataflash_info[i].Device.pages_number = 4096; | 			dataflash_info[i].Device.pages_number = 4096; | ||||||
| 			dataflash_info[i].Device.pages_size = 528; | 			dataflash_info[i].Device.pages_size = 528; | ||||||
| @@ -178,6 +189,9 @@ void dataflash_print_info (void) | |||||||
| 		if (dataflash_info[i].id != 0) { | 		if (dataflash_info[i].id != 0) { | ||||||
| 			printf("DataFlash:"); | 			printf("DataFlash:"); | ||||||
| 			switch (dataflash_info[i].id) { | 			switch (dataflash_info[i].id) { | ||||||
|  | 			case AT45DB021: | ||||||
|  | 				printf("AT45DB021\n"); | ||||||
|  | 				break; | ||||||
| 			case AT45DB161: | 			case AT45DB161: | ||||||
| 				printf("AT45DB161\n"); | 				printf("AT45DB161\n"); | ||||||
| 				break; | 				break; | ||||||
|   | |||||||
| @@ -137,6 +137,7 @@ struct dataflash_addr { | |||||||
| /*-------------------------------------------------------------------------------------------------*/ | /*-------------------------------------------------------------------------------------------------*/ | ||||||
|  |  | ||||||
| #define AT45DB161	0x2c | #define AT45DB161	0x2c | ||||||
|  | #define AT45DB021	0x14 | ||||||
| #define AT45DB321	0x34 | #define AT45DB321	0x34 | ||||||
| #define AT45DB642	0x3c | #define AT45DB642	0x3c | ||||||
| #define AT45DB128	0x10 | #define AT45DB128	0x10 | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user