mirror of
				https://review.coreboot.org/flashrom.git
				synced 2025-11-04 15:10:39 +01:00 
			
		
		
		
	Add support for AT25DF021A
This is the low-voltage version of the AT25DF021. Tested with FT2232H Mini Module Change-Id: If4990e6856c8b77567ef4218459cf754b9c6bc57 Signed-off-by: Steffen Mauch <steffen.mauch@gmail.com> Reviewed-on: https://review.coreboot.org/26856 Reviewed-by: David Hendricks <david.hendricks@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
		
				
					committed by
					
						
						Nico Huber
					
				
			
			
				
	
			
			
			
						parent
						
							a50b8fde67
						
					
				
				
					commit
					0b59b0dafc
				
			
							
								
								
									
										39
									
								
								flashchips.c
									
									
									
									
									
								
							
							
						
						
									
										39
									
								
								flashchips.c
									
									
									
									
									
								
							@@ -1517,6 +1517,45 @@ const struct flashchip flashchips[] = {
 | 
			
		||||
		.voltage	= {2700, 3600}, /* 2.3-3.6V & 2.7-3.6V models available */
 | 
			
		||||
	},
 | 
			
		||||
 | 
			
		||||
	{
 | 
			
		||||
		.vendor		= "Atmel",
 | 
			
		||||
		.name		= "AT25DF021A",
 | 
			
		||||
		.bustype	= BUS_SPI,
 | 
			
		||||
		.manufacture_id	= ATMEL_ID,
 | 
			
		||||
		.model_id	= ATMEL_AT25DF021A,
 | 
			
		||||
		.total_size	= 256,
 | 
			
		||||
		.page_size	= 256,
 | 
			
		||||
		/* OTP: 128B total, 64B pre-programmed; read 0x77; write 0x9B */
 | 
			
		||||
		.feature_bits	= FEATURE_WRSR_WREN | FEATURE_OTP,
 | 
			
		||||
		.tested		= TEST_OK_PREW,
 | 
			
		||||
		.probe		= probe_spi_rdid,
 | 
			
		||||
		.probe_timing	= TIMING_ZERO,
 | 
			
		||||
		.block_erasers	=
 | 
			
		||||
		{
 | 
			
		||||
			{
 | 
			
		||||
				.eraseblocks = { {4 * 1024, 64} },
 | 
			
		||||
				.block_erase = spi_block_erase_20,
 | 
			
		||||
			}, {
 | 
			
		||||
				.eraseblocks = { {32 * 1024, 8} },
 | 
			
		||||
				.block_erase = spi_block_erase_52,
 | 
			
		||||
			}, {
 | 
			
		||||
				.eraseblocks = { {64 * 1024, 4} },
 | 
			
		||||
				.block_erase = spi_block_erase_d8,
 | 
			
		||||
			}, {
 | 
			
		||||
				.eraseblocks = { {256 * 1024, 1} },
 | 
			
		||||
				.block_erase = spi_block_erase_60,
 | 
			
		||||
			}, {
 | 
			
		||||
				.eraseblocks = { {256 * 1024, 1} },
 | 
			
		||||
				.block_erase = spi_block_erase_c7,
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		.printlock	= spi_prettyprint_status_register_at25df,
 | 
			
		||||
		.unlock		= spi_disable_blockprotect_at2x_global_unprotect,
 | 
			
		||||
		.write		= spi_chip_write_256,
 | 
			
		||||
		.read		= spi_chip_read,
 | 
			
		||||
		.voltage	= {1650, 3600},
 | 
			
		||||
	},
 | 
			
		||||
 | 
			
		||||
	{
 | 
			
		||||
		.vendor		= "Atmel",
 | 
			
		||||
		.name		= "AT25DF041A",
 | 
			
		||||
 
 | 
			
		||||
@@ -128,6 +128,7 @@
 | 
			
		||||
 | 
			
		||||
#define ATMEL_ID		0x1F	/* Atmel (now used by Adesto) */
 | 
			
		||||
#define ATMEL_AT25DF021		0x4300
 | 
			
		||||
#define ATMEL_AT25DF021A	0x4301
 | 
			
		||||
#define ATMEL_AT25DF041A	0x4401
 | 
			
		||||
#define ATMEL_AT25DF081		0x4502	/* EDI 0x00. AT25DL081 has same ID + EDI 0x0100 */
 | 
			
		||||
#define ATMEL_AT25DF081A	0x4501	/* Yes, 81A has a lower number than 81 */
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user