[U-Boot] [PATCH v2 13/18] autoboot: Tidy up use of menukey

Da Xue da at lessconfused.com
Mon May 4 23:31:42 CEST 2020


Hi Simon,

I think there's something funny going on with this line: #define
AUTOBOOT_MENUKEY CONFIG_USE_AUTOBOOT_MENUKEY
Did you mean: #define AUTOBOOT_MENUKEY CONFIG_AUTOBOOT_MENUKEY?

Best,
Da

On Mon, May 4, 2020 at 5:26 PM Da Xue <da at lessconfused.com> wrote:

> Hi Simon,
>
> The Kconfig doesn't match the common/autoboot.c. Kconfig is using
> AUTOBOOT_USE_MENUKEY and common/autoboot.c is CONFIG_USE_AUTOBOOT_MENUKEY.
>
> Best,
> Da
>
> On Sat, Jul 20, 2019 at 11:56 PM Simon Glass <sjg at chromium.org> wrote:
>
>> Move the variable to the top of the file and adjust the code which uses it
>> to use if() rather than #ifdef, to make it easier to read.
>>
>> Signed-off-by: Simon Glass <sjg at chromium.org>
>> ---
>>
>> Changes in v2: None
>>
>>  common/autoboot.c | 26 ++++++++++++++------------
>>  1 file changed, 14 insertions(+), 12 deletions(-)
>>
>> diff --git a/common/autoboot.c b/common/autoboot.c
>> index ad189a8ba2..9752470873 100644
>> --- a/common/autoboot.c
>> +++ b/common/autoboot.c
>> @@ -28,6 +28,7 @@ DECLARE_GLOBAL_DATA_PTR;
>>
>>  /* Stored value of bootdelay, used by autoboot_command() */
>>  static int stored_bootdelay;
>> +static int menukey;
>>
>>  #ifdef CONFIG_AUTOBOOT_ENCRYPTION
>>  #define AUTOBOOT_STOP_STR_SHA256 CONFIG_AUTOBOOT_STOP_STR_SHA256
>> @@ -35,6 +36,12 @@ static int stored_bootdelay;
>>  #define AUTOBOOT_STOP_STR_SHA256 ""
>>  #endif
>>
>> +#ifdef CONFIG_USE_AUTOBOOT_MENUKEY
>> +#define AUTOBOOT_MENUKEY CONFIG_USE_AUTOBOOT_MENUKEY
>> +#else
>> +#define AUTOBOOT_MENUKEY 0
>> +#endif
>> +
>>  /*
>>   * Use a "constant-length" time compare function for this
>>   * hash compare:
>> @@ -224,10 +231,6 @@ static int abortboot_key_sequence(int bootdelay)
>>         return abort;
>>  }
>>
>> -#ifdef CONFIG_USE_AUTOBOOT_MENUKEY
>> -static int menukey;
>> -#endif
>> -
>>  static int abortboot_single_key(int bootdelay)
>>  {
>>         int abort = 0;
>> @@ -250,13 +253,13 @@ static int abortboot_single_key(int bootdelay)
>>                 ts = get_timer(0);
>>                 do {
>>                         if (tstc()) {   /* we got a key press   */
>> +                               int key;
>> +
>>                                 abort  = 1;     /* don't auto boot      */
>>                                 bootdelay = 0;  /* no more delay        */
>> -# ifdef CONFIG_USE_AUTOBOOT_MENUKEY
>> -                               menukey = getc();
>> -# else
>> -                               (void) getc();  /* consume input        */
>> -# endif
>> +                               key = getc(); /* consume input  */
>> +                               if
>> (IS_ENABLED(CONFIG_USE_AUTOBOOT_MENUKEY))
>> +                                       menukey = key;
>>                                 break;
>>                         }
>>                         udelay(10000);
>> @@ -358,11 +361,10 @@ void autoboot_command(const char *s)
>>  #endif
>>         }
>>
>> -#ifdef CONFIG_USE_AUTOBOOT_MENUKEY
>> -       if (menukey == CONFIG_AUTOBOOT_MENUKEY) {
>> +       if (IS_ENABLED(CONFIG_USE_AUTOBOOT_MENUKEY) &&
>> +           menukey == AUTOBOOT_MENUKEY) {
>>                 s = env_get("menucmd");
>>                 if (s)
>>                         run_command_list(s, -1, 0);
>>         }
>> -#endif /* CONFIG_USE_AUTOBOOT_MENUKEY */
>>  }
>> --
>> 2.22.0.657.g960e92d24f-goog
>>
>> _______________________________________________
>> U-Boot mailing list
>> U-Boot at lists.denx.de
>> https://lists.denx.de/listinfo/u-boot
>>
>


More information about the U-Boot mailing list