xref: /rk3399_ARM-atf/drivers/renesas/rcar_gen4/pwrc/pwrc.h (revision b8ad1a16d501c7a32e72d674a70b76320dbf9a1e)
1*b45b5bacSMarek Vasut /*
2*b45b5bacSMarek Vasut  * Copyright (c) 2015-2025, Renesas Electronics Corporation. All rights reserved.
3*b45b5bacSMarek Vasut  *
4*b45b5bacSMarek Vasut  * SPDX-License-Identifier: BSD-3-Clause
5*b45b5bacSMarek Vasut  */
6*b45b5bacSMarek Vasut 
7*b45b5bacSMarek Vasut #ifndef PWRC_H
8*b45b5bacSMarek Vasut #define PWRC_H
9*b45b5bacSMarek Vasut 
10*b45b5bacSMarek Vasut #ifndef __ASSEMBLER__
11*b45b5bacSMarek Vasut void rcar_pwrc_disable_interrupt_wakeup(u_register_t mpidr);
12*b45b5bacSMarek Vasut void rcar_pwrc_enable_interrupt_wakeup(u_register_t mpidr);
13*b45b5bacSMarek Vasut void rcar_pwrc_clusteroff(u_register_t mpidr);
14*b45b5bacSMarek Vasut void rcar_pwrc_cpuoff(u_register_t mpidr);
15*b45b5bacSMarek Vasut void rcar_pwrc_cpuon(u_register_t mpidr);
16*b45b5bacSMarek Vasut void rcar_pwrc_setup(void);
17*b45b5bacSMarek Vasut uint32_t rcar_pwrc_get_mpidr_cluster(u_register_t mpidr);
18*b45b5bacSMarek Vasut uint32_t rcar_pwrc_cpu_on_check(u_register_t mpidr);
19*b45b5bacSMarek Vasut 
20*b45b5bacSMarek Vasut void rcar_pwrc_code_copy_to_system_ram(void);
21*b45b5bacSMarek Vasut void rcar_pwrc_suspend_to_ram(void);
22*b45b5bacSMarek Vasut 
23*b45b5bacSMarek Vasut void plat_secondary_reset(void);
24*b45b5bacSMarek Vasut 
25*b45b5bacSMarek Vasut int32_t rcar_pwrc_cpu_migrate_info(u_register_t *resident_cpu);
26*b45b5bacSMarek Vasut bool rcar_pwrc_mpidr_is_boot_cpu(u_register_t mpidr);
27*b45b5bacSMarek Vasut #endif /*__ASSEMBLER__*/
28*b45b5bacSMarek Vasut 
29*b45b5bacSMarek Vasut extern uint32_t rcar_pwrc_switch_stack(uintptr_t jump, uintptr_t stack,
30*b45b5bacSMarek Vasut 				       void *arg);
31*b45b5bacSMarek Vasut 
32*b45b5bacSMarek Vasut #endif /* PWRC_H */
33