blob: db0d4b0b729d5d565e646c1c613a9a8fb2e016eb [file] [log] [blame]
Andrew Geisslerea144b032023-01-27 16:03:57 -06001From 5507189fe37f1243d685c59ea52fa5643d3cc50c Mon Sep 17 00:00:00 2001
Patrick Williams8dd68482022-10-04 07:57:18 -05002From: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Andrew Geisslerea144b032023-01-27 16:03:57 -06003Date: Tue, 29 Nov 2022 14:48:34 +0000
4Subject: [PATCH 08/25] arm_ffa: introduce armffa command Sandbox test
Patrick Williams8dd68482022-10-04 07:57:18 -05005
6Add Sandbox test for the armffa command
7
8Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Andrew Geisslerea144b032023-01-27 16:03:57 -06009Cc: Tom Rini <trini@konsulko.com>
10Cc: Simon Glass <sjg@chromium.org>
11Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org>
12Cc: Jens Wiklander <jens.wiklander@linaro.org>
13Upstream-Status: Submitted [cover letter: https://lore.kernel.org/all/20221122131751.22747-1-abdellatif.elkhlifi@arm.com/]
Patrick Williams8dd68482022-10-04 07:57:18 -050014
15Changelog:
16===============
17
18v4: drop use of helper APIs
19
20v1: introduce armffa command sandbox test
Andrew Geisslerea144b032023-01-27 16:03:57 -060021---
Patrick Williams8dd68482022-10-04 07:57:18 -050022 MAINTAINERS | 1 +
Andrew Geisslerea144b032023-01-27 16:03:57 -060023 test/cmd/Makefile | 2 ++
24 test/cmd/armffa.c | 39 +++++++++++++++++++++++++++++++++++++++
Patrick Williams8dd68482022-10-04 07:57:18 -050025 3 files changed, 42 insertions(+)
26 create mode 100644 test/cmd/armffa.c
27
28diff --git a/MAINTAINERS b/MAINTAINERS
Andrew Geisslerea144b032023-01-27 16:03:57 -060029index e682db8d8f..72f01769c9 100644
Patrick Williams8dd68482022-10-04 07:57:18 -050030--- a/MAINTAINERS
31+++ b/MAINTAINERS
Andrew Geisslerea144b032023-01-27 16:03:57 -060032@@ -256,6 +256,7 @@ F: doc/arch/arm64.ffa.rst
Patrick Williams8dd68482022-10-04 07:57:18 -050033 F: drivers/firmware/arm-ffa/
34 F: include/arm_ffa.h
35 F: include/sandbox_arm_ffa.h
36+F: test/cmd/armffa.c
37 F: test/dm/ffa.c
38
39 ARM FREESCALE IMX
40diff --git a/test/cmd/Makefile b/test/cmd/Makefile
Andrew Geisslerea144b032023-01-27 16:03:57 -060041index c331757425..19e9d0a995 100644
Patrick Williams8dd68482022-10-04 07:57:18 -050042--- a/test/cmd/Makefile
43+++ b/test/cmd/Makefile
Andrew Geisslerea144b032023-01-27 16:03:57 -060044@@ -1,6 +1,7 @@
45 # SPDX-License-Identifier: GPL-2.0+
46 #
47 # Copyright (c) 2013 Google, Inc
48+# (C) Copyright 2022 ARM Limited
49
50 ifdef CONFIG_HUSH_PARSER
51 obj-$(CONFIG_CONSOLE_RECORD) += test_echo.o
52@@ -13,3 +14,4 @@ obj-$(CONFIG_CMD_MEM_SEARCH) += mem_search.o
Patrick Williams8dd68482022-10-04 07:57:18 -050053 obj-$(CONFIG_CMD_PINMUX) += pinmux.o
54 obj-$(CONFIG_CMD_PWM) += pwm.o
55 obj-$(CONFIG_CMD_SETEXPR) += setexpr.o
56+obj-$(CONFIG_SANDBOX_FFA) += armffa.o
57diff --git a/test/cmd/armffa.c b/test/cmd/armffa.c
58new file mode 100644
Andrew Geisslerea144b032023-01-27 16:03:57 -060059index 0000000000..e04363ba63
Patrick Williams8dd68482022-10-04 07:57:18 -050060--- /dev/null
61+++ b/test/cmd/armffa.c
Andrew Geisslerea144b032023-01-27 16:03:57 -060062@@ -0,0 +1,39 @@
Patrick Williams8dd68482022-10-04 07:57:18 -050063+// SPDX-License-Identifier: GPL-2.0+
64+/*
65+ * Test for armffa command
66+ *
67+ * (C) Copyright 2022 ARM Limited
68+ * Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
69+ */
70+
71+#include <common.h>
Patrick Williams8dd68482022-10-04 07:57:18 -050072+#include <dm/test.h>
73+#include <sandbox_arm_ffa.h>
74+#include <string.h>
75+#include <test/test.h>
76+#include <test/ut.h>
77+
78+#define PING_CMD_SIZE 19
79+
80+/* Basic test of 'armffa' command */
81+static int dm_test_armffa_cmd(struct unit_test_state *uts)
82+{
83+ char ping_cmd[PING_CMD_SIZE] = {0};
84+
Andrew Geisslerea144b032023-01-27 16:03:57 -060085+ ut_assertok(ffa_bus_discover(NULL));
Patrick Williams8dd68482022-10-04 07:57:18 -050086+
87+ /* armffa getpart <UUID> */
88+ ut_assertok(run_command("armffa getpart " SANDBOX_SERVICE1_UUID, 0));
89+
90+ snprintf(ping_cmd, PING_CMD_SIZE, "armffa ping 0x%x", SANDBOX_SP1_ID);
91+
92+ /* armffa ping <ID> */
93+ ut_assertok(run_command(ping_cmd, 0));
94+
95+ /* armffa devlist */
96+ ut_assertok(run_command("armffa devlist", 0));
97+
98+ return CMD_RET_SUCCESS;
99+}
100+
101+DM_TEST(dm_test_armffa_cmd, UT_TESTF_SCAN_FDT | UT_TESTF_CONSOLE_REC);
102--
1032.17.1
104