diff --git a/drivers/firmware/psci.c b/drivers/firmware/psci.c
index 6c60a5087cafb885ea7c79fb6e60b6dd026639e4..66a8793f3b3793ff8510fbb96e376273d358a9ba 100644
--- a/drivers/firmware/psci.c
+++ b/drivers/firmware/psci.c
@@ -383,7 +383,7 @@ static int psci_suspend_finisher(unsigned long index)
 	u32 *state = __this_cpu_read(psci_power_state);
 
 	return psci_ops.cpu_suspend(state[index - 1],
-				    virt_to_phys(cpu_resume));
+				    __pa_symbol(cpu_resume));
 }
 
 int psci_cpu_suspend_enter(unsigned long index)