Skip to content
  • Julius Werner's avatar
    vboot: Clean up pre-RAM use of vboot_recovery_mode_enabled() · 29fbfcc4
    Julius Werner authored
    
    
    vboot_recovery_mode_enabled() was recently changed to assert() when it
    is called before vboot logic has run, because we cannot determine
    whether we're going to be in recovery mode at that point and we wanted
    to flush out existing uses that pretended that we could. Turns out there
    are a bunch of uses like that, and there is some code that is shared
    across configurations that can and those that can't.
    
    This patch cleans them up to either remove checks that cannot return
    true, or add explicit Kconfig guards to clarify that the code is shared.
    This means that using a separate recovery MRC cache is no longer
    supported on boards that use VBOOT_STARTS_IN_ROMSTAGE (this has already
    been broken with CB:38780, but with this patch those boards will boot
    again using their normal MRC caches rather than just die). Skipping the
    MRC cache and always regenerating from scratch in recovery mode is
    likewise no longer supported for VBOOT_STARTS_IN_ROMSTAGE.
    
    For FSP1.1 boards, none of them support VBOOT_STARTS_IN_BOOTBLOCK and
    that is unlikely to change in the future so we will just hardcode that
    fact in Kconfig (otherwise, fsp1.1 raminit would also have to be fixed
    to work around this issue).
    
    Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
    Change-Id: I31bfc7663724fdacab9955224dcaf650d1ec1c3c
    Reviewed-on: https://review.coreboot.org/c/coreboot/+/39221
    
    
    Tested-by: default avatarbuild bot (Jenkins) <no-reply@coreboot.org>
    Reviewed-by: default avatarAaron Durbin <adurbin@chromium.org>
    29fbfcc4