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@chromium.org>
Reviewed-on: https://review.coreboot.org/18979
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
Julius Werner 2017-03-16 19:32:48 -07:00
parent 94d9411415
commit fa8fa7dd54
7 changed files with 8 additions and 22 deletions

View File

@ -19,7 +19,6 @@ config CHROMEOS
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

View File

@ -19,7 +19,6 @@ config CHROMEOS
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

View File

@ -33,7 +33,6 @@ if SOC_MARVELL_MVMAP2315
config CHROMEOS
select VBOOT
select VBOOT_DYNAMIC_WORK_BUFFER
select VBOOT_STARTS_IN_ROMSTAGE
config CONSOLE_SERIAL_MVMAP2315_UART_ADDRESS

View File

@ -95,17 +95,6 @@ config RETURN_FROM_VERSTAGE
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

View File

@ -46,7 +46,7 @@ static const size_t vb_work_buf_size = 16 * KiB;
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 struct vb2_working_data * const vboot_get_working_data(void)
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 @@ void vb2_store_selected_region(void)
}
/*
* 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();

View File

@ -175,12 +175,12 @@ void vboot_fill_handoff(void)
}
/*
* 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();

View File

@ -145,12 +145,12 @@ static void vboot_prepare(void)
/*
* 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();
}