Lines Matching +full:power +full:- +full:down
1 // SPDX-License-Identifier: GPL-2.0
2 // Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
5 // Cloned from linux/arch/arm/mach-vexpress/platsmp.c
17 #include <linux/soc/samsung/exynos-regs-pmu.h>
29 /* XXX exynos_pen_release is cargo culted code - DO NOT COPY XXX */
30 volatile int exynos_pen_release = -1;
70 * having been woken up - this shouldn't happen in platform_do_lowpower()
72 * Just note it happening - when we're woken, we can report in platform_do_lowpower()
81 * exynos_cpu_power_down() - power down the specified cpu
82 * @cpu: the cpu to power down
84 * Power down the specified cpu. The sequence must be finished by a
93 * Bypass power down for CPU0 during suspend. Check for in exynos_cpu_power_down()
109 * exynos_cpu_power_up() - power up the specified cpu
110 * @cpu: the cpu to power up
112 * Power up the specified cpu
126 * exynos_cpu_power_state() - returns the power state of the cpu
127 * @cpu: the cpu to retrieve the power state from
136 * exynos_cluster_power_down() - power down the specified cluster
137 * @cluster: the cluster to power down
145 * exynos_cluster_power_up() - power up the specified cluster
146 * @cluster: the cluster to power up
155 * exynos_cluster_power_state() - returns the power state of the cluster
156 * @cluster: the cluster to retrieve the power state from
166 * exynos_scu_enable() - enables SCU for Cortex-A9 based system
174 np = of_find_compatible_node(NULL, NULL, "arm,cortex-a9-scu"); in exynos_scu_enable()
198 return IOMEM_ERR_PTR(-ENODEV); in cpu_boot_reg()
207 * Set wake up by local power mode and execute software reset for given core.
220 timeout--; in exynos_core_restart()
237 * XXX CARGO CULTED CODE - DO NOT COPY XXX
258 exynos_write_pen_release(-1); in exynos_secondary_init()
276 if (ret && ret != -ENOSYS) in exynos_set_boot_addr()
278 if (ret == -ENOSYS) { in exynos_set_boot_addr()
301 if (ret && ret != -ENOSYS) in exynos_get_boot_addr()
303 if (ret == -ENOSYS) { in exynos_get_boot_addr()
322 int ret = -ENOSYS; in exynos_boot_secondary()
332 * the holding pen - release it, then wait for it to flag in exynos_boot_secondary()
349 timeout--; in exynos_boot_secondary()
354 printk(KERN_ERR "cpu1 power enable failed"); in exynos_boot_secondary()
356 return -ETIMEDOUT; in exynos_boot_secondary()
387 if (exynos_pen_release == -1) in exynos_boot_secondary()
393 if (exynos_pen_release != -1) in exynos_boot_secondary()
394 ret = -ETIMEDOUT; in exynos_boot_secondary()
403 return exynos_pen_release != -1 ? ret : 0; in exynos_boot_secondary()
418 * platform-specific code to shutdown a CPU