xref: /rk3399_ARM-atf/plat/mediatek/mt8195/drivers/spm/mt_spm_idle.h (revision 7fa35d068ff9eabbf252414fd778cc4de7a4b141)
1*859e346bSEdward-JW Yang /*
2*859e346bSEdward-JW Yang  * Copyright (c) 2021, MediaTek Inc. All rights reserved.
3*859e346bSEdward-JW Yang  *
4*859e346bSEdward-JW Yang  * SPDX-License-Identifier: BSD-3-Clause
5*859e346bSEdward-JW Yang  */
6*859e346bSEdward-JW Yang 
7*859e346bSEdward-JW Yang #ifndef MT_SPM_IDLE_H
8*859e346bSEdward-JW Yang #define MT_SPM_IDLE_H
9*859e346bSEdward-JW Yang 
10*859e346bSEdward-JW Yang typedef void (*spm_idle_conduct)(struct spm_lp_scen *spm_lp,
11*859e346bSEdward-JW Yang 				 unsigned int *resource_req);
12*859e346bSEdward-JW Yang int mt_spm_idle_generic_enter(int state_id, unsigned int ext_opand,
13*859e346bSEdward-JW Yang 			      spm_idle_conduct fn);
14*859e346bSEdward-JW Yang void mt_spm_idle_generic_resume(int state_id, unsigned int ext_opand,
15*859e346bSEdward-JW Yang 				struct wake_status **status);
16*859e346bSEdward-JW Yang void mt_spm_idle_generic_init(void);
17*859e346bSEdward-JW Yang #endif /* MT_SPM_IDLE_H */
18