diff --git a/interface/src/tfm_sst_api.c b/interface/src/tfm_sst_api.c
index 6af6320..790435f 100644
--- a/interface/src/tfm_sst_api.c
+++ b/interface/src/tfm_sst_api.c
@@ -8,7 +8,7 @@
 #include "tfm_sst_defs.h"
 #include "tfm_ns_lock.h"
 
-enum tfm_sst_err_t tfm_sst_create(uint32_t asset_uuid, const uint8_t* token,
+enum psa_sst_err_t psa_sst_create(uint32_t asset_uuid, const uint8_t* token,
                                   uint32_t token_size)
 {
     struct tfm_sst_token_t s_token;
@@ -24,10 +24,10 @@
                                     0);
 }
 
-enum tfm_sst_err_t tfm_sst_get_info(uint32_t asset_uuid,
+enum psa_sst_err_t psa_sst_get_info(uint32_t asset_uuid,
                                     const uint8_t* token,
                                     uint32_t token_size,
-                                    struct tfm_sst_asset_info_t *info)
+                                    struct psa_sst_asset_info_t *info)
 {
     struct tfm_sst_token_t s_token;
 
@@ -42,10 +42,10 @@
                                     0);
 }
 
-enum tfm_sst_err_t tfm_sst_get_attributes(uint32_t asset_uuid,
+enum psa_sst_err_t psa_sst_get_attributes(uint32_t asset_uuid,
                                           const uint8_t* token,
                                           uint32_t token_size,
-                                          struct tfm_sst_asset_attrs_t *attrs)
+                                          struct psa_sst_asset_attrs_t *attrs)
 {
     struct tfm_sst_token_t s_token;
 
@@ -60,10 +60,10 @@
                                     0);
 }
 
-enum tfm_sst_err_t tfm_sst_set_attributes(uint32_t asset_uuid,
+enum psa_sst_err_t psa_sst_set_attributes(uint32_t asset_uuid,
                                       const uint8_t* token,
                                       uint32_t token_size,
-                                      const struct tfm_sst_asset_attrs_t *attrs)
+                                      const struct psa_sst_asset_attrs_t *attrs)
 {
     struct tfm_sst_token_t s_token;
 
@@ -78,7 +78,7 @@
                                     0);
 }
 
-enum tfm_sst_err_t tfm_sst_read(uint32_t asset_uuid,
+enum psa_sst_err_t psa_sst_read(uint32_t asset_uuid,
                                 const uint8_t* token,
                                 uint32_t token_size,
                                 uint32_t size,
@@ -104,7 +104,7 @@
                                     0);
 }
 
-enum tfm_sst_err_t tfm_sst_write(uint32_t asset_uuid,
+enum psa_sst_err_t psa_sst_write(uint32_t asset_uuid,
                                  const uint8_t* token,
                                  uint32_t token_size,
                                  uint32_t size,
@@ -130,7 +130,7 @@
                                     0);
 }
 
-enum tfm_sst_err_t tfm_sst_delete(uint32_t asset_uuid,
+enum psa_sst_err_t psa_sst_delete(uint32_t asset_uuid,
                                   const uint8_t* token,
                                   uint32_t token_size)
 {
