blob: 62d7ad3a2a072c4b8b717b10644a204ca0e84af1 [file] [log] [blame]
Sandrine Bailleux3cd87d72018-10-09 11:12:55 +02001/*
2 * Copyright (c) 2018, Arm Limited. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#include <assert.h>
8#include <debug.h>
9#include <errno.h>
10#include <sp_helpers.h>
11#include <spm_svc.h>
Antonio Nino Diaz43ef3932018-07-03 14:39:47 +010012#include <sprt_client.h>
13#include <sprt_svc.h>
Sandrine Bailleux3cd87d72018-10-09 11:12:55 +020014#include <types.h>
15
16#include "cactus.h"
17#include "cactus_tests.h"
18
19/*
20 * Miscellaneous SPM tests.
21 */
22void misc_tests(void)
23{
24 int32_t ret;
25
26 const char *test_sect_desc = "miscellaneous";
27
28 announce_test_section_start(test_sect_desc);
29
Antonio Nino Diaz43ef3932018-07-03 14:39:47 +010030 const char *test_version_spm = "SPM version check";
Sandrine Bailleux3cd87d72018-10-09 11:12:55 +020031
Antonio Nino Diaz43ef3932018-07-03 14:39:47 +010032 announce_test_start(test_version_spm);
Sandrine Bailleux3cd87d72018-10-09 11:12:55 +020033 svc_args svc_values = { SPM_VERSION_AARCH32 };
34 ret = sp_svc(&svc_values);
35 INFO("Version = 0x%x (%u.%u)\n", ret,
Antonio Nino Diaz43ef3932018-07-03 14:39:47 +010036 (ret >> SPM_VERSION_MAJOR_SHIFT) & SPM_VERSION_MAJOR_MASK,
37 ret & SPM_VERSION_MINOR_MASK);
Sandrine Bailleux3cd87d72018-10-09 11:12:55 +020038 expect(ret, SPM_VERSION_COMPILED);
Antonio Nino Diaz43ef3932018-07-03 14:39:47 +010039 announce_test_end(test_version_spm);
40
41 const char *test_version_sprt = "SPRT version check";
42
43 announce_test_start(test_version_sprt);
44 ret = sprt_version();
45 INFO("Version = 0x%x (%u.%u)\n", ret,
46 (ret >> SPRT_VERSION_MAJOR_SHIFT) & SPRT_VERSION_MAJOR_MASK,
47 ret & SPRT_VERSION_MINOR_MASK);
48 expect(ret, SPRT_VERSION_COMPILED);
49 announce_test_end(test_version_sprt);
Sandrine Bailleux3cd87d72018-10-09 11:12:55 +020050
51 announce_test_section_end(test_sect_desc);
52}