1 /*
2  * Copyright (c) 2015-2022, ARM Limited and Contributors. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef QEMU_PRIVATE_H
8 #define QEMU_PRIVATE_H
9 
10 #include <stdint.h>
11 
12 void qemu_configure_mmu_svc_mon(unsigned long total_base,
13 			unsigned long total_size,
14 			unsigned long code_start, unsigned long code_limit,
15 			unsigned long ro_start, unsigned long ro_limit,
16 			unsigned long coh_start, unsigned long coh_limit);
17 
18 void qemu_configure_mmu_el1(unsigned long total_base, unsigned long total_size,
19 			unsigned long code_start, unsigned long code_limit,
20 			unsigned long ro_start, unsigned long ro_limit,
21 			unsigned long coh_start, unsigned long coh_limit);
22 
23 void qemu_configure_mmu_el3(unsigned long total_base, unsigned long total_size,
24 			unsigned long code_start, unsigned long code_limit,
25 			unsigned long ro_start, unsigned long ro_limit,
26 			unsigned long coh_start, unsigned long coh_limit);
27 
28 void plat_qemu_io_setup(void);
29 unsigned int plat_qemu_calc_core_pos(u_register_t mpidr);
30 
31 void qemu_console_init(void);
32 
33 void plat_qemu_gic_init(void);
34 void qemu_pwr_gic_on_finish(void);
35 void qemu_pwr_gic_off(void);
36 
37 int qemu_set_tos_fw_info(uintptr_t config_base, uintptr_t log_addr,
38 			size_t log_size);
39 
40 int qemu_set_nt_fw_info(
41 /*
42  * Currently OP-TEE does not support reading DTBs from Secure memory
43  * and this option should be removed when feature is supported.
44  */
45 #ifdef SPD_opteed
46 			uintptr_t log_addr,
47 #endif
48 			size_t log_size,
49 			uintptr_t *ns_log_addr);
50 
51 #endif /* QEMU_PRIVATE_H */
52