[U-Boot] [PATCH v1 1/3] toradex: configblock: add an -y parameter to 'cfgblock create’

Igor Opaniuk igor.opaniuk at toradex.com
Thu Mar 7 05:08:44 UTC 2019


Reviewed-by: Igor Opaniuk <igor.opaniuk at toradex.com>

On Fri, 1 Feb 2019 at 17:24, Marcel Ziswiler <marcel at ziswiler.com> wrote:
>
> From: Dominik Sliwa <dominik.sliwa at toradex.com>
>
> Add an optional -y parameter to 'cfgblock create’ to simplify
> automation.
>
> Signed-off-by: Dominik Sliwa <dominik.sliwa at toradex.com>
> Acked-by: Stefan Agner <stefan.agner at toradex.com>
> Acked-by: Marcel Ziswiler <marcel.ziswiler at toradex.com>
>
> ---
>
>  board/toradex/common/tdx-cfg-block.c | 39 ++++++++++++++++++----------
>  1 file changed, 26 insertions(+), 13 deletions(-)
>
> diff --git a/board/toradex/common/tdx-cfg-block.c b/board/toradex/common/tdx-cfg-block.c
> index d4f5b1803a..2fcb998ae4 100644
> --- a/board/toradex/common/tdx-cfg-block.c
> +++ b/board/toradex/common/tdx-cfg-block.c
> @@ -418,6 +418,7 @@ static int do_cfgblock_create(cmd_tbl_t *cmdtp, int flag, int argc,
>         int offset = 0;
>         int ret = CMD_RET_SUCCESS;
>         int err;
> +       int force_overwrite = 0;
>
>         /* Allocate RAM area for config block */
>         config_block = memalign(ARCH_DMA_MINALIGN, size);
> @@ -428,6 +429,11 @@ static int do_cfgblock_create(cmd_tbl_t *cmdtp, int flag, int argc,
>
>         memset(config_block, 0xff, size);
>
> +       if (argc >= 3) {
> +               if (argv[2][0] == '-' && argv[2][1] == 'y')
> +                       force_overwrite = 1;
> +       }
> +
>         read_tdx_cfg_block();
>         if (valid_cfgblock) {
>  #if defined(CONFIG_TDX_CFG_BLOCK_IS_IN_NAND)
> @@ -448,24 +454,31 @@ static int do_cfgblock_create(cmd_tbl_t *cmdtp, int flag, int argc,
>                        CONFIG_TDX_CFG_BLOCK_OFFSET);
>                 goto out;
>  #else
> -               char message[CONFIG_SYS_CBSIZE];
> -               sprintf(message,
> -                       "A valid Toradex config block is present, still recreate? [y/N] ");
> +               if (!force_overwrite) {
> +                       char message[CONFIG_SYS_CBSIZE];
>
> -               if (!cli_readline(message))
> -                       goto out;
> +                       sprintf(message,
> +                               "A valid Toradex config block is present, still recreate? [y/N] ");
>
> -               if (console_buffer[0] != 'y' && console_buffer[0] != 'Y')
> -                       goto out;
> +                       if (!cli_readline(message))
> +                               goto out;
> +
> +                       if (console_buffer[0] != 'y' &&
> +                           console_buffer[0] != 'Y')
> +                               goto out;
> +               }
>  #endif
>         }
>
>         /* Parse new Toradex config block data... */
> -       if (argc < 3)
> +       if (argc < 3 || (force_overwrite && argc < 4)) {
>                 err = get_cfgblock_interactive();
> -       else
> -               err = get_cfgblock_barcode(argv[2]);
> -
> +       } else {
> +               if (force_overwrite)
> +                       err = get_cfgblock_barcode(argv[3]);
> +               else
> +                       err = get_cfgblock_barcode(argv[2]);
> +       }
>         if (err) {
>                 ret = CMD_RET_FAILURE;
>                 goto out;
> @@ -549,8 +562,8 @@ static int do_cfgblock(cmd_tbl_t *cmdtp, int flag, int argc,
>  }
>
>  U_BOOT_CMD(
> -       cfgblock, 3, 0, do_cfgblock,
> +       cfgblock, 4, 0, do_cfgblock,
>         "Toradex config block handling commands",
> -       "create [barcode] - (Re-)create Toradex config block\n"
> +       "create [-y] [barcode] - (Re-)create Toradex config block\n"
>         "cfgblock reload - Reload Toradex config block from flash"
>  );
> --
> 2.20.1
>
> _______________________________________________
> 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