mirror of
				https://review.coreboot.org/flashrom.git
				synced 2025-10-31 21:30:42 +01:00 
			
		
		
		
	Add initial Atmel AT49LH002 FWH/LPC chip support
The chip code is untested, only one erase function out of two is currently implemented, and unlocking/printlocking is not yet supported. Thanks Mattias Mattsson <vitplister@gmail.com> for the initial patch! Corresponding to flashrom svn r1434. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
This commit is contained in:
		
							
								
								
									
										36
									
								
								flashchips.c
									
									
									
									
									
								
							
							
						
						
									
										36
									
								
								flashchips.c
									
									
									
									
									
								
							| @@ -2304,6 +2304,42 @@ const struct flashchip flashchips[] = { | |||||||
| 		.voltage	= {4500, 5500}, | 		.voltage	= {4500, 5500}, | ||||||
| 	}, | 	}, | ||||||
|  |  | ||||||
|  | 	{ | ||||||
|  | 		.vendor		= "Atmel", | ||||||
|  | 		.name		= "AT49LH002", | ||||||
|  | 		.bustype	= BUS_LPC | BUS_FWH, /* A/A Mux */ | ||||||
|  | 		.manufacture_id	= ATMEL_ID, | ||||||
|  | 		.model_id	= ATMEL_AT49LH002, | ||||||
|  | 		.total_size	= 256, | ||||||
|  | 		.page_size	= 0, /* unused */ | ||||||
|  | 		.feature_bits	= FEATURE_REGISTERMAP, /* TODO: LPC OK too? */ | ||||||
|  | 		.tested		= TEST_UNTESTED, | ||||||
|  | 		.probe		= probe_82802ab, /* TODO: 0xff cmd not documented? */ | ||||||
|  | 		.probe_timing	= TIMING_FIXME, | ||||||
|  | 		.block_erasers	= | ||||||
|  | 		{ | ||||||
|  | 			{ | ||||||
|  | 				.eraseblocks = { | ||||||
|  | 					{64 * 1024, 3}, | ||||||
|  | 					{32 * 1024, 1}, | ||||||
|  | 					{8 * 1024, 2}, | ||||||
|  | 					{16 * 1024, 1}, | ||||||
|  | 				}, | ||||||
|  | 				.block_erase = erase_block_82802ab, | ||||||
|  | 			}, { | ||||||
|  | 				.eraseblocks = { | ||||||
|  | 					{64 * 1024, 4}, | ||||||
|  | 				}, | ||||||
|  | 				.block_erase = NULL, /* TODO: Implement. */ | ||||||
|  | 			}, | ||||||
|  | 		}, | ||||||
|  | 		.printlock	= NULL, /* TODO */ | ||||||
|  | 		.unlock		= NULL, /* unlock_82802ab() not correct(?) */ | ||||||
|  | 		.write		= write_82802ab, | ||||||
|  | 		.read		= read_memmapped, | ||||||
|  | 		.voltage	= {3000, 3600}, | ||||||
|  | 	}, | ||||||
|  |  | ||||||
| 	{ | 	{ | ||||||
| 		.vendor		= "Bright", | 		.vendor		= "Bright", | ||||||
| 		.name		= "BM29F040", | 		.name		= "BM29F040", | ||||||
|   | |||||||
| @@ -184,6 +184,7 @@ | |||||||
| #define ATMEL_AT49F020		0x0B | #define ATMEL_AT49F020		0x0B | ||||||
| #define ATMEL_AT49F002N		0x07	/* for AT49F002(N)  */ | #define ATMEL_AT49F002N		0x07	/* for AT49F002(N)  */ | ||||||
| #define ATMEL_AT49F002NT		0x08	/* for AT49F002(N)T */ | #define ATMEL_AT49F002NT		0x08	/* for AT49F002(N)T */ | ||||||
|  | #define ATMEL_AT49LH002		0xE9 | ||||||
|  |  | ||||||
| /* Bright Microelectronics has the same manufacturer ID as Hyundai... */ | /* Bright Microelectronics has the same manufacturer ID as Hyundai... */ | ||||||
| #define BRIGHT_ID		0xAD	/* Bright Microelectronics */ | #define BRIGHT_ID		0xAD	/* Bright Microelectronics */ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Uwe Hermann
					Uwe Hermann