xref: /optee_os/core/drivers/pm/imx/local.h (revision 19a31ec40245ae01a9adcd206eec2a4bb4479fc9)
1 /* SPDX-License-Identifier: BSD-2-Clause */
2 /*
3  * Copyright 2023 NXP
4  */
5 
6 #include <stdint.h>
7 
8 /*
9  * Read the SRC GPR ARG register for the given core number
10  * @cpu	Core number
11  */
12 uint32_t imx_get_src_gpr_arg(unsigned int cpu);
13 
14 /*
15  * Set the SRC GPR ARG register for the given core number
16  * @cpu	Core number
17  * @val	Register value to set
18  */
19 void imx_set_src_gpr_arg(unsigned int cpu, uint32_t val);
20 
21 /*
22  * Read the SRC GPR ENTRY register for the given core number
23  * @cpu	Core number
24  */
25 uint32_t imx_get_src_gpr_entry(unsigned int cpu);
26 
27 /*
28  * Set the SRC GPR ENTRY register for the given core number
29  * @cpu	Core number
30  * @val	Register value to set
31  */
32 void imx_set_src_gpr_entry(unsigned int cpu, uint32_t val);
33 
34 /*
35  * Release the given core
36  * @cpu Core number
37  */
38 void imx_src_release_secondary_core(unsigned int cpu);
39 
40 /*
41  * Shutdown the given core
42  * @cpu Core number
43  */
44 void imx_src_shutdown_core(unsigned int cpu);
45 
46 /*
47  * GPC Core 1 power down
48  */
49 void imx_gpcv2_set_core1_pup_by_software(void);
50