aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-exynos/exynos.c
diff options
context:
space:
mode:
authorPankaj Dubey <pankaj.dubey@samsung.com>2014-11-22 09:07:21 -0500
committerKukjin Kim <kgene.kim@samsung.com>2014-11-22 09:07:21 -0500
commit5e6473f422909a9f929619c04c6bab7620531b69 (patch)
treef1026c80ce2e7fc1082cfddcfad99d91e6dc1bc2 /arch/arm/mach-exynos/exynos.c
parent8fcc774fc72910fa26767ae8ca2da3d64ae80a01 (diff)
clk: exynos5440: move restart code into clock driver
Let's register restart handler for Exynos5440 from it's clock driver for restart functionality. So that we can cleanup restart hooks from machine specific file. CC: Sylwester Nawrocki <s.nawrocki@samsung.com> CC: Tomasz Figa <tomasz.figa@gmail.com> Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com> Acked-by: Guenter Roeck <linux@roeck-us.net> Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/mach-exynos/exynos.c')
-rw-r--r--arch/arm/mach-exynos/exynos.c19
1 files changed, 1 insertions, 18 deletions
diff --git a/arch/arm/mach-exynos/exynos.c b/arch/arm/mach-exynos/exynos.c
index 6dc332fa55db..67cf65fd77bb 100644
--- a/arch/arm/mach-exynos/exynos.c
+++ b/arch/arm/mach-exynos/exynos.c
@@ -139,24 +139,7 @@ static struct map_desc exynos5_iodesc[] __initdata = {
139 139
140static void exynos_restart(enum reboot_mode mode, const char *cmd) 140static void exynos_restart(enum reboot_mode mode, const char *cmd)
141{ 141{
142 struct device_node *np; 142 __raw_writel(0x1, pmu_base_addr + EXYNOS_SWRESET);
143 u32 val = 0x1;
144 void __iomem *addr = pmu_base_addr + EXYNOS_SWRESET;
145
146 if (of_machine_is_compatible("samsung,exynos5440")) {
147 u32 status;
148 np = of_find_compatible_node(NULL, NULL, "samsung,exynos5440-clock");
149
150 addr = of_iomap(np, 0) + 0xbc;
151 status = __raw_readl(addr);
152
153 addr = of_iomap(np, 0) + 0xcc;
154 val = __raw_readl(addr);
155
156 val = (val & 0xffff0000) | (status & 0xffff);
157 }
158
159 __raw_writel(val, addr);
160} 143}
161 144
162static struct platform_device exynos_cpuidle = { 145static struct platform_device exynos_cpuidle = {