[coreboot-gerrit] Change in coreboot[master]: vboot: Remove VBOOT_DYNAMIC_WORK_BUFFER Kconfig option

Julius Werner (Code Review) gerrit at coreboot.org
Sat Mar 25 02:58:36 CET 2017


Hello Aaron Durbin, Patrick Georgi, Furquan Shaikh,

I'd like you to do a code review.  Please visit

    https://review.coreboot.org/18979

to review the following change.


Change subject: vboot: Remove VBOOT_DYNAMIC_WORK_BUFFER Kconfig option
......................................................................

vboot: Remove VBOOT_DYNAMIC_WORK_BUFFER Kconfig option

VBOOT_DYNAMIC_WORK_BUFFER and VBOOT_STARTS_IN_ROMSTAGE are equivalent in
practice. We can't have a dynamic work buffer unless we start in/after
romstage, and there'd be no reason to go with a static buffer if we do.
Let's get rid of one extra option and merge the two.

Change-Id: I3f953c8d2a8dcb3f65b07f548184d6dd0eb688fe
Signed-off-by: Julius Werner <jwerner at chromium.org>
---
M src/mainboard/google/cyan/Kconfig
M src/mainboard/intel/strago/Kconfig
M src/soc/marvell/mvmap2315/Kconfig
M src/vboot/Kconfig
M src/vboot/common.c
M src/vboot/vboot_handoff.c
M src/vboot/vboot_loader.c
7 files changed, 8 insertions(+), 22 deletions(-)


  git pull ssh://review.coreboot.org:29418/coreboot refs/changes/79/18979/1

diff --git a/src/mainboard/google/cyan/Kconfig b/src/mainboard/google/cyan/Kconfig
index d236aa0..6b9d5a2 100644
--- a/src/mainboard/google/cyan/Kconfig
+++ b/src/mainboard/google/cyan/Kconfig
@@ -19,7 +19,6 @@
 	select EC_GOOGLE_CHROMEEC_SWITCHES
 	select EC_SOFTWARE_SYNC
 	select LID_SWITCH
-	select VBOOT_DYNAMIC_WORK_BUFFER
 	select VBOOT_VBNV_CMOS
 	select VIRTUAL_DEV_SWITCH
 
diff --git a/src/mainboard/intel/strago/Kconfig b/src/mainboard/intel/strago/Kconfig
index 0d59371..8915323 100644
--- a/src/mainboard/intel/strago/Kconfig
+++ b/src/mainboard/intel/strago/Kconfig
@@ -19,7 +19,6 @@
 	select EC_GOOGLE_CHROMEEC_SWITCHES
 	select EC_SOFTWARE_SYNC
 	select LID_SWITCH
-	select VBOOT_DYNAMIC_WORK_BUFFER
 	select VBOOT_VBNV_CMOS
 	select VIRTUAL_DEV_SWITCH
 
diff --git a/src/soc/marvell/mvmap2315/Kconfig b/src/soc/marvell/mvmap2315/Kconfig
index d27f4c4..45e03c1 100644
--- a/src/soc/marvell/mvmap2315/Kconfig
+++ b/src/soc/marvell/mvmap2315/Kconfig
@@ -33,7 +33,6 @@
 
 config CHROMEOS
 	select VBOOT
-	select VBOOT_DYNAMIC_WORK_BUFFER
 	select VBOOT_STARTS_IN_ROMSTAGE
 
 config CONSOLE_SERIAL_MVMAP2315_UART_ADDRESS
diff --git a/src/vboot/Kconfig b/src/vboot/Kconfig
index 2b6cde1..0c72d47 100644
--- a/src/vboot/Kconfig
+++ b/src/vboot/Kconfig
@@ -95,17 +95,6 @@
 	  reused by the succeeding stage. This is useful if a RAM space is too
 	  small to fit both the verstage and the succeeding stage.
 
-config VBOOT_DYNAMIC_WORK_BUFFER
-	bool "Vboot's work buffer is dynamically allocated."
-	default y if ARCH_ROMSTAGE_X86_32 && !SEPARATE_VERSTAGE
-	default n
-	depends on VBOOT
-	help
-	  This option is used when there isn't enough pre-main memory
-	  RAM to allocate the vboot work buffer. That means vboot verification
-	  is after memory init and requires main memory to back the work
-	  buffer.
-
 config VBOOT_SAVE_RECOVERY_REASON_ON_REBOOT
 	bool
 	default n
