[PATCH v11 08/10] arm_ffa: introduce armffa command Sandbox test

Simon Glass sjg at chromium.org
Wed Apr 19 03:50:04 CEST 2023


Hi Abdellatif,

On Wed, 12 Apr 2023 at 03:43, Abdellatif El Khlifi
<abdellatif.elkhlifi at arm.com> wrote:
>
> Add Sandbox test for the armffa command
>
> Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi at arm.com>
> Reviewed-by: Simon Glass <sjg at chromium.org>
> Cc: Tom Rini <trini at konsulko.com>
> Cc: Simon Glass <sjg at chromium.org>
> Cc: Ilias Apalodimas <ilias.apalodimas at linaro.org>
> Cc: Jens Wiklander <jens.wiklander at linaro.org>
>
> ---
> Changelog:
> ===============
>
> v10:
>
> * replace CMD_RET_SUCCESS with 0
> * replace CONFIG_SANDBOX_FFA with CONFIG_ARM_FFA_TRANSPORT
>
> v9: align the test with FF-A discovery through DM
>
> v4: drop use of helper APIs
>
> v1: introduce armffa command sandbox test
>
>  MAINTAINERS       |  1 +
>  test/cmd/Makefile |  2 ++
>  test/cmd/armffa.c | 39 +++++++++++++++++++++++++++++++++++++++
>  3 files changed, 42 insertions(+)
>  create mode 100644 test/cmd/armffa.c

Reviewed-by: Simon Glass <sjg at chromium.org>

>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index cd99e655db..67eed92a9b 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -276,6 +276,7 @@ F:  doc/arch/arm64.ffa.rst
>  F:     doc/usage/cmd/armffa.rst
>  F:     drivers/firmware/arm-ffa/
>  F:     include/arm_ffa.h
> +F:     test/cmd/armffa.c
>  F:     test/dm/ffa.c
>
>  ARM FREESCALE IMX
> diff --git a/test/cmd/Makefile b/test/cmd/Makefile
> index 055adc65a2..1d1dbb4fbc 100644
> --- a/test/cmd/Makefile
> +++ b/test/cmd/Makefile
> @@ -1,6 +1,7 @@
>  # SPDX-License-Identifier: GPL-2.0+
>  #
>  # Copyright (c) 2013 Google, Inc
> +# Copyright 2022-2023 Arm Limited and/or its affiliates <open-source-office at arm.com>
>
>  ifdef CONFIG_HUSH_PARSER
>  obj-$(CONFIG_CONSOLE_RECORD) += test_echo.o
> @@ -23,6 +24,7 @@ obj-$(CONFIG_CMD_SEAMA) += seama.o
>  ifdef CONFIG_SANDBOX
>  obj-$(CONFIG_CMD_READ) += rw.o
>  obj-$(CONFIG_CMD_SETEXPR) += setexpr.o
> +obj-$(CONFIG_ARM_FFA_TRANSPORT) += armffa.o
>  endif
>  obj-$(CONFIG_CMD_TEMPERATURE) += temperature.o
>  obj-$(CONFIG_CMD_WGET) += wget.o
> diff --git a/test/cmd/armffa.c b/test/cmd/armffa.c
> new file mode 100644
> index 0000000000..a9768dbd2c
> --- /dev/null
> +++ b/test/cmd/armffa.c
> @@ -0,0 +1,39 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/*
> + * Test for armffa command
> + *
> + * Copyright 2022-2023 Arm Limited and/or its affiliates <open-source-office at arm.com>
> + *
> + * Authors:
> + *   Abdellatif El Khlifi <abdellatif.elkhlifi at arm.com>
> + */
> +
> +#include <common.h>
> +#include <string.h>
> +#include <asm/sandbox_arm_ffa.h>
> +#include <dm/test.h>
> +#include <test/test.h>
> +#include <test/ut.h>
> +
> +#define PING_CMD_SIZE 19
> +
> +/* Basic test of 'armffa' command */
> +static int dm_test_armffa_cmd(struct unit_test_state *uts)
> +{
> +       char ping_cmd[PING_CMD_SIZE] = {0};

No need to assign a value for something that gets written in the function.

> +
> +       /* armffa getpart <UUID> */
> +       ut_assertok(run_command("armffa getpart " SANDBOX_SERVICE1_UUID, 0));
> +
> +       snprintf(ping_cmd, PING_CMD_SIZE, "armffa ping 0x%x", SANDBOX_SP1_ID);
> +
> +       /* armffa ping <ID> */
> +       ut_assertok(run_command(ping_cmd, 0));

See run_commandf() so you can =avoid the sprintf()

> +
> +       /* armffa devlist */
> +       ut_assertok(run_command("armffa devlist", 0));
> +
> +       return 0;
> +}
> +
> +DM_TEST(dm_test_armffa_cmd, UT_TESTF_SCAN_FDT | UT_TESTF_CONSOLE_REC);
> --
> 2.25.1
>

Regards,
Simon


More information about the U-Boot mailing list