summaryrefslogtreecommitdiff
path: root/src/soc/nvidia/tegra132/cpu.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/nvidia/tegra132/cpu.c')
-rw-r--r--src/soc/nvidia/tegra132/cpu.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/src/soc/nvidia/tegra132/cpu.c b/src/soc/nvidia/tegra132/cpu.c
index 5dd4c53493..c79bc9cf4e 100644
--- a/src/soc/nvidia/tegra132/cpu.c
+++ b/src/soc/nvidia/tegra132/cpu.c
@@ -60,12 +60,8 @@ static void set_armv8_64bit_reset_vector(uintptr_t entry)
write32(0, &pmc->secure_scratch35);
}
-
-void start_cpu(int cpu, void *entry_64)
+void cpu_prepare_startup(void *entry_64)
{
- printk(BIOS_DEBUG, "Starting CPU%d @ %p trampolining to %p.\n",
- cpu, reset_entry_32bit, entry_64);
-
/* Warm reset vector is pulled from the PMC scratch registers. */
set_armv8_64bit_reset_vector((uintptr_t)entry_64);
@@ -75,6 +71,18 @@ void start_cpu(int cpu, void *entry_64)
* to the traompoline location.
*/
set_armv8_32bit_reset_vector((uintptr_t)reset_entry_32bit);
+}
+void start_cpu_silent(int cpu, void *entry_64)
+{
+ cpu_prepare_startup(entry_64);
enable_core_clocks(cpu);
}
+
+void start_cpu(int cpu, void *entry_64)
+{
+ printk(BIOS_DEBUG, "Starting CPU%d @ %p trampolining to %p.\n",
+ cpu, reset_entry_32bit, entry_64);
+
+ start_cpu_silent(cpu, entry_64);
+}