[U-Boot] [PATCH 1/1] efi_loader: efi_set_watchdog_timer return EFI_SUCCESS
Alexander Graf
agraf at suse.de
Fri Aug 18 08:50:54 UTC 2017
On 17.08.17 19:18, Heinrich Schuchardt wrote:
> The UEFI standard requires a watchdog timer that is preset to
> five minutes. After this period the system is reset.
>
> The watchdog shall be disabled by ExitBootServices.
>
> An EFI application can call efi_set_watchdog_timer to either
> reset the watchdog timer or disable it. This may be necessary
> if the EFI application has an interactive interface which may
> be used for more than five minutes, e.g. the grub console.
>
> U-Boot currently does not implement this watchdog.
>
> If efi_set_watchdog_timer is called to reset the watchdog we
> can safely return EFI_SUCCESS to signal that we will not
> interrupt the EFI application in the timeout interval.
>
> Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
U-Boot actually implements a watchdog, but doesn't expose the details of
it to UEFI payloads.
Could you please explain why you need to fake a successful return code
here? A payload may depend on the fact that the watchdog does actually
trigger after n seconds, but with this change wouldn't have any chance
to know it won't happen.
Alex
> ---
> lib/efi_loader/efi_boottime.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c
> index 2674c5187e..de6646feb0 100644
> --- a/lib/efi_loader/efi_boottime.c
> +++ b/lib/efi_loader/efi_boottime.c
> @@ -887,7 +887,7 @@ static efi_status_t EFIAPI efi_set_watchdog_timer(unsigned long timeout,
> {
> EFI_ENTRY("%ld, 0x%"PRIx64", %ld, %p", timeout, watchdog_code,
> data_size, watchdog_data);
> - return efi_unsupported(__func__);
> + return EFI_EXIT(EFI_SUCCESS);
> }
>
> static efi_status_t EFIAPI efi_connect_controller(
>
More information about the U-Boot
mailing list