1 /*
2  * Copyright 2019 The Hafnium Authors.
3  *
4  * Use of this source code is governed by a BSD-style
5  * license that can be found in the LICENSE file or at
6  * https://opensource.org/licenses/BSD-3-Clause.
7  */
8 
9 #include "vmapi/hf/call.h"
10 
11 #include "smc.h"
12 #include "test/hftest.h"
13 
TEST(smc_whitelist,not_whitelisted_unknown)14 TEST(smc_whitelist, not_whitelisted_unknown)
15 {
16 	const uint32_t non_whitelisted_ta_call = 0x3000f00d;
17 	struct ffa_value smc_res = smc_forward(
18 		non_whitelisted_ta_call, 0x1111111111111111, 0x2222222222222222,
19 		0x3333333333333333, 0x4444444444444444, 0x5555555555555555,
20 		0x6666666666666666, 0x77777777);
21 
22 	EXPECT_EQ(smc_res.func, SMCCC_ERROR_UNKNOWN);
23 	EXPECT_EQ(smc_res.arg1, UINT64_C(0x1111111111111111));
24 	EXPECT_EQ(smc_res.arg2, UINT64_C(0x2222222222222222));
25 	EXPECT_EQ(smc_res.arg3, UINT64_C(0x3333333333333333));
26 	EXPECT_EQ(smc_res.arg4, UINT64_C(0x4444444444444444));
27 	EXPECT_EQ(smc_res.arg5, UINT64_C(0x5555555555555555));
28 	EXPECT_EQ(smc_res.arg6, UINT64_C(0x6666666666666666));
29 	EXPECT_EQ(smc_res.arg7, UINT64_C(0x77777777));
30 }
31