developer | 451d49d | 2022-11-16 21:52:21 +0800 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (c) 2023, MediaTek Inc. All rights reserved. |
| 3 | * |
| 4 | * SPDX-License-Identifier: BSD-3-Clause |
| 5 | */ |
| 6 | |
| 7 | #ifndef MT_SPM_IDLE_H |
| 8 | #define MT_SPM_IDLE_H |
| 9 | |
| 10 | #include "mt_spm_internal.h" |
| 11 | |
| 12 | typedef int (*spm_idle_conduct)(int state_id, |
| 13 | struct spm_lp_scen *spm_lp, |
| 14 | unsigned int *resource_req); |
| 15 | typedef int (*spm_idle_conduct_restore)(int state_id, |
| 16 | struct spm_lp_scen *spm_lp, |
| 17 | struct wake_status *status); |
| 18 | |
| 19 | int mt_spm_idle_generic_enter(int state_id, unsigned int ext_opand, spm_idle_conduct fn); |
| 20 | void mt_spm_idle_generic_resume(int state_id, unsigned int ext_opand, |
| 21 | struct wake_status **status, |
| 22 | spm_idle_conduct_restore fn); |
| 23 | |
| 24 | #endif |