diff --git a/lib/sdei/sdei.c b/lib/sdei/sdei.c
index 846b96e..264da28 100644
--- a/lib/sdei/sdei.c
+++ b/lib/sdei/sdei.c
@@ -32,7 +32,7 @@
 	intr_ctx->enabled = arm_gic_intr_enabled(intr);
 	arm_gic_intr_disable(intr);
 
-	args.arg0 = SDEI_INTERRUPT_BIND;
+	args.fid = SDEI_INTERRUPT_BIND;
 	args.arg1 = intr;
 	ret = tftf_smc(&args);
 	if (ret.ret0 < 0) {
@@ -51,7 +51,7 @@
 
 	assert(intr_ctx);
 
-	args.arg0 = SDEI_INTERRUPT_RELEASE;
+	args.fid = SDEI_INTERRUPT_RELEASE;
 	args.arg1 = ev;
 	ret = tftf_smc(&args);
 	if (ret.ret0 == 0) {
@@ -69,7 +69,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_EVENT_REGISTER;
+	args.fid = SDEI_EVENT_REGISTER;
 	args.arg1 = ev;
 	args.arg2 = (u_register_t)ep;
 	args.arg3 = ep_arg;
@@ -84,7 +84,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_EVENT_UNREGISTER;
+	args.fid = SDEI_EVENT_UNREGISTER;
 	args.arg1 = ev;
 	ret = tftf_smc(&args);
 	return ret.ret0;
@@ -95,7 +95,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_EVENT_ENABLE;
+	args.fid = SDEI_EVENT_ENABLE;
 	args.arg1 = ev;
 	ret = tftf_smc(&args);
 	return ret.ret0;
@@ -106,7 +106,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_EVENT_DISABLE;
+	args.fid = SDEI_EVENT_DISABLE;
 	args.arg1 = ev;
 	ret = tftf_smc(&args);
 	return ret.ret0;
@@ -117,7 +117,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_PE_MASK;
+	args.fid = SDEI_PE_MASK;
 	ret = tftf_smc(&args);
 	return ret.ret0;
 }
@@ -127,7 +127,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_PE_UNMASK;
+	args.fid = SDEI_PE_UNMASK;
 	ret = tftf_smc(&args);
 	return ret.ret0;
 }
@@ -137,7 +137,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_PRIVATE_RESET;
+	args.fid = SDEI_PRIVATE_RESET;
 	ret = tftf_smc(&args);
 	return ret.ret0;
 }
@@ -147,7 +147,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_SHARED_RESET;
+	args.fid = SDEI_SHARED_RESET;
 	ret = tftf_smc(&args);
 	return ret.ret0;
 }
@@ -157,7 +157,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_EVENT_SIGNAL;
+	args.fid = SDEI_EVENT_SIGNAL;
 	args.arg1 = 0; /* must be event 0 */
 	args.arg2 = mpidr;
 	ret = tftf_smc(&args);
@@ -169,7 +169,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_EVENT_STATUS;
+	args.fid = SDEI_EVENT_STATUS;
 	args.arg1 = ev;
 	ret = tftf_smc(&args);
 	return ret.ret0;
@@ -180,7 +180,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_EVENT_ROUTING_SET;
+	args.fid = SDEI_EVENT_ROUTING_SET;
 	args.arg1 = ev;
 	args.arg2 = flags;
 	ret = tftf_smc(&args);
@@ -192,7 +192,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_EVENT_CONTEXT;
+	args.fid = SDEI_EVENT_CONTEXT;
 	args.arg1 = param;
 	ret = tftf_smc(&args);
 	return ret.ret0;
@@ -203,7 +203,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_EVENT_COMPLETE;
+	args.fid = SDEI_EVENT_COMPLETE;
 	args.arg1 = flags;
 	ret = tftf_smc(&args);
 	return ret.ret0;
@@ -214,7 +214,7 @@
 	smc_args args = { 0 };
 	smc_ret_values ret;
 
-	args.arg0 = SDEI_EVENT_COMPLETE_AND_RESUME;
+	args.fid = SDEI_EVENT_COMPLETE_AND_RESUME;
 	args.arg1 = addr;
 	ret = tftf_smc(&args);
 	return ret.ret0;