diff --git a/src/vboot/common.c b/src/vboot/common.c
index cfdb82a..3e480ed 100644
--- a/src/vboot/common.c
+++ b/src/vboot/common.c
@@ -46,7 +46,7 @@
 
 static struct vb2_working_data * const vboot_get_working_data(void)
 {
-	if (IS_ENABLED(CONFIG_VBOOT_DYNAMIC_WORK_BUFFER))
+	if (IS_ENABLED(CONFIG_VBOOT_STARTS_IN_ROMSTAGE))
 		/* cbmem_add() does a cbmem_find() first. */
 		return cbmem_add(CBMEM_ID_VBOOT_WORKBUF, vb_work_buf_size);
 	else
@@ -55,7 +55,7 @@
 
 static size_t vb2_working_data_size(void)
 {
-	if (IS_ENABLED(CONFIG_VBOOT_DYNAMIC_WORK_BUFFER))
+	if (IS_ENABLED(CONFIG_VBOOT_STARTS_IN_ROMSTAGE))
 		return vb_work_buf_size;
 	else
 		return _vboot2_work_size;
@@ -168,12 +168,12 @@
 }
 
 /*
- * For platforms that employ VBOOT_DYNAMIC_WORK_BUFFER, the vboot
+ * For platforms that employ VBOOT_STARTS_IN_ROMSTAGE, the vboot
  * verification doesn't happen until after cbmem is brought online.
  * Therefore, the selected region contents would not be initialized
  * so don't automatically add results when cbmem comes online.
  */
-#if !IS_ENABLED(CONFIG_VBOOT_DYNAMIC_WORK_BUFFER)
+#if !IS_ENABLED(CONFIG_VBOOT_STARTS_IN_ROMSTAGE)
 static void vb2_store_selected_region_cbmem(int unused)
 {
 	vb2_store_selected_region();
diff --git a/src/vboot/vboot_handoff.c b/src/vboot/vboot_handoff.c
index 2533a1d..2bd5c09 100644
--- a/src/vboot/vboot_handoff.c
+++ b/src/vboot/vboot_handoff.c
@@ -175,12 +175,12 @@
 }
 
 /*
- * For platforms that employ VBOOT_DYNAMIC_WORK_BUFFER, the vboot
+ * For platforms that employ VBOOT_STARTS_IN_ROMSTAGE, the vboot
  * verification doesn't happen until after cbmem is brought online.
  * Therefore, the vboot results would not be initialized so don't
  * automatically add results when cbmem comes online.
  */
-#if !IS_ENABLED(CONFIG_VBOOT_DYNAMIC_WORK_BUFFER)
+#if !IS_ENABLED(CONFIG_VBOOT_STARTS_IN_ROMSTAGE)
 static void vb2_fill_handoff_cbmem(int unused)
 {
 	vboot_fill_handoff();
diff --git a/src/vboot/vboot_loader.c b/src/vboot/vboot_loader.c
index 207aada..9593358 100644
--- a/src/vboot/vboot_loader.c
+++ b/src/vboot/vboot_loader.c
@@ -145,12 +145,12 @@
 	/*
 	 * Fill in vboot cbmem objects before moving to ramstage so all
 	 * downstream users have access to vboot results. This path only
-	 * applies to platforms employing VBOOT_DYNAMIC_WORK_BUFFER because
+	 * applies to platforms employing VBOOT_STARTS_IN_ROMSTAGE because
 	 * cbmem comes online prior to vboot verification taking place. For
 	 * other platforms the vboot cbmem objects are initialized when
 	 * cbmem comes online.
 	 */
-	if (ENV_ROMSTAGE && IS_ENABLED(CONFIG_VBOOT_DYNAMIC_WORK_BUFFER)) {
+	if (ENV_ROMSTAGE && IS_ENABLED(CONFIG_VBOOT_STARTS_IN_ROMSTAGE)) {
 		vb2_store_selected_region();
 		vboot_fill_handoff();
 	}

-- 
To view, visit https://review.coreboot.org/18979
To unsubscribe, visit https://review.coreboot.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I3f953c8d2a8dcb3f65b07f548184d6dd0eb688fe
Gerrit-PatchSet: 1
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Owner: Julius Werner <jwerner at chromium.org>
Gerrit-Reviewer: Aaron Durbin <adurbin at chromium.org>
Gerrit-Reviewer: Furquan Shaikh <furquan at google.com>
Gerrit-Reviewer: Patrick Georgi <pgeorgi at google.com>



More information about the coreboot-gerrit mailing list