[coreboot-gerrit] New patch to review for coreboot: drivers/elog: remove parameters from elog_flash_erase()

Aaron Durbin (adurbin@chromium.org) gerrit at coreboot.org
Sat Aug 6 08:32:41 CEST 2016


Aaron Durbin (adurbin at chromium.org) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/16094

-gerrit

commit 7f5e30d79486dc5bd64233375a3fbfdfd19f1174
Author: Aaron Durbin <adurbin at chromium.org>
Date:   Wed Aug 3 21:57:15 2016 -0500

    drivers/elog: remove parameters from elog_flash_erase()
    
    The elog_flash_erase() was only called to erase the entire
    elog region in flash. Therefore, drop the parameters and
    perform the full erase.
    
    BUG=chrome-os-partner:55932
    
    Change-Id: I6590347ae60d407bc0df141e9196eb70532f8585
    Signed-off-by: Aaron Durbin <adurbin at chromium.org>
---
 src/drivers/elog/elog.c | 21 ++++++++-------------
 1 file changed, 8 insertions(+), 13 deletions(-)

diff --git a/src/drivers/elog/elog.c b/src/drivers/elog/elog.c
index d8c7ff6..b78eee0 100644
--- a/src/drivers/elog/elog.c
+++ b/src/drivers/elog/elog.c
@@ -226,21 +226,16 @@ static void elog_flash_write(void *address, u32 size)
  * Erase the first block specified in the address.
  * Only handles flash area within a single flash block.
  */
-static void elog_flash_erase(void *address, u32 size)
+static void elog_flash_erase(void)
 {
-	u32 offset;
-
-	if (!address || !size || !elog_spi)
+	if (!elog_spi)
 		return;
 
-	offset = flash_base;
-	offset += (u8 *)address - (u8*)elog_area;
-
-	elog_debug("elog_flash_erase(address=0x%p offset=0x%08x size=%u)\n",
-		   address, offset, size);
+	elog_debug("elog_flash_erase(offset=0x%08x size=%u)\n",
+		   flash_base, total_size);
 
 	/* Erase the sectors in this region */
-	elog_spi->erase(elog_spi, offset, size);
+	elog_spi->erase(elog_spi, flash_base, total_size);
 }
 
 /*
@@ -371,7 +366,7 @@ static int elog_shrink(void)
 	memmove(&elog_area->data[0], &elog_area->data[offset], new_size);
 	memset(&elog_area->data[new_size], ELOG_TYPE_EOL, log_size - new_size);
 
-	elog_flash_erase(elog_area, total_size);
+	elog_flash_erase();
 	elog_flash_write(elog_area, total_size);
 	elog_scan_flash();
 
@@ -459,7 +454,7 @@ int elog_clear(void)
 		return -1;
 
 	/* Erase flash area */
-	elog_flash_erase(elog_area, total_size);
+	elog_flash_erase();
 	elog_prepare_empty();
 
 	if (!elog_is_area_valid())
@@ -546,7 +541,7 @@ int elog_init(void)
 		/* If the header is invalid or the events are corrupted,
 		 * no events can be salvaged so erase the entire area. */
 		printk(BIOS_ERR, "ELOG: flash area invalid\n");
-		elog_flash_erase(elog_area, total_size);
+		elog_flash_erase();
 		elog_prepare_empty();
 	}
 



More information about the coreboot-gerrit mailing list