uboot/include/bootretry.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0+ */
   2/*
   3 * (C) Copyright 2000
   4 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
   5 */
   6
   7#ifndef __BOOTRETRY_H
   8#define __BOOTRETRY_H
   9
  10#ifdef CONFIG_BOOT_RETRY_TIME
  11/**
  12 * bootretry_tstc_timeout() - ensure we get a keypress before timeout
  13 *
  14 * Check for a keypress repeatedly, resetting the watchdog each time. If a
  15 * keypress is not received within the command timeout, return an error.
  16 *
  17 * @return 0 if a key is received in time, -ETIMEDOUT if not
  18 */
  19int bootretry_tstc_timeout(void);
  20
  21/**
  22 * bootretry_init_cmd_timeout() - set up command timeout
  23 *
  24 * Get the required command timeout from the environment.
  25 */
  26void bootretry_init_cmd_timeout(void);
  27
  28/**
  29 * bootretry_reset_cmd_timeout() - reset command timeout
  30 *
  31 * Reset the command timeout so that the user has a fresh start. This is
  32 * typically used when input is received from the user.
  33 */
  34void bootretry_reset_cmd_timeout(void);
  35
  36/** bootretry_dont_retry() - Indicate that we should not retry the boot */
  37void bootretry_dont_retry(void);
  38#else
  39static inline int bootretry_tstc_timeout(void)
  40{
  41        return 0;
  42}
  43
  44static inline void bootretry_init_cmd_timeout(void)
  45{
  46}
  47
  48static inline void bootretry_reset_cmd_timeout(void)
  49{
  50}
  51
  52static inline void bootretry_dont_retry(void)
  53{
  54}
  55
  56#endif
  57
  58#endif
  59