1*7ac6a76cSjason-ch chen /* 2*7ac6a76cSjason-ch chen * Copyright (c) 2022, MediaTek Inc. All rights reserved. 3*7ac6a76cSjason-ch chen * 4*7ac6a76cSjason-ch chen * SPDX-License-Identifier: BSD-3-Clause 5*7ac6a76cSjason-ch chen */ 6*7ac6a76cSjason-ch chen 7*7ac6a76cSjason-ch chen #ifndef MT_SPM_CONSERVATION_H 8*7ac6a76cSjason-ch chen #define MT_SPM_CONSERVATION_H 9*7ac6a76cSjason-ch chen 10*7ac6a76cSjason-ch chen #include <mt_spm_internal.h> 11*7ac6a76cSjason-ch chen 12*7ac6a76cSjason-ch chen extern int spm_conservation(int state_id, unsigned int ext_opand, 13*7ac6a76cSjason-ch chen struct spm_lp_scen *spm_lp, 14*7ac6a76cSjason-ch chen unsigned int resource_req); 15*7ac6a76cSjason-ch chen extern void spm_conservation_finish(int state_id, unsigned int ext_opand, 16*7ac6a76cSjason-ch chen struct spm_lp_scen *spm_lp, 17*7ac6a76cSjason-ch chen struct wake_status **status); 18*7ac6a76cSjason-ch chen extern int spm_conservation_get_result(struct wake_status **res); 19*7ac6a76cSjason-ch chen extern void spm_conservation_pwrctrl_init(struct pwr_ctrl *pwrctrl); 20*7ac6a76cSjason-ch chen 21*7ac6a76cSjason-ch chen #endif /* MT_SPM_CONSERVATION_H */ 22