xref: /aosp_15_r20/external/flashrom/sst49lfxxxc.c (revision 0d6140be3aa665ecc836e8907834fcd3e3b018fc)
1*0d6140beSAndroid Build Coastguard Worker /*
2*0d6140beSAndroid Build Coastguard Worker  * This file is part of the flashrom project.
3*0d6140beSAndroid Build Coastguard Worker  *
4*0d6140beSAndroid Build Coastguard Worker  * Copyright (C) 2000 Silicon Integrated System Corporation
5*0d6140beSAndroid Build Coastguard Worker  * Copyright (C) 2005-2007 coresystems GmbH
6*0d6140beSAndroid Build Coastguard Worker  * Copyright (C) 2009 Sean Nelson <[email protected]>
7*0d6140beSAndroid Build Coastguard Worker  *
8*0d6140beSAndroid Build Coastguard Worker  * This program is free software; you can redistribute it and/or modify
9*0d6140beSAndroid Build Coastguard Worker  * it under the terms of the GNU General Public License as published by
10*0d6140beSAndroid Build Coastguard Worker  * the Free Software Foundation; either version 2 of the License, or
11*0d6140beSAndroid Build Coastguard Worker  * (at your option) any later version.
12*0d6140beSAndroid Build Coastguard Worker  *
13*0d6140beSAndroid Build Coastguard Worker  * This program is distributed in the hope that it will be useful,
14*0d6140beSAndroid Build Coastguard Worker  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15*0d6140beSAndroid Build Coastguard Worker  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16*0d6140beSAndroid Build Coastguard Worker  * GNU General Public License for more details.
17*0d6140beSAndroid Build Coastguard Worker  */
18*0d6140beSAndroid Build Coastguard Worker 
19*0d6140beSAndroid Build Coastguard Worker #include "flash.h"
20*0d6140beSAndroid Build Coastguard Worker #include "chipdrivers.h"
21*0d6140beSAndroid Build Coastguard Worker 
erase_sector_49lfxxxc(struct flashctx * flash,unsigned int address,unsigned int sector_size)22*0d6140beSAndroid Build Coastguard Worker int erase_sector_49lfxxxc(struct flashctx *flash, unsigned int address,
23*0d6140beSAndroid Build Coastguard Worker 			  unsigned int sector_size)
24*0d6140beSAndroid Build Coastguard Worker {
25*0d6140beSAndroid Build Coastguard Worker 	uint8_t status;
26*0d6140beSAndroid Build Coastguard Worker 	chipaddr bios = flash->virtual_memory;
27*0d6140beSAndroid Build Coastguard Worker 
28*0d6140beSAndroid Build Coastguard Worker 	chip_writeb(flash, 0x30, bios);
29*0d6140beSAndroid Build Coastguard Worker 	chip_writeb(flash, 0xD0, bios + address);
30*0d6140beSAndroid Build Coastguard Worker 
31*0d6140beSAndroid Build Coastguard Worker 	status = wait_82802ab(flash);
32*0d6140beSAndroid Build Coastguard Worker 	print_status_82802ab(status);
33*0d6140beSAndroid Build Coastguard Worker 
34*0d6140beSAndroid Build Coastguard Worker 	/* FIXME: Check the status register for errors. */
35*0d6140beSAndroid Build Coastguard Worker 	return 0;
36*0d6140beSAndroid Build Coastguard Worker }
37