blob: 99d9d380671ce25a93c9eab3bcee68a96480015e [file] [log] [blame]
Ashutosh Singhf4d88672017-11-29 13:35:43 +00001/*
Marc Moreno Berengue675b6e92018-06-14 17:31:01 +01002 * Copyright (c) 2017-2018, Arm Limited. All rights reserved.
Ashutosh Singhf4d88672017-11-29 13:35:43 +00003 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 *
6 */
7
8#include "tfm_sst_defs.h"
9#include "tfm_ns_lock.h"
10
11enum tfm_sst_err_t tfm_sst_get_handle(uint16_t asset_uuid, uint32_t* hdl)
12{
13 return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_GET_HANDLE,
14 (uint32_t)asset_uuid,
15 (uint32_t)hdl,
16 0,
17 0);
18}
19
20enum tfm_sst_err_t tfm_sst_create(uint16_t asset_uuid)
21{
22 return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_CREATE,
23 (uint32_t) asset_uuid,
24 0,
25 0,
26 0);
27}
28
Marc Moreno Berengue675b6e92018-06-14 17:31:01 +010029enum tfm_sst_err_t tfm_sst_get_info(uint32_t asset_handle,
30 struct tfm_sst_asset_info_t *info)
Ashutosh Singhf4d88672017-11-29 13:35:43 +000031{
Marc Moreno Berengue675b6e92018-06-14 17:31:01 +010032 return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_GET_INFO,
33 asset_handle,
34 (uint32_t)info,
Ashutosh Singhf4d88672017-11-29 13:35:43 +000035 0,
36 0);
37}
38
39enum tfm_sst_err_t tfm_sst_read(uint32_t asset_handle, struct tfm_sst_buf_t* data)
40{
41 return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_READ,
42 (uint32_t)asset_handle,
43 (uint32_t)data,
44 0,
45 0);
46}
47
48enum tfm_sst_err_t tfm_sst_write(uint32_t asset_handle, struct tfm_sst_buf_t* data)
49{
50 return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_WRITE,
51 (uint32_t)asset_handle,
52 (uint32_t)data,
53 0,
54 0);
55}
56
57enum tfm_sst_err_t tfm_sst_delete(uint32_t asset_handle)
58{
59 return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_DELETE,
60 (uint32_t)asset_handle,
61 0,
62 0,
63 0);
64}