diff --git a/bl1/bl1_fwu.c b/bl1/bl1_fwu.c
index f7fae68231c7cbb44c7c68786e7300f472b2d3fc..e2ede681741931d96f0631cc1dfe4bf520dee4af 100644
--- a/bl1/bl1_fwu.c
+++ b/bl1/bl1_fwu.c
@@ -109,7 +109,7 @@ register_t bl1_fwu_smc_handler(unsigned int smc_fid,
 		break;
 	}
 
-	SMC_RET0(handle);
+	SMC_RET1(handle, SMC_UNK);
 }
 
 /*******************************************************************************
diff --git a/include/lib/smcc.h b/include/lib/smcc.h
index 2f562c5dcb13c22545c32daf85e1e24563ce610f..a4c4b6c0c7907d15ab02ba5a2de56789f3dc1a55 100644
--- a/include/lib/smcc.h
+++ b/include/lib/smcc.h
@@ -58,6 +58,7 @@
 
 #define SMC_64				1
 #define SMC_32				0
+#define SMC_OK				0
 #define SMC_UNK				0xffffffff
 #define SMC_TYPE_FAST			ULL(1)
 #define SMC_TYPE_STD			0
diff --git a/services/spd/tspd/tspd_main.c b/services/spd/tspd/tspd_main.c
index ff515cca2f36c71f86cf027b0dbce113685d29e5..e5ec5cd22ad9b97c3e1c7ba82a73972b4e2edc76 100644
--- a/services/spd/tspd/tspd_main.c
+++ b/services/spd/tspd/tspd_main.c
@@ -631,7 +631,7 @@ uint64_t tspd_smc_handler(uint32_t smc_fid,
 
 		cm_el1_sysregs_context_restore(NON_SECURE);
 		cm_set_next_eret_context(NON_SECURE);
-		SMC_RET0(handle);
+		SMC_RET1(handle, SMC_OK);
 
 		/*
 		 * Request from non secure world to resume the preempted