diff --git a/services/spd/tspd/tspd_main.c b/services/spd/tspd/tspd_main.c
index ec2d334..fb8d689 100644
--- a/services/spd/tspd/tspd_main.c
+++ b/services/spd/tspd/tspd_main.c
@@ -504,35 +504,36 @@
 		 * Standard SMC call.
 		 */
 	case TSP_FID_RESUME:
-			/* RESUME should be invoked only by normal world */
-			if (!ns) {
-				assert(0);
-				break;
-			}
+		/* RESUME should be invoked only by normal world */
+		if (!ns) {
+			assert(0);
+			break;
+		}
 
-			/*
-			 * This is a resume request from the non-secure client.
-			 * save the non-secure state and send the request to
-			 * the secure payload.
-			 */
-			assert(handle == cm_get_context(mpidr, NON_SECURE));
+		/*
+		 * This is a resume request from the non-secure client.
+		 * save the non-secure state and send the request to
+		 * the secure payload.
+		 */
+		assert(handle == cm_get_context(mpidr, NON_SECURE));
 
-			/* Check if we are already preempted before resume */
-			if (!get_std_smc_active_flag(tsp_ctx->state))
-				SMC_RET1(handle, SMC_UNK);
+		/* Check if we are already preempted before resume */
+		if (!get_std_smc_active_flag(tsp_ctx->state))
+			SMC_RET1(handle, SMC_UNK);
 
-			cm_el1_sysregs_context_save(NON_SECURE);
+		cm_el1_sysregs_context_save(NON_SECURE);
 
-			/*
-			 * We are done stashing the non-secure context. Ask the
-			 * secure payload to do the work now.
-			 */
+		/*
+		 * We are done stashing the non-secure context. Ask the
+		 * secure payload to do the work now.
+		 */
 
-			/* We just need to return to the preempted point in
-			 * TSP and the execution will resume as normal.
-			 */
-			cm_el1_sysregs_context_restore(SECURE);
-			cm_set_next_eret_context(SECURE);
+		/* We just need to return to the preempted point in
+		 * TSP and the execution will resume as normal.
+		 */
+		cm_el1_sysregs_context_restore(SECURE);
+		cm_set_next_eret_context(SECURE);
+		SMC_RET0(&tsp_ctx->cpu_ctx);
 
 		/*
 		 * This is a request from the secure payload for more arguments
@@ -544,10 +545,6 @@
 		if (ns)
 			SMC_RET1(handle, SMC_UNK);
 
-		/* Get a reference to the non-secure context */
-		ns_cpu_context = cm_get_context(mpidr, NON_SECURE);
-		assert(ns_cpu_context);
-
 		get_tsp_args(tsp_ctx, x1, x2);
 		SMC_RET2(handle, x1, x2);
 
