From ae22f5077d35e6acf3feb8a84a8ef7f599261b00 Mon Sep 17 00:00:00 2001
From: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com>
Date: Wed, 17 Nov 2021 15:32:46 +0000
Subject: [PATCH] Use device region

Upstream-Status: Pending [Not submitted to upstream yet]
Signed-off-by: Gowtham Suresh Kumar <gowtham.sureshkumar@arm.com>


---
 deployments/smm-gateway/opteesp/smm_gateway_sp.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/deployments/smm-gateway/opteesp/smm_gateway_sp.c b/deployments/smm-gateway/opteesp/smm_gateway_sp.c
index 6f138850..0bc09023 100644
--- a/deployments/smm-gateway/opteesp/smm_gateway_sp.c
+++ b/deployments/smm-gateway/opteesp/smm_gateway_sp.c
@@ -10,7 +10,7 @@
 #include <config/loader/sp/sp_config_loader.h>
 #include "components/rpc/mm_communicate/endpoint/sp/mm_communicate_call_ep.h"
 #include "components/service/smm_variable/frontend/mm_communicate/smm_variable_mm_service.h"
-#include "platform/interface/memory_region.h"
+#include "platform/interface/device_region.h"
 #include <ffa_api.h>
 #include <sp_api.h>
 #include <sp_messaging.h>
@@ -25,7 +25,7 @@ static int sp_init(uint16_t *own_sp_id);
 
 void __noreturn sp_main(struct ffa_init_info *init_info)
 {
-	struct memory_region mm_comm_buffer_region = { 0 };
+	struct device_region mm_comm_buffer_region = { 0 };
 	struct rpc_interface *gateway_iface = NULL;
 	struct smm_variable_mm_service smm_var_service = { 0 };
 	struct mm_service_interface *smm_var_service_interface = NULL;
@@ -42,7 +42,7 @@ void __noreturn sp_main(struct ffa_init_info *init_info)
 	config_ramstore_init();
 	sp_config_load(init_info);
 
-	if (!config_store_query(CONFIG_CLASSIFIER_MEMORY_REGION, CONFIG_NAME_MM_COMM_BUFFER_REGION,
+	if (!config_store_query(CONFIG_CLASSIFIER_DEVICE_REGION, CONFIG_NAME_MM_COMM_BUFFER_REGION,
 				0, &mm_comm_buffer_region, sizeof(mm_comm_buffer_region))) {
 		EMSG(CONFIG_NAME_MM_COMM_BUFFER_REGION " is not set in SP configuration");
 		goto fatal_error;
@@ -57,7 +57,7 @@ void __noreturn sp_main(struct ffa_init_info *init_info)
 	/* Initialize MM communication layer */
 	if (!mm_communicate_call_ep_init(&mm_communicate_call_ep,
 					 (void *)mm_comm_buffer_region.base_addr,
-					 mm_comm_buffer_region.region_size))
+					 mm_comm_buffer_region.io_region_size))
 		goto fatal_error;
 
 	/* Attach SMM variable service to MM communication layer */
