Lines Matching +full:out +full:- +full:of +full:- +full:reset

1 // SPDX-License-Identifier: GPL-2.0-or-later
10 #include <linux/of.h>
13 #include <linux/reset.h>
23 #define MESON_SMP_SRAM_CPU_CTRL_ADDR_REG(c) (0x04 + ((c - 1) << 2))
31 #define MESON_CPU_PWR_A9_MEM_PD0_M(c) (0x0f << (32 - (c * 4)))
106 meson_smp_prepare_cpus("arm,cortex-a5-scu", "amlogic,meson8b-pmu", in meson8b_smp_prepare_cpus()
107 "amlogic,meson8b-smp-sram"); in meson8b_smp_prepare_cpus()
112 meson_smp_prepare_cpus("arm,cortex-a9-scu", "amlogic,meson8-pmu", in meson8_smp_prepare_cpus()
113 "amlogic,meson8-smp-sram"); in meson8_smp_prepare_cpus()
121 * system without power-cycling, or when taking the CPU offline and in meson_smp_begin_secondary_boot()
143 return -ETIMEDOUT; in meson_smp_finalize_secondary_boot()
163 pr_err("Couldn't get the reset controller for CPU%d\n", cpu); in meson8_smp_boot_secondary()
169 /* Reset enable */ in meson8_smp_boot_secondary()
172 pr_err("Failed to assert CPU%d reset\n", cpu); in meson8_smp_boot_secondary()
173 goto out; in meson8_smp_boot_secondary()
181 goto out; in meson8_smp_boot_secondary()
190 pr_err("Error when disabling isolation of CPU%d\n", cpu); in meson8_smp_boot_secondary()
191 goto out; in meson8_smp_boot_secondary()
194 /* Reset disable */ in meson8_smp_boot_secondary()
197 pr_err("Failed to de-assert CPU%d reset\n", cpu); in meson8_smp_boot_secondary()
198 goto out; in meson8_smp_boot_secondary()
203 goto out; in meson8_smp_boot_secondary()
205 out: in meson8_smp_boot_secondary()
220 pr_err("Couldn't get the reset controller for CPU%d\n", cpu); in meson8b_smp_boot_secondary()
231 goto out; in meson8b_smp_boot_secondary()
236 /* Reset enable */ in meson8b_smp_boot_secondary()
239 pr_err("Failed to assert CPU%d reset\n", cpu); in meson8b_smp_boot_secondary()
240 goto out; in meson8b_smp_boot_secondary()
248 goto out; in meson8b_smp_boot_secondary()
256 goto out; in meson8b_smp_boot_secondary()
266 goto out; in meson8b_smp_boot_secondary()
273 pr_err("Error when disabling isolation of CPU%d\n", cpu); in meson8b_smp_boot_secondary()
274 goto out; in meson8b_smp_boot_secondary()
277 /* Reset disable */ in meson8b_smp_boot_secondary()
280 pr_err("Failed to de-assert CPU%d reset\n", cpu); in meson8b_smp_boot_secondary()
281 goto out; in meson8b_smp_boot_secondary()
286 goto out; in meson8b_smp_boot_secondary()
288 out: in meson8b_smp_boot_secondary()
326 pr_err("Error while waiting for SCU power-off on CPU%d\n", in meson8_smp_cpu_kill()
328 return -ETIMEDOUT; in meson8_smp_cpu_kill()
347 pr_err("Couldn't change sleep status of CPU%d\n", cpu); in meson8_smp_cpu_kill()
368 pr_err("Error while waiting for SCU power-off on CPU%d\n", in meson8b_smp_cpu_kill()
370 return -ETIMEDOUT; in meson8b_smp_cpu_kill()
397 pr_err("Couldn't change sleep status of CPU%d\n", cpu); in meson8b_smp_cpu_kill()
405 pr_err("Couldn't power down the memory of CPU%d\n", cpu); in meson8b_smp_cpu_kill()
431 CPU_METHOD_OF_DECLARE(meson8_smp, "amlogic,meson8-smp", &meson8_smp_ops);
432 CPU_METHOD_OF_DECLARE(meson8b_smp, "amlogic,meson8b-smp", &meson8b_smp_ops);