1 // © 2021 Qualcomm Innovation Center, Inc. All rights reserved.
2 //
3 // SPDX-License-Identifier: BSD-3-Clause
4 
5 // Arch-independent boot entry points.
6 //
7 // These are called from the arch-specific assembly entry points. They are
8 // responsible for triggering all of the boot module's events, other than the
9 // two boot_runtime_*_init which must be triggered directly from assembly to
10 // prevent problematic compiler optimisations.
11 
12 // First power-on of the boot CPU.
13 noreturn void
14 boot_cold_init(cpu_index_t cpu);
15 
16 // First power-on of any non-boot CPU.
17 noreturn void
18 boot_secondary_init(cpu_index_t cpu);
19 
20 // Warm (second or later) power-on of any CPU.
21 noreturn void
22 boot_warm_init(void);
23 
24 // Add address range to free ranges in env data stream
25 error_t
26 boot_add_free_range(uintptr_t object, memdb_type_t type,
27 		    qcbor_enc_ctxt_t *qcbor_enc_ctxt);
28