summaryrefslogtreecommitdiffstats
path: root/drivers/firmware
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert+renesas@glider.be>2017-01-24 16:30:19 +0100
committerWill Deacon <will.deacon@arm.com>2017-01-26 13:15:07 +0100
commit1c33dc1015be482ca1a248981698d75369ce8cdc (patch)
treebd70d9f857060f79a4176703de303ed86f57dbdb /drivers/firmware
parentarm64: Use __pa_symbol for empty_zero_page (diff)
downloadlinux-1c33dc1015be482ca1a248981698d75369ce8cdc.tar.xz
linux-1c33dc1015be482ca1a248981698d75369ce8cdc.zip
drivers: firmware: psci: Use __pa_symbol for cpu_resume
If CONFIG_DEBUG_VIRTUAL=y, during s2ram: virt_to_phys used for non-linear address: ffffff80085db280 (cpu_resume+0x0/0x20) ------------[ cut here ]------------ WARNING: CPU: 0 PID: 1628 at arch/arm64/mm/physaddr.c:14 __virt_to_phys+0x28/0x60 ... [<ffffff800809abb4>] __virt_to_phys+0x28/0x60 [<ffffff80084a0c38>] psci_system_suspend+0x20/0x44 [<ffffff8008095b28>] cpu_suspend+0x3c/0x68 [<ffffff80084a0b48>] psci_system_suspend_enter+0x18/0x20 [<ffffff80080ea3e0>] suspend_devices_and_enter+0x3f8/0x7e8 [<ffffff80080ead14>] pm_suspend+0x544/0x5f4 Fixes: 1a08e3d9e0ac4577 ("drivers: firmware: psci: Use __pa_symbol for kernel symbol") Acked-by: Mark Rutland <mark.rutland@arm.com> Acked-by: Laura Abbott <labbott@redhat.com> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'drivers/firmware')
-rw-r--r--drivers/firmware/psci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/firmware/psci.c b/drivers/firmware/psci.c
index 66a8793f3b37..493a56a4cfc4 100644
--- a/drivers/firmware/psci.c
+++ b/drivers/firmware/psci.c
@@ -419,7 +419,7 @@ CPUIDLE_METHOD_OF_DECLARE(psci, "psci", &psci_cpuidle_ops);
static int psci_system_suspend(unsigned long unused)
{
return invoke_psci_fn(PSCI_FN_NATIVE(1_0, SYSTEM_SUSPEND),
- virt_to_phys(cpu_resume), 0, 0);
+ __pa_symbol(cpu_resume), 0, 0);
}
static int psci_system_suspend_enter(suspend_state_t state)