summaryrefslogtreecommitdiff
path: root/arch/arm/mach-exynos/exynos.c
diff options
context:
space:
mode:
authorJoonyoung Shim <jy0922.shim@samsung.com>2019-02-18 15:34:11 +0100
committerKrzysztof Kozlowski <krzk@kernel.org>2019-03-19 21:07:47 +0100
commit3a1f2f38fb82b7a3bc7351d7e38df5a1e9c901d2 (patch)
tree0c8578a1c8a16faa5a4464a2c85e67dd5cfc56b6 /arch/arm/mach-exynos/exynos.c
parent47efaf6ba6971e669f198e8e60fe6e674b5020ac (diff)
ARM: exynos: Add CPU state management for Exynos542x under secure firmware
Add required CPU state management done via secure monitor call for Exynos542x running unsed Secure Firmware. Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> [mszyprow: rewrote code to use defines and sysram base address instead of the magic numbers, added second smc call in pm_resume, rephrased subject and commit message] Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Diffstat (limited to 'arch/arm/mach-exynos/exynos.c')
-rw-r--r--arch/arm/mach-exynos/exynos.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/mach-exynos/exynos.c b/arch/arm/mach-exynos/exynos.c
index 865dcc4c3181..9aa483366ebc 100644
--- a/arch/arm/mach-exynos/exynos.c
+++ b/arch/arm/mach-exynos/exynos.c
@@ -33,6 +33,7 @@ static struct platform_device exynos_cpuidle = {
};
void __iomem *sysram_base_addr __ro_after_init;
+phys_addr_t sysram_base_phys __ro_after_init;
void __iomem *sysram_ns_base_addr __ro_after_init;
void __init exynos_sysram_init(void)
@@ -43,6 +44,8 @@ void __init exynos_sysram_init(void)
if (!of_device_is_available(node))
continue;
sysram_base_addr = of_iomap(node, 0);
+ sysram_base_phys = of_translate_address(node,
+ of_get_address(node, 0, NULL, NULL));
break;
}